From 0a07da260fd2a99aed8c50c38ed51c729d171fde Mon Sep 17 00:00:00 2001 From: Thore Cimbal Date: Sun, 2 Aug 2026 12:00:00 +0000 Subject: [PATCH] ci: Token-Pruefung ans Ende, damit der Leerlauf gruen bleibt Vorher brach der Job ohne CANONIZE_TOKEN sofort ab - auch dann, wenn gar keine Rotation offen war. Das haette taeglich eine rote Pipeline erzeugt, bis das Token existiert, und ausgerechnet die Gitea-Strecke ungetestet gelassen. Jetzt laeuft der Job erst bis zur Feststellung 'nichts zu tun' durch (verifiziert dabei Fetch und Erkennung) und verlangt das Token nur, wenn wirklich gepusht werden muss. Rot wird die Pipeline dann, wenn es zaehlt. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01PKhFj1S3UdD6xL2fbWPeYj --- .gitlab-ci.yml | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index eafe0d0..e096d7f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -58,11 +58,6 @@ canonize_rotation: [ -f "$c" ] && export GIT_SSL_CAINFO="$c" && break done echo "CA: ${GIT_SSL_CAINFO:-Systemspeicher}" - - | - if [ -z "$CANONIZE_TOKEN" ]; then - echo "CANONIZE_TOKEN fehlt - siehe Kopf dieser Datei, Schritt 1." - exit 1 - fi - git config --global user.email "ci@axion1337.chat" - git config --global user.name "TURN-Rotation (automatische Kanonisierung)" - git remote add gitea https://rohana.axion1337.de/sorb/axion1337.chat-gitops.git @@ -94,6 +89,14 @@ canonize_rotation: echo "Keine offene Rotation - nichts zu tun." exit 0 fi + # Token erst hier pruefen, nicht am Jobanfang: solange nichts zu pushen ist, + # soll der taegliche Lauf gruen durchgehen und die Gitea-Strecke verifizieren. + # Fehlt er, wenn es wirklich etwas zu tun gibt, ist Abbruch richtig. + if [ -z "$CANONIZE_TOKEN" ]; then + echo "ABBRUCH: Es gibt eine offene Rotation, aber CANONIZE_TOKEN ist nicht gesetzt." + echo "Siehe Kopf dieser Datei, Einrichtungsschritt 1." + exit 1 + fi # Sicherheitsnetz: die Rotation fasst genau diese Secrets an. Kaeme hier # etwas Unverschluesseltes durch, waere das Shared Secret im Klartext in Git. for f in apps/production/coturn-secret.yaml apps/production/synapse-turn-secret.yaml; do