Projekt- und Gruppenvariablen: Einschränkungen und Trennung

Das Paket git-vars

Projekt- und Gruppenvariablen: Einschränkungen und Trennung

Wichtige Einschränkung bei verschachtelten Gruppen

git-vars 0.0.6 bildet bei verschachtelten Gruppen die API-URL nur aus der obersten Gruppe. Verwenden Sie die gruppenbezogenen Befehle pull und push nicht für git.nrw-Projekte in Untergruppen, da sie Variablen aus der falschen Gruppe lesen oder dort verändern können.

Verwenden Sie für Gruppenvariablen die GitLab-Oberfläche oder einen freigegebenen API-Aufruf, der die vollständige numerische Gruppen-ID angibt. Nehmen Sie Änderungen zuerst in einer entbehrlichen Testgruppe vor und legen Sie eine ausdrückliche Sicherung an.

Projekt- und Gruppenvariablen trennen

Wenn Sie Variablen mit einem freigegebenen Verfahren exportieren, bewahren Sie Variablen auf Projektebene und auf Gruppenebene in getrennten geschützten Dateien außerhalb des Repositorys auf. Committen Sie niemals eine dieser Dateien.

Das folgende Python-Beispiel zeigt, wie getrennte Projekt- und Gruppendateien eingelesen werden können, nachdem Sie sie sicher angelegt haben:

from environs import Env

# environs initialisieren
env = Env()
env.read_env('../ci-vars/project.env')
env.read_env('../ci-vars/group.env')

# Auf Umgebungsvariablen zugreifen
database_url = env('DATABASE_URL')
api_key = env('API_KEY')
global_api_key = env('GLOBAL_API_KEY')
sentry_dsn = env('SENTRY_DSN')

print("DATABASE_URL:", database_url)
print("API_KEY:", api_key)
print("GLOBAL_API_KEY:", global_api_key)
print("SENTRY_DSN:", sentry_dsn)