Zum Hauptinhalt springen
Version: Weekly Build

Git-Provider

Konfiguriere Git-Provider-Integrationen unter codesphere.gitProviders in config.yaml. Füge für jeden aktivierten Provider die entsprechende clientId und clientSecret zu deiner prod.vault.yaml-Secrets-Datei hinzu; siehe Vault-Secrets des Private-Cloud-Installers.

Allgemeine Struktur für jeden Provider​

# providerName e.g., github, gitlab
# providerName:
# enabled: true # or false
# url: "Base URL of the provider"
# api:
# baseUrl: "API base URL"
# oauth:
# issuer: "OAuth issuer URL"
# authorizationEndpoint: "OAuth authorization URL"
# tokenEndpoint: "OAuth token URL"
# # Other provider-specific OAuth settings like scope, clientAuthMethod

Generieren von Anmeldedaten (Beispiele)​

GitLab:​

  1. Gehe zu deiner GitLab-Gruppe (oder zu den Benutzereinstellungen für eine App auf Benutzerebene) > Settings > Applications.
  2. Erstelle eine neue Anwendung (z. B. "Codesphere Git Integration").
  3. Redirect URI / Callback URL: https://<codesphere.domain>/ide/auth/gitlab/callback (ersetze <codesphere.domain> durch deine Codesphere-Domain).
  4. Scopes: Wähle api, read_repository, write_repository. (Stelle sicher, dass openid, profile, email ebenfalls verfügbar/ausgewählt sind, falls Informationen zum Benutzerprofil benötigt werden.)
  5. Speichere die Anwendung. Du erhältst eine "Application ID" (gitlabAppClientId) und ein "Secret" (gitlabAppClientSecret).

GitHub:​

  1. Gehe zu den GitHub-Organisationseinstellungen > Developer settings > GitHub Apps > New GitHub App.
  2. Application name: z. B. "Codesphere Git Integration"
  3. Homepage URL: https://<your-codesphere.domain>
  4. Authorization callback URL: https://<your-codesphere.domain>/ide/auth/github/callback
  5. Du erhältst eine "Client ID" (githubAppsClientId) und generierst ein "Client Secret" (githubAppsClientSecret).
  6. Optional kannst du ein Bild als Logo hochladen.

Bitbucket (Server/Data Center – typischerweise Application Links für OAuth 1.0a oder OAuth 2.0, sofern unterstützt):

  1. Admin Settings > System > Application Links.
  2. Erstelle einen neuen Link. Wähle "External Application", "Incoming".
  3. Redirect URL: https://<codesphere.domain>/ide/auth/bitbucket/callback
  4. Berechtigungen: Repository Lese-/Schreibzugriff.
  5. Du erhältst je nach OAuth-Version einen "Consumer Key" (bitbucketAppsClientId) und ein "Consumer Secret" (bitbucketAppsClientSecret) oder Ähnliches.

Azure DevOps:​

  1. Registriere eine Anwendung in Azure Active Directory.
  2. Redirect URI: https://<codesphere.domain>/ide/auth/azureDevOps/callback (stelle sicher, dass sie als Web Redirect URI hinzugefügt wird).
  3. Notiere die "Application (client) ID" (azureDevOpsAppClientId).
  4. Gehe zu "Certificates & secrets" -> "New client secret", um azureDevOpsAppClientSecret zu generieren. Richte eine Erinnerung ein, um dieses Secret regelmäßig zu erneuern, da es ein Ablaufdatum hat.
  5. API-Berechtigungen: Füge Berechtigungen für "Azure DevOps" -> user_impersonation hinzu und stelle sicher, dass vso.code_full im Scope in config.yaml enthalten ist.

Denke daran, diese Client-IDs und -Secrets zu deiner prod.vault.yaml-Datei hinzuzufügen und sie zu verschlüsseln. Beispiel für Secret-Namen:

  • githubAppsClientId, githubAppsClientSecret
  • gitlabAppClientId, gitlabAppClientSecret
  • bitbucketAppsClientId, bitbucketAppsClientSecret
  • azureDevOpsAppClientId, azureDevOpsAppClientSecret