OpenAI
Diese Seite wurde maschinell übersetzt. Den Originalartikel auf Englisch ansehen.

App-Vorlage für GitLab Self-Managed für ChatGPT und Codex einrichten

Hier erfährst du, wie Workspace-Administratoren die App-Vorlage für GitLab Self-Managed mithilfe der GitLab-OAuth-Anwendung ihrer Organisation für eine GitLab Self-Managed- oder GitLab Dedicated-Instanz konfigurieren können.

Aktualisiert: 28 days ago

GitLab in ChatGPT und Codex befindet sich derzeit in der Betaphase.

Überblick

Verwende die App-Vorlage für GitLab Self-Managed, um für eine GitLab Self-Managed- oder GitLab Dedicated-Instanz einen Workspace-spezifischen App-Entwurf zu erstellen. Gib den GitLab-Hostnamen und die Anmeldedaten der OAuth-Anwendung an, prüfe den App-Entwurf und veröffentliche ihn anschließend für berechtigte Workspace-Mitglieder. Nach der Veröffentlichung sind die aktivierten Aktionen der App in ChatGPT-Unterhaltungen und Codex-Sitzungen verfügbar.

Einen Überblick über unterstützte GitLab-Funktionen, Verfügbarkeit, Berechtigungen, Datennutzung und Netzwerkanforderungen findest du unter GitLab mit ChatGPT und Codex verbinden.

Was du einrichtest

Du erstellst aus der App-Vorlage für GitLab Self-Managed eine Workspace-spezifische App. Die App verwendet:

  • Eine GitLab-OAuth-Anwendung, die auf deinem GitLab Self-Managed- oder GitLab Dedicated-Host registriert ist.

  • Die GitLab-OAuth-Werte Application ID und Secret für die Autorisierung.

  • Die erforderlichen OAuth-Bereiche: api, write_repository und openid.

  • Deinen GitLab-Hostnamen, zum Beispiel gitlab.example.com, um daraus die Web-, API-, Autorisierungs- und Token-Endpunkte abzuleiten.

Bevor du beginnst

Du benötigst:

  • Administrator- oder Inhaberzugriff auf den ChatGPT-Workspace.

  • Die GitLab-Berechtigung zum Erstellen der OAuth-Anwendung: Inhaberzugriff auf die Gruppe für eine gruppeneigene App oder Instanzadministratorzugriff für eine instanzweite App.

  • Nur den GitLab-Hostnamen, ohne https://, Port oder Pfad. Verwende einen GitLab Self-Managed- oder GitLab Dedicated-Host, nicht gitlab.com.

  • Eine Entscheidung darüber, welche GitLab-Aktionen ChatGPT und Codex unterstützen sollen, etwa die Repository-Suche, Workflows für Merge Requests und Issues, Dateibearbeitungen oder umfassendere Codex-Workflows.

Lasse ChatGPT und GitLab in separaten Tabs geöffnet. Kopiere die in ChatGPT angezeigte Redirect URI exakt. Erstelle oder ändere sie nicht.

Vorzubereitende Werte

  • GitLab-Hostname: zum Beispiel gitlab.example.com.

  • Redirect URI: Kopiere sie aus dem Einrichtungsablauf der ChatGPT-Vorlage.

  • GitLab-OAuth-Application ID.

  • GitLab-OAuth-Secret.

  • OAuth-Bereiche: Kopiere sie aus dem Einrichtungsablauf der ChatGPT-Vorlage.

Start the template setup in ChatGPT

  1. In ChatGPT, switch to the workspace where the app should be available.

  2. Go to Workspace settings > Plugins.

  3. In Directory, find GitLab, open its GitLab Self-Managed app template, and select Enable.

  4. Enter a clear app name and description.

  5. Enter the GitLab hostname, such as gitlab.example.com.

  6. Copy the Redirect URI shown in ChatGPT, and keep this tab open.

Example: https://chatgpt.com/connector/oauth/<redirect_id>. Do not remove the redirect ID, add a trailing slash, or replace the URI with a generic ChatGPT URL.

GitLab-OAuth-Anwendung in GitLab erstellen

Ort zum Erstellen der Anwendung auswählen

  1. Öffne deinen GitLab-Host, zum Beispiel https://gitlab.example.com.

  2. Wähle aus, ob du eine instanzweite oder eine gruppeneigene Anwendung erstellen möchtest. Diese Auswahl bestimmt, wer die Anwendung verwaltet. Der Projektzugriff richtet sich weiterhin nach den GitLab-Berechtigungen der autorisierenden Person und den gewährten OAuth-Bereichen.

  3. Rufe für eine instanzweite Anwendung Admin > Anwendungen auf. Rufe für eine gruppeneigene Anwendung in der Gruppe Einstellungen > Anwendungen auf.

Anwendungsdetails hinzufügen

  1. Wähle Neue Anwendung oder Neue Anwendung hinzufügen aus.

  2. Gib einen eindeutigen App-Namen ein, zum Beispiel GitLab Self-Managed oder GitLab Dedicated.

  3. Füge unter Redirect URI die exakte aus ChatGPT kopierte URI ein.

  4. Lasse Vertraulich für diese serverseitige OAuth-Anwendung aktiviert.

Zugriff konfigurieren und speichern

  1. Für eine instanzweite Anwendung empfiehlt GitLab, Vertrauenswürdig auszuwählen. Dadurch wird die Autorisierungsabfrage übersprungen.

  2. Wähle die Bereiche api, write_repository und openid aus.

  3. Prüfe, wer die Anwendung verwalten darf, und vergewissere dich, dass die autorisierenden Personen in GitLab über die passenden Gruppen- und Projektberechtigungen verfügen.

  4. Speichere die Anwendung.

Anforderungen an OAuth-Bereiche

Die Vorlage fordert für aktivierte GitLab-Aktionen in ChatGPT und Codex die folgenden OAuth-Bereiche an:

  • api: erforderlich für die von der App bereitgestellten GitLab-API-Vorgänge, darunter Aktionen für Merge Requests, Issues und CI/CD.

  • write_repository: erforderlich für Schreibvorgänge in Repositorys über Git.

  • openid: erforderlich für Identitäts- und Mitgliedschaftsinformationen über OpenID Connect.

GitLab-OAuth-Anmeldedaten kopieren

Kopiere in der gespeicherten GitLab-Anwendung die Application ID und das Secret. Behandle das Secret als Anmeldedaten. Falls es offengelegt wird, erneuere es in GitLab und erstelle eine neue Workspace-App.

Einrichtung in ChatGPT abschließen

  1. Kehre zum Tab für die Einrichtung der ChatGPT-Vorlage zurück.

  2. Füge die GitLab-Application ID unter OAuth-Client-ID ein.

  3. Füge das GitLab-Secret unter OAuth-Client-Secret ein.

  4. Vergewissere dich, dass das Feld für den GitLab-Hostnamen nur den Hostnamen enthält, zum Beispiel gitlab.example.com.

  5. Wähle Entwurf erstellen aus.

  6. Öffne die Details des App-Entwurfs und prüfe den Rollenzugriff sowie die Aktionskonfiguration.

App für ChatGPT und Codex veröffentlichen und verwalten

Durch das Erstellen des App-Entwurfs wird er nicht automatisch für Mitglieder verfügbar. Nach der Prüfung des Entwurfs:

  1. Wähle für den App-Entwurf Veröffentlichen aus.

  2. Rufe Workspace-Einstellungen > Plug-Ins auf und vergewissere dich, dass GitLab für die vorgesehenen Rollen verfügbar ist.

  3. Prüfe den Rollenzugriff für die Rollen, die die App verwenden sollen.

  4. Prüfe unter Aktionen konfigurieren die verfügbaren Lese- und Schreibaktionen.

  5. Lege unter Genehmigungen konfigurieren fest, wann eine Aktion genehmigt werden muss, bevor ChatGPT oder Codex die App verwendet.

  6. Bitte eine Testperson mit Zugriff, GitLab über das Plug-In-Verzeichnis oder über Einstellungen > Plug-Ins zu öffnen. Vergewissere dich, dass die Person das Plug-In installieren und eine Verbindung zu der App herstellen kann, die aus der Self-Managed-Vorlage für GitLab erstellt wurde.

Diese App-Genehmigungseinstellungen gelten für ChatGPT-Unterhaltungen und Codex-Threads.

GitLab-Aktivität für die Codeüberprüfung mit Codex einrichten

Konfiguriere nach der Veröffentlichung der App die GitLab-Aktivität in Codex, wenn du die Codeüberprüfung mit Codex verwenden möchtest. Bei dieser Einrichtung der Aktivität werden die erforderlichen Webhook-Ereignisse konfiguriert.

  1. Öffne die Codex-Connector-Einstellungen.

  2. Konfiguriere ein Workspace-Dienstkonto. Lasse Codex das Konto erstellen oder gib ein persönliches Zugriffstoken für ein vorhandenes Dienstkonto an.

  3. Aktiviere die GitLab-Aktivität für das Projekt oder eine seiner übergeordneten Gruppen.

  4. Wenn Codex Programmieraufgaben ausführen oder eine projektspezifische Einrichtung verwenden soll, erstelle eine Projektumgebung.

Die GitLab-App verwendet für Lesevorgänge und aktivierte Aktionen in ChatGPT und Codex benutzerbezogenes OAuth. Bei Schreibvorgängen durch Codex-Überprüfungen in GitLab Self-Managed oder GitLab Dedicated bestimmt das vom Workspace verwaltete Dienstkonto-Token, unter welcher Identität und in welchen Projekten Codex kommentieren oder reagieren kann.

Weitere Informationen: GitLab-Merge-Requests mit Codex überprüfen.

GitLab-App verbinden und testen

  1. Öffne als Person mit Zugriff GitLab über das Plug-In-Verzeichnis oder über Einstellungen > Plug-Ins. Wähle Plug-In installieren und anschließend Verbinden aus.

  2. Wenn dein Workspace über mehrere GitLab-Apps verfügt, wähle die App für diesen GitLab Self-Managed- oder GitLab Dedicated-Host aus.

  3. Autorisiere bei Aufforderung die GitLab-OAuth-Anwendung.

  4. Führe zuerst eine kleine Leseaktion in ChatGPT oder Codex aus, etwa eine Liste der zugänglichen Projekte abzurufen oder einen bekannten Merge Request zu laden.

  5. Wenn Schreibaktionen aktiviert sind, teste sie vor der breiteren Einführung in einem risikoarmen Projekt und in jedem Produkt, in dem du sie verwenden möchtest.

Hostname und OAuth-Verhalten

Die App leitet aus dem Hostnamen die GitLab-Endpunkte ab. Gib nur den Host ein, zum Beispiel gitlab.example.com. Gib weder https:// noch einen API- oder Repository-Pfad, einen Port oder gitlab.com an. Diese Vorlage ist für GitLab Self-Managed oder GitLab Dedicated vorgesehen. Verwende für GitLab.com (SaaS) die GitLab-App.

Fehlerbehebung bei der Einrichtung der GitLab Self-Managed-App

  • Redirect URI stimmt nicht überein: Vergewissere dich, dass die Redirect URI der GitLab-OAuth-Anwendung exakt mit der in ChatGPT angezeigten Redirect URI übereinstimmt.

  • ChatGPT kann den App-Entwurf nicht erstellen oder speichern: Vergewissere dich, dass Hostname, Application ID, Secret und Redirect URI vorhanden sind.

  • Die Authentifizierung ist erfolgreich, aber Projektaufrufe schlagen fehl: Vergewissere dich, dass die autorisierende Person in GitLab auf das Projekt zugreifen kann und die OAuth-Anwendung über die Bereiche der Vorlage verfügt.

  • Die API gibt 403 oder unzureichende Berechtigungen zurück: Vergewissere dich, dass das verbundene GitLab-Konto über die erforderlichen Projekt- oder Gruppenberechtigungen verfügt und die OAuth-Anwendung die erforderlichen Bereiche der Vorlage umfasst.

  • Auf keine Projekte kann zugegriffen werden: Vergewissere dich, dass die Person Projektzugriff hat, mit der vorgesehenen GitLab-Instanz verbunden ist und in ChatGPT oder Codex die richtige GitLab-App ausgewählt hat.

Zugehörige GitLab-Dokumentation

War dieser Artikel hilfreich?