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:
- Gehe zu deiner GitLab-Gruppe (oder zu den Benutzereinstellungen für eine App auf Benutzerebene) > Settings > Applications.
- Erstelle eine neue Anwendung (z. B. "Codesphere Git Integration").
- Redirect URI / Callback URL:
https://<codesphere.domain>/ide/auth/gitlab/callback(ersetze<codesphere.domain>durch deine Codesphere-Domain). - Scopes: Wähle
api,read_repository,write_repository. (Stelle sicher, dassopenid,profile,emailebenfalls verfügbar/ausgewählt sind, falls Informationen zum Benutzerprofil benötigt werden.) - Speichere die Anwendung. Du erhältst eine "Application ID" (
gitlabAppClientId) und ein "Secret" (gitlabAppClientSecret).
GitHub:
- Gehe zu den GitHub-Organisationseinstellungen > Developer settings > GitHub Apps > New GitHub App.
- Application name: z. B. "Codesphere Git Integration"
- Homepage URL:
https://<your-codesphere.domain> - Authorization callback URL:
https://<your-codesphere.domain>/ide/auth/github/callback - Du erhältst eine "Client ID" (
githubAppsClientId) und generierst ein "Client Secret" (githubAppsClientSecret). - 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):
- Admin Settings > System > Application Links.
- Erstelle einen neuen Link. Wähle "External Application", "Incoming".
- Redirect URL:
https://<codesphere.domain>/ide/auth/bitbucket/callback - Berechtigungen: Repository Lese-/Schreibzugriff.
- Du erhältst je nach OAuth-Version einen "Consumer Key" (
bitbucketAppsClientId) und ein "Consumer Secret" (bitbucketAppsClientSecret) oder Ähnliches.
Azure DevOps:
- Registriere eine Anwendung in Azure Active Directory.
- Redirect URI:
https://<codesphere.domain>/ide/auth/azureDevOps/callback(stelle sicher, dass sie als Web Redirect URI hinzugefügt wird). - Notiere die "Application (client) ID" (
azureDevOpsAppClientId). - Gehe zu "Certificates & secrets" -> "New client secret", um
azureDevOpsAppClientSecretzu generieren. Richte eine Erinnerung ein, um dieses Secret regelmäßig zu erneuern, da es ein Ablaufdatum hat. - API-Berechtigungen: Füge Berechtigungen für "Azure DevOps" ->
user_impersonationhinzu und stelle sicher, dassvso.code_fullim Scope inconfig.yamlenthalten 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,githubAppsClientSecretgitlabAppClientId,gitlabAppClientSecretbitbucketAppsClientId,bitbucketAppsClientSecretazureDevOpsAppClientId,azureDevOpsAppClientSecret