GitLab in ChatGPT en Codex bevindt zich momenteel in de bètafase.
Overzicht
Gebruik de appsjabloon voor GitLab Self-Managed om een werkruimtespecifieke conceptapp te maken voor een GitLab Self-Managed- of GitLab Dedicated-instantie. Voer de GitLab-hostnaam en de inloggegevens van de OAuth-applicatie in, controleer de conceptapp en publiceer deze vervolgens voor de werkruimteleden die er toegang toe mogen krijgen. Na publicatie zijn de ingeschakelde acties van de app beschikbaar in ChatGPT-gesprekken en Codex-sessies.
Zie GitLab verbinden met ChatGPT en Codex voor een overzicht van de ondersteunde GitLab-functionaliteit, beschikbaarheid, machtigingen, gegevensgebruik en netwerkvereisten.
Wat je gaat instellen
Je maakt een werkruimtespecifieke app met de appsjabloon voor GitLab Self-Managed. De app gebruikt:
Een GitLab OAuth-applicatie die is geregistreerd op je GitLab Self-Managed- of GitLab Dedicated-host.
De Applicatie-ID en het Geheim van GitLab OAuth voor gebruikersautorisatie.
De vereiste OAuth-scopes: api, write_repository en openid.
Je GitLab-hostnaam, zoals gitlab.example.com, om de web-, API-, autorisatie- en tokeneindpunten af te leiden.
Voordat je begint
Je hebt het volgende nodig:
Beheerders- of eigenaarstoegang tot de ChatGPT-werkruimte.
GitLab-machtigingen om de OAuth-applicatie te maken: eigenaarstoegang tot de groep voor een app die eigendom is van een groep, of beheerderstoegang tot de instantie voor een app voor de hele instantie.
Alleen de GitLab-hostnaam, zonder https://, poort of pad. Gebruik een GitLab Self-Managed- of GitLab Dedicated-host, niet gitlab.com.
Een keuze welke GitLab-acties ChatGPT en Codex moeten ondersteunen, zoals zoeken in repository's, workflows voor merge requests en issues, bestandsbewerkingen of bredere Codex-workflows.
Houd ChatGPT en GitLab open in aparte tabbladen. Kopieer de exacte Omleidings-URI die in ChatGPT wordt weergegeven. Maak deze niet zelf en wijzig deze niet.
Om de pagina Apps te openen vanuit de Beheerdersconsole, selecteer je de gewenste ChatGPT-werkruimte, open je Plug-ins en selecteer je Verouderde apps beheren.
Waarden die je nodig hebt
GitLab-hostnaam: bijvoorbeeld gitlab.example.com.
Omleidings-URI: kopieer deze uit het configuratieproces van de sjabloon in ChatGPT.
Applicatie-ID van GitLab OAuth.
Geheim van GitLab OAuth.
OAuth-scopes: kopieer deze uit het configuratieproces van de sjabloon in ChatGPT.
Start the template setup in ChatGPT
In ChatGPT, switch to the workspace where the app should be available.
Go to Workspace settings > Apps.
In Directory, find GitLab, open its GitLab Self-Managed app template, and select Enable.
Enter a clear app name and description.
Enter the GitLab hostname, such as gitlab.example.com.
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.
De GitLab OAuth-applicatie maken in GitLab
Kiezen waar je de applicatie maakt
Open je GitLab-host, zoals https://gitlab.example.com.
Kies of je een applicatie voor de hele instantie wilt maken of een applicatie die eigendom is van een groep. Deze keuze bepaalt wie de applicatie beheert. De toegang tot projecten blijft afhangen van de GitLab-machtigingen van de gebruiker die autorisatie verleent en de toegekende OAuth-scopes.
Ga voor een applicatie voor de hele instantie naar Beheer > Applicaties. Ga voor een applicatie die eigendom is van een groep naar Instellingen > Applicaties van die groep.
De applicatiegegevens toevoegen
Selecteer Nieuwe applicatie of Nieuwe applicatie toevoegen.
Voer een duidelijke appnaam in, zoals GitLab Self-Managed of GitLab Dedicated.
Plak in Omleidings-URI de exacte URI die je uit ChatGPT hebt gekopieerd.
Laat Vertrouwelijk ingeschakeld voor deze OAuth-applicatie die op de server draait.
Toegang configureren en opslaan
Voor een applicatie voor de hele instantie raadt GitLab aan om Vertrouwd te selecteren. Hierdoor wordt de gebruiker niet om autorisatie gevraagd.
Selecteer de scopes api, write_repository en openid.
Controleer wie de applicatie kan beheren en of de GitLab-gebruikers die autorisatie verlenen de juiste groeps- en projectmachtigingen hebben.
Sla de applicatie op.
Vereisten voor OAuth-scopes
De sjabloon vraagt de volgende OAuth-scopes aan voor ingeschakelde GitLab-acties in ChatGPT en Codex:
api: vereist voor GitLab-API-bewerkingen die de app beschikbaar stelt, waaronder acties voor merge requests, issues en CI/CD.
write_repository: vereist voor schrijfbewerkingen in repository's via Git.
openid: vereist voor identiteits- en lidmaatschapsgegevens via OpenID Connect.
De GitLab OAuth-inloggegevens kopiëren
Kopieer in de opgeslagen GitLab-applicatie de Applicatie-ID en het Geheim. Behandel het Geheim als een inloggegeven. Als het uitlekt, vernieuw het dan in GitLab en maak een nieuwe werkruimte-app.
De configuratie voltooien in ChatGPT
Ga terug naar het tabblad voor sjabloonconfiguratie in ChatGPT.
Plak de Applicatie-ID uit GitLab in OAuth-client-ID.
Plak het Geheim uit GitLab in OAuth-clientgeheim.
Controleer of het veld voor de GitLab-hostnaam alleen de hostnaam bevat, zoals gitlab.example.com.
Selecteer Concept maken.
Open de details van de conceptapp en controleer Toegang per rol en Acties configureren.
De app publiceren en beheren voor ChatGPT en Codex
Een conceptapp is na het maken niet automatisch beschikbaar voor leden. Nadat je het concept hebt gecontroleerd:
Selecteer Publiceren voor de conceptapp.
Ga naar de Beheerdersconsole, selecteer de gewenste ChatGPT-werkruimte en open Plug-ins. Controleer vervolgens of GitLab beschikbaar is voor de beoogde rollen.
Controleer Toegang per rol voor de rollen die de app moeten kunnen gebruiken.
Controleer bij Acties configureren de beschikbare lees- en schrijfacties.
Kies bij Goedkeuringen configureren wanneer gebruikers een actie moeten goedkeuren voordat ChatGPT of Codex de app gebruikt.
Vraag een testgebruiker met toegang om GitLab te openen via de Plug-incatalogus of Instellingen > Plug-ins. Controleer of de gebruiker de plug-in kan installeren en verbinding kan maken met de app die is gemaakt met de sjabloon voor GitLab Self-Managed.
Deze goedkeuringsinstellingen voor de app gelden voor ChatGPT-gesprekken en Codex-threads.
GitLab-activiteit instellen voor codereviews met Codex
Configureer na publicatie van de app GitLab-activiteit in Codex als je Codex wilt gebruiken voor codereviews. Met deze activiteitsconfiguratie stel je de vereiste webhookgebeurtenissen in.
Open de connectorinstellingen van Codex.
Configureer een serviceaccount voor de werkruimte. Laat Codex het account maken of geef een persoonlijk toegangstoken op voor een bestaand serviceaccount.
Schakel GitLab-activiteit in voor het project of een van de bovenliggende groepen.
Als Codex programmeertaken moet uitvoeren of een projectspecifieke configuratie moet gebruiken, maak dan een projectomgeving.
De GitLab-app gebruikt OAuth-autorisatie van de gebruiker voor leesbewerkingen en ingeschakelde acties in ChatGPT en Codex. Voor schrijfbewerkingen bij Codex-reviews op GitLab Self-Managed of GitLab Dedicated bepaalt het door de werkruimte beheerde serviceaccounttoken onder welke identiteit en in welke projecten Codex opmerkingen of reacties kan plaatsen.
Meer informatie: GitLab-merge requests beoordelen met Codex.
De GitLab-app verbinden en testen
Open als gebruiker met toegang GitLab via de Plug-incatalogus of Instellingen > Plug-ins. Selecteer Plug-in installeren en vervolgens Verbinden.
Als je werkruimte meerdere GitLab-apps heeft, kies dan de app voor deze GitLab Self-Managed- of GitLab Dedicated-host.
Verleen de GitLab OAuth-applicatie autorisatie wanneer daarom wordt gevraagd.
Voer eerst een kleine leesactie uit in ChatGPT of Codex, zoals toegankelijke projecten weergeven of een bekend merge request ophalen.
Als schrijfacties zijn ingeschakeld, test deze dan vóór een bredere uitrol in een project met weinig risico en in elk product waarin je ze wilt gebruiken.
Hostnaam en werking van OAuth
De app leidt de GitLab-eindpunten af van de hostnaam. Voer alleen de hostnaam in, zoals gitlab.example.com. Voeg geen https://, API- of repositorypad, poort of gitlab.com toe. Deze sjabloon is bedoeld voor GitLab Self-Managed of GitLab Dedicated. Gebruik voor GitLab.com (SaaS) de GitLab-app.
Problemen met de configuratie van de GitLab Self-Managed-app oplossen
Omleidings-URI komt niet overeen: controleer of de omleidings-URI van de GitLab OAuth-applicatie exact overeenkomt met de omleidings-URI die in ChatGPT wordt weergegeven.
ChatGPT kan de conceptapp niet maken of opslaan: controleer of de hostnaam, applicatie-ID, het geheim en de omleidings-URI zijn ingevuld.
Authenticatie lukt, maar projectaanroepen mislukken: controleer of de GitLab-gebruiker die autorisatie verleent toegang heeft tot het project en of de OAuth-applicatie de scopes van de sjabloon heeft.
De API geeft 403 of onvoldoende machtigingen terug: controleer of het verbonden GitLab-account de vereiste project- of groepsmachtigingen heeft en of de OAuth-applicatie de vereiste scopes van de sjabloon bevat.
Er zijn geen projecten toegankelijk: controleer of de gebruiker toegang heeft tot projecten, is verbonden met de juiste GitLab-instantie en de juiste GitLab-app heeft geselecteerd in ChatGPT of Codex.
