GitLab i ChatGPT och Codex är för närvarande i betaversion.
Översikt
Använd appmallen för GitLab Self-Managed för att skapa ett apputkast som är specifikt för arbetsytan och avsett för en GitLab Self-Managed- eller GitLab Dedicated-instans. Ange GitLab-värdnamnet och OAuth-applikationens autentiseringsuppgifter, granska apputkastet och publicera det sedan för behöriga medlemmar i arbetsytan. Efter publiceringen är appens aktiverade åtgärder tillgängliga i ChatGPT-konversationer och Codex-sessioner.
En översikt över GitLab-funktioner som stöds, tillgänglighet, behörigheter, dataanvändning och nätverkskrav finns i: Ansluta GitLab till ChatGPT och Codex.
Det här konfigurerar du
Du skapar en app som är specifik för arbetsytan utifrån appmallen för GitLab Self-Managed. Appen använder:
En GitLab OAuth-applikation som är registrerad på din GitLab Self-Managed- eller GitLab Dedicated-värd.
GitLab OAuth-applikationens Applikations-ID och Hemlighet för användarauktorisering.
De obligatoriska OAuth-behörighetsomfången: api, write_repository och openid.
Ditt GitLab-värdnamn, till exempel gitlab.example.com, för att härleda slutpunkterna för webb, API, auktorisering och token.
Innan du börjar
Du behöver:
Administratörs- eller ägaråtkomst till ChatGPT-arbetsytan.
Behörighet i GitLab att skapa OAuth-applikationen: ägaråtkomst till gruppen för en gruppägd app, eller administratörsåtkomst till instansen för en app som gäller hela instansen.
Enbart GitLab-värdnamnet, utan https://, port eller sökväg. Använd en GitLab Self-Managed- eller GitLab Dedicated-värd, inte gitlab.com.
Ett beslut om vilka GitLab-åtgärder ChatGPT och Codex ska stödja, till exempel sökning i förvar, arbetsflöden för sammanslagningsbegäranden och ärenden, filredigering eller mer omfattande Codex-arbetsflöden.
Ha ChatGPT och GitLab öppna i separata flikar. Kopiera exakt den Omdirigerings-URI som visas i ChatGPT. Skapa inte en egen och ändra den inte.
För att öppna sidan Appar från Administratörskonsolen väljer du den avsedda ChatGPT-arbetsytan, öppnar Pluginer och väljer Hantera äldre appar.
Värden att förbereda
GitLab-värdnamn: till exempel gitlab.example.com.
Omdirigerings-URI: kopiera den från mallkonfigurationen i ChatGPT.
GitLab OAuth-applikationens Applikations-ID.
GitLab OAuth-applikationens Hemlighet.
OAuth-behörighetsomfång: kopiera dem från mallkonfigurationen i 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.
Skapa GitLab OAuth-applikationen i GitLab
Välj var applikationen ska skapas
Öppna din GitLab-värd, till exempel https://gitlab.example.com.
Välj om du vill skapa en applikation som gäller hela instansen eller en gruppägd applikation. Valet avgör vem som hanterar applikationen. Projektåtkomsten styrs fortfarande av GitLab-behörigheterna för användaren som beviljar åtkomst och av de beviljade OAuth-behörighetsomfången.
För en applikation som gäller hela instansen går du till Administration > Applikationer. För en gruppägd applikation går du till gruppens Inställningar > Applikationer.
Lägg till applikationsuppgifterna
Välj Ny applikation eller Lägg till ny applikation.
Ange ett tydligt appnamn, till exempel GitLab Self-Managed eller GitLab Dedicated.
Klistra in exakt den URI som du kopierade från ChatGPT i Omdirigerings-URI.
Låt Konfidentiell vara aktiverat för den här OAuth-applikationen på serversidan.
Konfigurera åtkomst och spara
För en applikation som gäller hela instansen rekommenderar GitLab att du väljer Betrodd. Då hoppas begäran om användarens auktorisering över.
Välj behörighetsomfången api, write_repository och openid.
Granska vilka som kan hantera applikationen och kontrollera att de GitLab-användare som beviljar åtkomst har rätt grupp- och projektbehörigheter.
Spara applikationen.
Krav på OAuth-behörighetsomfång
Mallen begär följande OAuth-behörighetsomfång för aktiverade GitLab-åtgärder i ChatGPT och Codex:
api: krävs för GitLab API-operationer som appen tillhandahåller, inklusive åtgärder för sammanslagningsbegäranden, ärenden och CI/CD.
write_repository: krävs för skrivoperationer i förvar via Git.
openid: krävs för identitets- och medlemskapsinformation via OpenID Connect.
Kopiera autentiseringsuppgifterna för GitLab OAuth
Kopiera Applikations-ID och Hemlighet i den sparade GitLab-applikationen. Hantera värdet i Hemlighet som en autentiseringsuppgift. Om hemligheten röjs ska du förnya den i GitLab och skapa en ny app för arbetsytan.
Slutför konfigurationen i ChatGPT
Gå tillbaka till fliken för mallkonfiguration i ChatGPT.
Klistra in GitLabs Applikations-ID i OAuth-klient-ID.
Klistra in GitLabs Hemlighet i OAuth-klienthemlighet.
Kontrollera att GitLab-värdnamnet endast innehåller värdnamnet, till exempel gitlab.example.com.
Välj Skapa utkast.
Öppna apputkastets detaljer och granska Rollåtkomst och Konfigurera åtgärder.
Publicera och hantera appen för ChatGPT och Codex
Att skapa apputkastet gör inte automatiskt appen tillgänglig för medlemmarna. När du har granskat utkastet:
Välj Publicera för apputkastet.
Gå till Administratörskonsolen, välj den avsedda ChatGPT-arbetsytan och öppna Pluginer. Kontrollera sedan att GitLab är tillgängligt för de avsedda rollerna.
Granska Rollåtkomst för de roller som ska använda appen.
Granska de tillgängliga läs- och skrivåtgärderna under Konfigurera åtgärder.
Under Konfigurera godkännanden väljer du när användare måste godkänna en åtgärd innan ChatGPT eller Codex använder appen.
Be en testanvändare med åtkomst att öppna GitLab från Pluginkatalogen eller Inställningar > Pluginer. Kontrollera att användaren kan installera pluginen och ansluta till appen som skapats från mallen för GitLab Self-Managed.
Dessa inställningar för appgodkännande gäller för ChatGPT-konversationer och Codex-trådar.
Konfigurera GitLab-aktivitet för kodgranskning med Codex
När appen har publicerats konfigurerar du GitLab-aktivitet i Codex om du planerar att använda Codex för kodgranskning. Den här aktivitetskonfigurationen ställer in de webbhook-händelser som krävs.
Konfigurera ett tjänstekonto för arbetsytan. Låt Codex skapa kontot eller ange en personlig åtkomsttoken för ett befintligt tjänstekonto.
Aktivera GitLab-aktivitet för projektet eller någon av dess överordnade grupper.
Om Codex behöver utföra kodningsuppgifter eller använda projektspecifik konfiguration skapar du en projektmiljö.
GitLab-appen använder användarens OAuth-auktorisering för läsning och aktiverade åtgärder i ChatGPT och Codex. När Codex skriver i samband med granskning i GitLab Self-Managed eller GitLab Dedicated avgör tjänstekontots token, som hanteras av arbetsytan, vilken identitet Codex använder och i vilka projekt Codex kan kommentera eller reagera.
Läs mer: Granska sammanslagningsbegäranden i GitLab med Codex.
Anslut och testa GitLab-appen
Som användare med åtkomst öppnar du GitLab från Pluginkatalogen eller Inställningar > Pluginer. Välj Installera plugin och sedan Anslut.
Om arbetsytan har fler än en GitLab-app väljer du appen för den här GitLab Self-Managed- eller GitLab Dedicated-värden.
Ge GitLab OAuth-applikationen åtkomst när du uppmanas till det.
Börja med en enkel läsåtgärd i ChatGPT eller Codex, till exempel att lista tillgängliga projekt eller hämta en känd sammanslagningsbegäran.
Om skrivåtgärder är aktiverade testar du dem i ett projekt med låg risk och i varje produkt där du tänker använda dem innan de införs i större skala.
Värdnamn och hur OAuth fungerar
Appen använder värdnamnet för att härleda GitLab-slutpunkter. Ange endast värdnamnet, till exempel gitlab.example.com. Ta inte med https://, en sökväg till ett API eller förvar, en port eller gitlab.com. Den här mallen är avsedd för GitLab Self-Managed eller GitLab Dedicated. För GitLab.com (SaaS) använder du GitLab-appen.
Felsökning av konfigurationen av GitLab Self-Managed-appen
Omdirigerings-URI stämmer inte: Kontrollera att omdirigerings-URI:n i GitLab OAuth-applikationen exakt matchar den som visas i ChatGPT.
ChatGPT kan inte skapa eller spara apputkastet: Kontrollera att värdnamn, Applikations-ID, Hemlighet och Omdirigerings-URI har angetts.
Autentiseringen lyckas men projektanropen misslyckas: Kontrollera att GitLab-användaren som beviljar åtkomst har tillgång till projektet och att OAuth-applikationen har mallens behörighetsomfång.
API:et returnerar 403 eller otillräckliga behörigheter: Kontrollera att det anslutna GitLab-kontot har de projekt- eller gruppbehörigheter som krävs och att OAuth-applikationen omfattar mallens obligatoriska behörighetsomfång.
Inga projekt är tillgängliga: Kontrollera att användaren har projektåtkomst, är ansluten till den avsedda GitLab-instansen och har valt rätt GitLab-app i ChatGPT eller Codex.
