O GitLab no ChatGPT e no Codex encontra-se atualmente em versão beta.
Descrição geral
Utilize o modelo de aplicação GitLab Self-Managed para criar um rascunho de aplicação específico do espaço de trabalho para uma instância do GitLab Self-Managed ou GitLab Dedicated. Forneça o nome do anfitrião e as credenciais da aplicação OAuth do GitLab, reveja o rascunho da aplicação e publique-a para os membros elegíveis do espaço de trabalho. Após a publicação, as ações ativadas da aplicação ficam disponíveis nas conversas do ChatGPT e nas sessões do Codex.
Para obter uma descrição geral do comportamento, disponibilidade, permissões, utilização de dados e requisitos de rede suportados do GitLab, consulte: Ligar o GitLab ao ChatGPT e ao Codex.
O que está a configurar
Está a criar uma aplicação específica do espaço de trabalho a partir do modelo de aplicação GitLab Self-Managed. A aplicação utiliza:
Uma aplicação OAuth do GitLab registada no seu anfitrião do GitLab Self-Managed ou GitLab Dedicated.
O ID da aplicação e o segredo OAuth do GitLab para a autorização dos utilizadores.
Os âmbitos OAuth necessários: api, write_repository e openid.
O nome do anfitrião do GitLab, como gitlab.example.com, para obter os endpoints da Web, da API, de autorização e de tokens.
Antes de começar
É necessário:
Acesso de administrador ou proprietário do espaço de trabalho do ChatGPT.
Permissão do GitLab para criar a aplicação OAuth: acesso de Proprietário do grupo para uma aplicação pertencente a um grupo ou acesso de administrador da instância para uma aplicação disponível em toda a instância.
Apenas o nome do anfitrião do GitLab, sem https://, porta ou caminho. Utilize um anfitrião do GitLab Self-Managed ou GitLab Dedicated, não gitlab.com.
Uma decisão sobre as ações do GitLab que o ChatGPT e o Codex devem suportar, como pesquisa em repositórios, fluxos de trabalho de pedidos de integração e problemas, edição de ficheiros ou fluxos de trabalho mais abrangentes do Codex.
Mantenha o ChatGPT e o GitLab abertos em separadores diferentes. Copie o URI de redirecionamento exato apresentado no ChatGPT; não o crie nem altere.
Valores a preparar
Nome do anfitrião do GitLab: por exemplo, gitlab.example.com.
URI de redirecionamento: copie-o do fluxo de configuração do modelo no ChatGPT.
ID da aplicação OAuth do GitLab.
Segredo OAuth do GitLab.
Âmbitos OAuth: copie-os do fluxo de configuração do modelo no 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.
Criar a aplicação OAuth do GitLab no GitLab
Escolher onde criar a aplicação
Abra o seu anfitrião do GitLab, como https://gitlab.example.com.
Escolha se pretende criar uma aplicação disponível em toda a instância ou pertencente a um grupo. Esta escolha determina quem gere a aplicação; o acesso aos projetos continua a depender das permissões no GitLab do utilizador que concede a autorização e dos âmbitos OAuth concedidos.
Para uma aplicação disponível em toda a instância, aceda a Administração > Aplicações. Para uma aplicação pertencente a um grupo, aceda a Definições > Aplicações no grupo.
Adicionar os detalhes da aplicação
Selecione Nova aplicação ou Adicionar nova aplicação.
Introduza um nome claro para a aplicação, como GitLab Self-Managed ou GitLab Dedicated.
Em URI de redirecionamento, cole o URI exato copiado do ChatGPT.
Mantenha a opção Confidencial ativada para esta aplicação OAuth do lado do servidor.
Configurar o acesso e guardar
Para uma aplicação disponível em toda a instância, o GitLab recomenda selecionar Fidedigna. Isto ignora o prompt de autorização do utilizador.
Selecione os âmbitos api, write_repository e openid.
Reveja quem pode gerir a aplicação e confirme que os utilizadores do GitLab que concedem autorização têm as permissões de grupo e de projeto adequadas.
Guarde a aplicação.
Requisitos dos âmbitos OAuth
O modelo solicita os seguintes âmbitos OAuth para as ações do GitLab ativadas no ChatGPT e no Codex:
api: necessário para as operações da API do GitLab disponibilizadas pela aplicação, incluindo ações de pedidos de integração, problemas e CI/CD.
write_repository: necessário para operações de escrita no repositório através do Git.
openid: necessário para obter informações de identidade e associação através do OpenID Connect.
Copiar as credenciais OAuth do GitLab
Na aplicação GitLab guardada, copie o ID da aplicação e o segredo. Trate o segredo como uma credencial. Se ficar exposto, renove-o no GitLab e crie uma nova aplicação para o espaço de trabalho.
Concluir a configuração no ChatGPT
Regresse ao separador de configuração do modelo no ChatGPT.
Cole o ID da aplicação do GitLab em ID de cliente OAuth.
Cole o segredo do GitLab em segredo de cliente OAuth.
Confirme que o campo do nome do anfitrião do GitLab contém apenas o nome do anfitrião, como gitlab.example.com.
Selecione Criar rascunho.
Abra os detalhes do rascunho da aplicação e reveja Acesso por função e Configurar ações.
Publicar e gerir a aplicação para o ChatGPT e o Codex
A criação do rascunho da aplicação não a disponibiliza automaticamente aos membros. Depois de rever o rascunho:
Selecione Publicar no rascunho da aplicação.
Aceda a Definições do espaço de trabalho > Plugins e confirme que o GitLab está disponível para as funções pretendidas.
Reveja o Acesso por função das funções que devem utilizar a aplicação.
Em Configurar ações, reveja as ações de leitura e escrita disponíveis.
Em Configurar aprovações, escolha quando os utilizadores têm de aprovar uma ação antes de o ChatGPT ou o Codex utilizar a aplicação.
Peça a um utilizador de teste com acesso que abra o GitLab no Diretório de plugins ou em Definições > Plugins. Confirme que o utilizador consegue instalar o plugin e ligar-se à aplicação criada a partir do modelo Self-Managed do GitLab.
Estas definições de aprovação da aplicação aplicam-se às conversas do ChatGPT e aos tópicos do Codex.
Configurar a atividade do GitLab para a revisão de código do Codex
Depois de publicar a aplicação, configure a atividade do GitLab no Codex se pretender utilizar a revisão de código do Codex. Esta configuração da atividade configura os eventos de webhook necessários.
Abra as definições dos conectores do Codex.
Configure uma conta de serviço do espaço de trabalho. Permita que o Codex crie a conta ou forneça um token de acesso pessoal para uma conta de serviço existente.
Ative a atividade do GitLab para o projeto ou para um dos respetivos grupos principais.
Se o Codex precisar de executar tarefas de programação ou utilizar uma configuração específica do projeto, crie um ambiente de projeto.
A aplicação GitLab utiliza o OAuth do utilizador para leituras e ações ativadas no ChatGPT e no Codex. Para as escritas de revisão do Codex no GitLab Self-Managed ou GitLab Dedicated, o token da conta de serviço gerida pelo espaço de trabalho determina a identidade e os projetos nos quais o Codex pode comentar ou reagir.
Saiba mais: Rever pedidos de integração do GitLab com o Codex.
Ligar e testar a aplicação GitLab
Enquanto utilizador com acesso, abra o GitLab no Diretório de plugins ou em Definições > Plugins. Selecione Instalar plugin e, em seguida, Ligar.
Se o seu espaço de trabalho tiver mais do que uma aplicação GitLab, escolha a aplicação correspondente a este anfitrião do GitLab Self-Managed ou GitLab Dedicated.
Autorize a aplicação OAuth do GitLab quando solicitado.
Comece por executar uma pequena ação de leitura no ChatGPT ou no Codex, como listar os projetos acessíveis ou obter um pedido de integração conhecido.
Se as ações de escrita estiverem ativadas, teste-as num projeto de baixo risco e em cada produto onde pretenda utilizá-las antes de uma implementação mais abrangente.
Comportamento do nome do anfitrião e do OAuth
A aplicação utiliza o nome do anfitrião para obter os endpoints do GitLab. Introduza apenas o anfitrião, como gitlab.example.com. Não inclua https://, um caminho de API ou repositório, uma porta nem gitlab.com. Este modelo destina-se ao GitLab Self-Managed ou ao GitLab Dedicated. Para o GitLab.com (SaaS), utilize a aplicação GitLab.
Resolução de problemas na configuração da aplicação GitLab Self-Managed
O URI de redirecionamento não corresponde: confirme que o URI de redirecionamento da aplicação OAuth do GitLab corresponde exatamente ao URI de redirecionamento apresentado no ChatGPT.
O ChatGPT não consegue criar nem guardar o rascunho da aplicação: confirme que estão presentes o nome do anfitrião, o ID da aplicação, o segredo e o URI de redirecionamento.
A autenticação é bem-sucedida, mas as chamadas ao projeto falham: confirme que o utilizador do GitLab que concede a autorização consegue aceder ao projeto e que a aplicação OAuth tem os âmbitos do modelo.
A API devolve 403 ou indica permissões insuficientes: confirme que a conta do GitLab associada tem as permissões de projeto ou grupo necessárias e que a aplicação OAuth inclui os âmbitos exigidos pelo modelo.
Não é possível aceder a nenhum projeto: confirme que o utilizador tem acesso aos projetos, está ligado à instância do GitLab pretendida e selecionou a aplicação GitLab correta no ChatGPT ou no Codex.
