Zum Inhalt springen

Git

STACKIT Git ist ein vollständig verwalteter Git-Service, der die Versionskontrolle und Zusammenarbeit für Softwareentwicklungsteams vereinfacht. Er ermöglicht Entwicklern das sichere Hosten, Verwalten und Verfolgen ihrer Codebasis in der europäischen Cloud, während sie die volle Kontrolle über ihre Projekte behalten.

  • changed

    Forgejo Runner v13: Änderungen, die Ihre Workflows beeinträchtigen können

    Abschnitt betitelt „Forgejo Runner v13: Änderungen, die Ihre Workflows beeinträchtigen können“

    Wir haben die Runner von STACKIT Git auf Forgejo Runner v13 aktualisiert. Diese Version wertet Ausdrücke strenger aus, entfernt veraltete Workflow-Befehle, beschränkt Registry-Zugangsdaten auf den Job, der sie deklariert, und entfernt die verbliebene Gitea-Kompatibilität. Mehrere Fälle, die bisher nur eine Warnung erzeugt haben, lassen den Lauf jetzt fehlschlagen. Prüfen Sie Ihre Workflows daher auf die folgenden Änderungen.

    Ungültige Ausdrücke und Matrizen lassen den Lauf fehlschlagen

    Abschnitt betitelt „Ungültige Ausdrücke und Matrizen lassen den Lauf fehlschlagen“

    Ein Ausdruck, der nicht ausgewertet werden kann, zum Beispiel ein format()-Aufruf mit weniger Argumenten, als sein Format-String referenziert, lässt jetzt den Step oder Job fehlschlagen, statt eine Warnung zu erzeugen. Eine Matrix, die einen nicht definierten Wert ausschließt, ist jetzt ein Fehler, und der Workflow wird nicht ausgeführt.

    Prüfen Sie die Ausdrücke und matrix-Definitionen in Ihren Workflow-Dateien.

    Die Befehle ::set-output, ::set-env und ::add-path haben keine Wirkung mehr, und ACTIONS_ALLOW_UNSECURE_COMMANDS aktiviert sie nicht wieder. Schreiben Sie stattdessen direkt in die Umgebungsdateien:

    • Ersetzen Sie echo "::set-output name=var::value" durch echo "var=value" >> "$FORGEJO_OUTPUT".
    • Ersetzen Sie echo "::set-env name=VAR::value" durch echo "VAR=value" >> "$FORGEJO_ENV".
    • Ersetzen Sie echo "::add-path::/custom/bin" durch echo "/custom/bin" >> "$FORGEJO_PATH".

    Der Runner meldet sich nicht mehr mit den Secrets DOCKER_USERNAME und DOCKER_PASSWORD bei Registries an, da diese Zugangsdaten an eine Registry gesendet werden könnten, für die sie nicht bestimmt sind. Wenn ein Job ein Image aus einer privaten Registry nutzt, deklarieren Sie die Zugangsdaten in diesem Job:

    jobs:
    build:
    container:
    image: private.registry.example/app:latest
    credentials:
    username: ${{ secrets.REGISTRY_USER }}
    password: ${{ secrets.REGISTRY_TOKEN }}

    Der Kontext ${{ gitea.* }} wird nicht mehr unterstützt. Ersetzen Sie ihn in Ihren Workflows durch ${{ forgejo.* }}.

    Der Runner verbindet die Ausgabe eines Steps nicht mehr mit einem Terminal. Befehle, die Farben nur ausgeben, wenn sie ein Terminal erkennen, geben jetzt reinen Text aus. Setzen Sie FORCE_COLOR=1, um wieder eine farbige Ausgabe zu erhalten. Befehle, die ein Terminal voraussetzen, schlagen fehl. Ersetzen Sie zum Beispiel docker run -it durch docker run -i.

    • Docker Engine 25.0 oder neuer ist erforderlich. Wir empfehlen 28.0.1 oder neuer, da ältere Versionen mit Forgejo Runner v13 beim Anlegen von IPv6-Netzwerken fehlschlagen können.
    • Die Variablen GITEA_DEBUG, GITEA_TRACE, GITEA_RUNNER_CAPACITY, GITEA_RUNNER_FILE, GITEA_RUNNER_ENVIRON und GITEA_RUNNER_ENV_FILE werden ignoriert. Entfernen Sie sie aus der Konfiguration und der Umgebung Ihrer Runner.
    • Die Option container.network_mode wurde entfernt. Nutzen Sie stattdessen container.network.

    Weitere Details finden Sie in der Release-Ankündigung zu Forgejo Runner v13.0 und in den Release Notes von Forgejo Runner.

    Wenn Sie Fragen haben, steht Ihnen unser STACKIT Help Center jederzeit zur Verfügung.

  • announcement

    Am 27. Oktober 2026 von 20:00 bis 23:00 Uhr (UTC) wird der SSH-Zugriff auf STACKIT Git auf eine gemeinsame Adresse umgestellt. Der Name Ihrer Instanz wird dabei zum ersten Element im Pfad des Repositories. Das verringert die öffentlich erreichbare Angriffsfläche Ihrer Instanz und ermöglicht es uns, die Zuverlässigkeit von Git-Operationen über SSH an einer Stelle zu verbessern.

    • Bisherige Adresse: git@ssh.<instance>.git.onstackit.cloud:<owner>/<repository>.git
    • Adresse nach der Wartung: ssh://git@ssh.git.onstackit.cloud/<instance>/<owner>/<repository>.git

    Während der Wartung wird jede Git Instanz einmal neu gestartet und ist dabei etwa eine Minute nicht verfügbar. Die Neustarts erfolgen zeitversetzt, sodass nicht alle Instanzen gleichzeitig betroffen sind. Der Zugriff über HTTPS, Ihre Repositories, Ihre Benutzer, Ihre hinterlegten SSH-Schlüssel und Ihre IP-Allowlists bleiben unverändert.

    Die bisherige Adresse funktioniert nach der Wartung weiterhin, bis zum 27. April 2027. Ihre bestehenden Klone und Ihre Automatisierung bleiben also funktionsfähig, und Sie können die Umstellung in Ihrem eigenen Tempo vornehmen. Wir erinnern Sie, bevor wir die bisherige Adresse abschalten.

    • Erlauben Sie ausgehenden Datenverkehr zu 213.17.16.145 auf Port 22, falls Ihr Netzwerk ausgehende Verbindungen einschränkt.
    • Hinterlegen Sie den Host Key von ssh.git.onstackit.cloud, falls Ihre Systeme Host Keys strikt prüfen. Sein Fingerprint lautet SHA256:I4jgl6ALgx5qOWwpQVC2M613dV7R0Wy6LfQQ5LQKwR4 (ED25519).
    • Stellen Sie sicher, dass der SSH-Schlüssel, den Ihr Client an ssh.git.onstackit.cloud sendet, in Ihrer Instanz hinterlegt ist.
    • Ermitteln Sie alle Stellen, an denen die Adresse hinterlegt ist: lokale Klone, Build-Pipelines, Deployment-Automatisierung, Infrastructure-as-Code-Modulquellen und Repository-Mirrors.

    Aktualisieren Sie die Remote-Adresse jedes Repositories:

    Terminal-Fenster
    git remote set-url origin "$(git remote get-url origin | sed -E 's#^(ssh://)?git@ssh\.([^.]+)\.git\.onstackit\.cloud[:/]#ssh://git@ssh.git.onstackit.cloud/\2/#')"

    Die vollständige Anleitung, einschließlich der Auswahl des richtigen Schlüssels bei mehreren SSH-Schlüsseln, finden Sie unter Verbindung zu Ihren Repositories über SSH.

    Wenn Sie Fragen haben, steht Ihnen unser STACKIT Help Center jederzeit zur Verfügung.

  • announcement

    Wir freuen uns, ein wichtiges Update für STACKIT Git & Pipelines bekannt zu geben, das verbesserte Sicherheitskontrollen, Pipeline-Governance und erweiterte Identity-Management-Funktionen direkt über das STACKIT Portal einführt.

    Pipeline-Governance: Geschützte Workflows & genehmigende Personen

    Abschnitt betitelt „Pipeline-Governance: Geschützte Workflows & genehmigende Personen“

    Um eine höhere Resilienz zu gewährleisten und die Change-Management-Standards von Unternehmen zu erfüllen, haben wir Pipeline-Genehmiger eingeführt. Ermöglichen Sie es Ihrem Team, die höchsten Qualitätsstandards zu sichern, indem Sie festgelegte Mitglieder dazu berechtigen, kritische Deployment-Pipelines vor der Ausführung zu überprüfen und zu autorisieren. Je nach Ihrem Setup gibt es zwei Möglichkeiten, diese Funktionalität zu implementieren:

    • Manuelle Workflow-Genehmigung: Eine nahtlose, UI-gesteuerte Konfiguration innerhalb des STACKIT Portals, um Workflows zu pausieren und eine manuelle Validierung anzufordern, bevor zu risikoreichen Deployment-Phasen übergegangen wird.
    • Geteilter Workflow: Konfigurieren Sie Ihren Code in zwei verschiedenen Dateien, um dasselbe Verhalten mit weniger Aufwand für die Anpassung zu erzielen.

    Wir haben das Lebenszyklus-Management von Benutzern und die Zugriffssicherheit erheüglich verbessert:

    • Integration von Identitätsanbietern (IdP): Verbinden Sie Ihren unternehmenseigenen Identitätsanbieter direkt mit Ihrer STACKIT Git-Instanz, um das Onboarding von Benutzern und die Föderation zu automatisieren.
    • Erstellung von lokalen vs. technischen Benutzern: Administratoren können nun zwischen standardmäßigen internen Benutzern (Lokal) und automatisierten Automatisierungs-Tokens/-Konten (Technische Benutzer) unterscheiden, was das Risiko einer unbefugten Rechteausweitung verringert.

    Kontrolle über Netzwerkeinstellungen und erweiterte Administration im Portal

    Abschnitt betitelt „Kontrolle über Netzwerkeinstellungen und erweiterte Administration im Portal“

    Sie müssen erweiterte Konfigurationen nicht mehr über die API oder Backend-Supportanfragen verwalten. Das STACKIT Portal bietet jetzt vollständige Self-Service-Funktionen für:

    • IP-Adressen-Whitelisting (Zugriffssteuerung): Sichern Sie Ihre Git-Repositories, indem Sie den eingehenden und ausgehenden Datenverkehr direkt über die Netzwerkeinstellungen der Instanz auf vertrauenswürdige Netzwerkbereiche des Unternehmens beschränken.
    • Benutzer-Admin-Verwaltung: Vollständige Kontrolle über Benutzerberechtigungen, Lizenzzuweisungen und Sichtbarkeit des Projekts über eine einheitliche Verwaltungsoberfläche.