Terragrunt und '$GIT_DIR' too big

2 Nov 2022 Lesezeit: ~1 Minute

Manchmal ist eine Lösung einfacher als man denkt. Ich habe zuletzt terragrunt evaluiert, weil ich nach einer Möglichkeit gesucht habe um einen ganzen Hintern von Umgebungen möglichst elegant zu beschreiben und Code von Konfiguration zu trennen.

Terragrunt jedoch zeigte mir relativ schnell den Mittelfinger, als ich eine größere Umgebung damit aufziehen wollte und diverse Module etc einzubinden versuchte:

│ fatal: '$GIT_DIR' too big

Klingt nach einem einfach zu lösenden Problem - dachte ich - und stelle gleich mal das olle Windows Git auf Long-Filenames um:

git config --system core.longpaths true

War aber nicht des Rätzels Lösung. Ich dachte mir: "das kann doch nicht euer ernst sein." und macht einen Github Issue auf. Es war ihr ernst. Durch die interne Struktur von Terragrunt bildet es ellenlange Dateipfade und unter Windows ist das immer doof. Daher gibt es sogar einen entsprechenden Paramter/Variable dazu.

Naja, es geht jedenfalls, wenn man seine Umgebungsvariable so umbiegt.

$env:TERRAGRUNT_DOWNLOAD="C:\Temp"

AZ-104 für Azure Cloud Zertifizierung - Lernstoff

14 Apr 2022 Lesezeit: ~1 Minute

Ich bereite mich mal wieder für eine Prüfung vor. Dieses Mal darf es Cloud sein. Azure - umgenau zu sein. Den Anfang macht die AZ-104 Prüfung. Wer dazu ein wenig freien Content sucht, der kann sich ja mal dieses Video rein ziehen.


Pod reloader für secret changer

12 Apr 2022 Lesezeit: ~1 Minute

Wer seinen Arbeitsalltag in einer Flut von Abhängigkeiten verbringt die aus fremden Hängen fließen, dann kommt es schon mal vor, dass man auf eine Änderung reagieren und etwas neustarten muss.

Wenn ihr wisst, wovon ich rede, dann arbeitet ihr vermutlich auch mit Kubernetes und habt die Aufgabe Pods über ein geändertes secret zu informieren.

Da ich auf solche Aufgaben keine Lust habe, suche ich mir eine weitere Abhängigkeit die das für mich übernimmt - ich bin ja modern.

In meinem Fall geht es darum, dass ich in einem KeyVault ein Secret ändern will und das daraus gemountete Kubernetes Secret aktualisiert wird und eben die Pods, die dieses Secret nutzen bitte automatisch neu starten - klar, oder?

Hier kommt der reloader zum Einsatz:

Einfach installiert mit Hilfe von

kubectl apply -f https://raw.githubusercontent.com/stakater/Reloader/master/deployments/kubernetes/reloader.yaml

kann ich dann ein Deployment einfach mit einer weiteren Annotation ausstatten und der Drops ist gelutscht: Das damit verbundene Deployment wird dann gemäß der Konfiguration mit einem roleout restart angepasst.