Wie man mit Gitlab CI/CD und NSIS eine .Net WPF Anwendung erstellt und veröffentlicht

Wie man mit Gitlab CI/CD und NSIS eine .Net WPF Anwendung erstellt und veröffentlicht

In der Regel habe ich, seitdem ich mich mit CI/CD beschäftige ausschließlich Web-Anwendungen und Websites welche auf einem Linux Server laufen müssen. Dies habe ich immer simpel gehalten. Im ersten Schritt wurde die Anwendung gebaut, danach in ein Docker-Image gepackt und auf dem Zielserver vom Repository mit dem latest Tag gepullt. Aktuell arbeite ich jedoch an der Windows UI für meine 360°Image Viewer Software welche ausschließlich für Windows Geräte zur Verfügung stehen wird.
Liste mit Silent Installation Parameter für Windows Anwendungen

Liste mit Silent Installation Parameter für Windows Anwendungen

Über die Jahre habe ich für Ivanti DSM Software Anwendungen paketiert und mir eine kleine Übersicht mit gängigen Installationsparameter für die unbeaufsichtigte Installation gesammelt. Mittlerweile gibt es diverse Quellen um an die Installationsparameter zu kommen. Über Foren wie IT-Ninja finden Sie oft die gängigen Install-Switches. Alternativ kann man auch auf Chocolatey in die PowerShell Scripte oder bei Winget schauen wie die Parameter für die Silent Installation lauten. Da ich die Liste sowieso habe und darunter auch ein par exotischere Anwendungen sind könnte diese jedoch dem einen oder anderen Helfen.
Agile darf keine Ausrede für fehlende Projektplanung sein!

Agile darf keine Ausrede für fehlende Projektplanung sein!

Stellen Sie sich vor, sie bekommen einen Auftrag ein Fahrzeug zu entwickeln, dieses Fahrzeug soll Ihren Klienten von A nach B befördern. Ohne auch nur die Rahmenbedingungen zu kennen, fangen Sie an ein nach bestem Wissen und Gewissen ein Elektroauto zu entwickeln. Nachdem das Fahrgestell fertig und die Batterie eingebaut ist, kommt die Anforderung, dass das Fahrzeug sehr lange Strecken zurücklegen können muss. Somit bauen Sie den Antrieb und die Elektronik wieder raus und bauen einen Benzinmotor ein und Getriebe ein. Sie sind froh, dass Sie frühzeig das Problem beheben konnten und haben 60 % vom Weg bereits erledigt. Jetzt nur noch die Reifen montieren und dem Kunden eine Testfahrt ermöglichen. Plötzlich kommt die Anforderung, dass das Fahrzeug ja auch das Meer überqueren muss. Auf dem Wasser sind Reifen natürlich überflüssig und das Fahrgestell ist nicht wasserdicht. Alles wieder zurück auf Anfang, ein Amphibisches Fahrzeug muss her. Oder am besten doch gleich ein Flugzeug bauen? Was hier natürlich etwas überspitzt beschrieben wird, ist leider gar nicht so unrealistisch. Agil wird oft als Ausrede für fehlende Projektplanung bzw. Abstimmung mit den Rahmenbedingungen missbraucht.

Zentrale Rsync-Backup-Überwachung mit Go-lang- und VueJS

Zentrale Rsync-Backup-Überwachung mit Go-lang- und VueJS

Rsync ist eine robuste und zuverlässige Lösung für Unix-Systeme, um Daten schnell und zuverlässig auf andere Geräte (z. B. NAS-Systeme) zu kopieren. Ich verwende Rsync seit Jahren für meine Datensicherung von meinem Ubuntu-Server auf ein NAS-System von QNAP, das meine Daten wiederum auf eine externe Festplatte repliziert, die dann offline im Schrank landet. Rsync macht dies jeden Tag zuverlässig und ohne Probleme und startet mit einem Cronjob. Die Protokolldateien protokollieren alles bis ins letzte Detail - bisher war für mich keine explizite Datensicherungssoftware erforderlich.