GitLab în ChatGPT și Codex este momentan în versiune beta.
Prezentare generală
Folosiți șablonul aplicației GitLab Self-Managed pentru a crea o aplicație în schiță specifică spațiului de lucru pentru o instanță GitLab Self-Managed sau GitLab Dedicated. Furnizați numele de gazdă GitLab și datele de autentificare ale aplicației OAuth, examinați aplicația în schiță, apoi publicați-o pentru membrii eligibili ai spațiului de lucru. După publicare, acțiunile activate ale aplicației sunt disponibile în conversațiile ChatGPT și sesiunile Codex.
Pentru o prezentare generală a comportamentului GitLab acceptat, disponibilității, permisiunilor, utilizării datelor și cerințelor de rețea, consultați: Conectarea GitLab la ChatGPT și Codex.
Ce configurați
Creați o aplicație specifică spațiului de lucru din șablonul aplicației GitLab Self-Managed. Aplicația folosește:
O aplicație OAuth GitLab înregistrată pe gazda GitLab Self-Managed sau GitLab Dedicated.
ID-ul aplicației și secretul OAuth GitLab pentru autorizarea utilizatorilor.
Domeniile de acces OAuth necesare: api, write_repository și openid.
Numele de gazdă GitLab, de exemplu gitlab.example.com, pentru determinarea punctelor finale web, API, de autorizare și pentru tokenuri.
Înainte de a începe
Aveți nevoie de:
Acces de administrator sau proprietar al spațiului de lucru ChatGPT.
Permisiunea GitLab de a crea aplicația OAuth: acces de proprietar al grupului pentru o aplicație deținută de grup sau acces de administrator al instanței pentru o aplicație la nivelul întregii instanțe.
Doar numele de gazdă GitLab, fără https://, port sau cale. Folosiți o gazdă GitLab Self-Managed sau GitLab Dedicated, nu gitlab.com.
O decizie privind acțiunile GitLab pe care trebuie să le accepte ChatGPT și Codex, cum ar fi căutarea în depozite, fluxurile de lucru pentru solicitări de îmbinare sau probleme, editarea fișierelor ori fluxuri de lucru Codex mai ample.
Păstrați ChatGPT și GitLab deschise în file separate. Copiați exact URI-ul de redirecționare afișat în ChatGPT; nu îl creați și nu îl modificați.
Valori de pregătit
Numele de gazdă GitLab: de exemplu, gitlab.example.com.
URI de redirecționare: copiați-l din fluxul de configurare a șablonului ChatGPT.
ID-ul aplicației OAuth GitLab.
Secretul OAuth GitLab.
Domenii de acces OAuth: copiați-le din fluxul de configurare a șablonului ChatGPT.
Start the template setup in ChatGPT
In ChatGPT, switch to the workspace where the app should be available.
Go to Workspace settings > Plugins.
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.
Creați aplicația OAuth GitLab în GitLab
Alegeți unde să creați aplicația
Deschideți gazda GitLab, de exemplu https://gitlab.example.com.
Alegeți dacă doriți să creați o aplicație la nivelul întregii instanțe sau una deținută de grup. Această alegere stabilește cine gestionează aplicația; accesul la proiect respectă în continuare permisiunile GitLab ale utilizatorului care autorizează și domeniile de acces OAuth acordate.
Pentru o aplicație la nivelul întregii instanțe, accesați Administrare > Aplicații. Pentru o aplicație deținută de grup, accesați Setări > Aplicații în cadrul grupului.
Adăugați detaliile aplicației
Selectați Aplicație nouă sau Adăugați o aplicație nouă.
Introduceți un nume clar pentru aplicație, cum ar fi GitLab Self-Managed sau GitLab Dedicated.
În URI de redirecționare, inserați URI-ul exact copiat din ChatGPT.
Păstrați opțiunea Confidențială activată pentru această aplicație OAuth de pe server.
Configurați accesul și salvați
Pentru o aplicație la nivelul întregii instanțe, GitLab recomandă să selectați De încredere. Astfel, solicitarea de autorizare a utilizatorului este omisă.
Selectați domeniile de acces api, write_repository și openid.
Verificați cine poate gestiona aplicația și confirmați că utilizatorii GitLab care autorizează au permisiunile corespunzătoare pentru grup și proiect.
Salvați aplicația.
Cerințe privind domeniile de acces OAuth
Șablonul solicită următoarele domenii de acces OAuth pentru acțiunile GitLab activate în ChatGPT și Codex:
api: necesar pentru operațiunile API GitLab expuse de aplicație, inclusiv acțiunile privind solicitările de îmbinare, problemele și CI/CD.
write_repository: necesar pentru operațiunile de scriere în depozit prin Git.
openid: necesar pentru identitatea OpenID Connect și informațiile despre apartenență.
Copiați datele de autentificare OAuth GitLab
În aplicația GitLab salvată, copiați ID-ul aplicației și secretul. Tratați secretul ca pe o dată de autentificare. Dacă este expus, reînnoiți-l în GitLab și creați o nouă aplicație pentru spațiul de lucru.
Finalizați configurarea în ChatGPT
Reveniți la fila de configurare a șablonului ChatGPT.
Inserați ID-ul aplicației GitLab în ID client OAuth.
Inserați secretul GitLab în Secret client OAuth.
Confirmați că numele de gazdă GitLab conține doar numele de gazdă, de exemplu gitlab.example.com.
Selectați Creați schița.
Deschideți detaliile aplicației în schiță și examinați Accesul în funcție de rol și Configurarea acțiunilor.
Publicați și gestionați aplicația pentru ChatGPT și Codex
Crearea aplicației în schiță nu o face automat disponibilă membrilor. După examinarea schiței:
Selectați Publicați pentru aplicația în schiță.
Accesați Setările spațiului de lucru > Pluginuri și confirmați că GitLab este disponibil pentru rolurile dorite.
Examinați Accesul în funcție de rol pentru rolurile care trebuie să folosească aplicația.
În Configurați acțiunile, examinați acțiunile de citire și scriere disponibile.
În Configurați aprobările, alegeți când trebuie utilizatorii să aprobe o acțiune înainte ca ChatGPT sau Codex să folosească aplicația.
Solicitați unui utilizator de test cu acces să deschidă GitLab din Directorul de pluginuri sau din Setări > Pluginuri. Confirmați că utilizatorul poate instala pluginul și se poate conecta la aplicația creată din șablonul Self-Managed GitLab.
Aceste setări de aprobare a aplicației se aplică conversațiilor ChatGPT și firelor Codex.
Configurați activitatea GitLab pentru examinarea codului în Codex
După publicarea aplicației, configurați activitatea GitLab în Codex dacă intenționați să folosiți examinarea codului cu Codex. Această configurare a activității stabilește evenimentele webhook necesare.
Deschideți setările conectorilor Codex.
Configurați un cont de serviciu pentru spațiul de lucru. Permiteți Codex să creeze contul sau furnizați un token de acces personal pentru un cont de serviciu existent.
Activați Activitatea GitLab pentru proiect sau pentru unul dintre grupurile sale părinte.
Dacă Codex trebuie să ruleze sarcini de programare sau să folosească o configurare specifică proiectului, creați un mediu de proiect.
Aplicația GitLab folosește OAuth pentru utilizatori la citire și pentru acțiunile activate în ChatGPT și Codex. Pentru operațiunile de scriere efectuate de Codex în cadrul examinării pe GitLab Self-Managed sau GitLab Dedicated, tokenul contului de serviciu gestionat de spațiul de lucru stabilește identitatea și proiectele în care Codex poate comenta sau reacționa.
Aflați mai multe: Examinați solicitările de îmbinare GitLab cu Codex.
Conectați și testați aplicația GitLab
Ca utilizator cu acces, deschideți GitLab din Directorul de pluginuri sau din Setări > Pluginuri. Selectați Instalați pluginul, apoi Conectați.
Dacă spațiul de lucru are mai multe aplicații GitLab, alegeți aplicația corespunzătoare acestei gazde GitLab Self-Managed sau GitLab Dedicated.
Autorizați aplicația OAuth GitLab când vi se solicită.
Rulați mai întâi o acțiune simplă de citire în ChatGPT sau Codex, cum ar fi afișarea proiectelor accesibile sau preluarea unei solicitări de îmbinare cunoscute.
Dacă acțiunile de scriere sunt activate, testați-le într-un proiect cu risc redus și în fiecare produs în care intenționați să le folosiți, înainte de implementarea pe scară mai largă.
Comportamentul numelui de gazdă și al OAuth
Aplicația folosește numele de gazdă pentru a determina punctele finale GitLab. Introduceți doar gazda, de exemplu gitlab.example.com. Nu includeți https://, o cale API sau de depozit, un port ori gitlab.com. Acest șablon este destinat instanțelor GitLab Self-Managed sau GitLab Dedicated. Pentru GitLab.com (SaaS), folosiți aplicația GitLab.
Depanarea configurării aplicației GitLab Self-Managed
URI de redirecționare necorespunzător: confirmați că URI-ul de redirecționare al aplicației OAuth GitLab corespunde exact celui afișat în ChatGPT.
ChatGPT nu poate crea sau salva aplicația în schiță: confirmați că sunt prezente numele de gazdă, ID-ul aplicației, secretul și URI-ul de redirecționare.
Autentificarea reușește, dar apelurile către proiect eșuează: confirmați că utilizatorul GitLab care autorizează poate accesa proiectul și că aplicația OAuth are domeniile de acces din șablon.
API-ul returnează 403 sau permisiuni insuficiente: confirmați că acel cont GitLab conectat are permisiunile necesare pentru proiect sau grup și că aplicația OAuth include domeniile de acces necesare din șablon.
Niciun proiect nu este accesibil: confirmați că utilizatorul are acces la proiect, este conectat la instanța GitLab dorită și a selectat aplicația GitLab corectă în ChatGPT sau Codex.
