OpenAI
Esta página foi traduzida automaticamente. Veja o artigo original em inglês.

Como configurar o modelo de aplicativo GitLab Self-Managed para ChatGPT e Codex

Saiba como administradores do Ambiente de trabalho seguro podem configurar o modelo de aplicativo GitLab Self-Managed para uma instância do GitLab Self-Managed ou GitLab Dedicated usando o aplicativo OAuth do GitLab da organização.

Atualizado: 28 days ago

O GitLab no ChatGPT e no Codex está atualmente em versão beta.

Visão geral

Use o modelo de aplicativo GitLab Self-Managed para criar um aplicativo de rascunho específico do Ambiente de trabalho seguro para uma instância do GitLab Self-Managed ou GitLab Dedicated. Forneça o nome do host do GitLab e as credenciais do aplicativo OAuth, revise o aplicativo de rascunho e publique-o para os membros qualificados do Ambiente de trabalho seguro. Após a publicação, as ações habilitadas do aplicativo ficam disponíveis nas conversas do ChatGPT e nas sessões do Codex.

Para uma visão geral do comportamento compatível do GitLab, disponibilidade, permissões, uso de dados e requisitos de rede, consulte: Como conectar o GitLab ao ChatGPT e ao Codex.

O que você está configurando

Você está criando um aplicativo específico do Ambiente de trabalho seguro com o modelo de aplicativo GitLab Self-Managed. O aplicativo usa:

  • Um aplicativo OAuth do GitLab registrado no seu host do GitLab Self-Managed ou GitLab Dedicated.

  • A ID do aplicativo e o segredo do OAuth do GitLab para autorização do usuário.

  • Os escopos OAuth obrigatórios: api, write_repository e openid.

  • O nome do host do GitLab, como gitlab.example.com, para obter os endpoints da Web, da API, de autorização e de token.

Antes de começar

Você precisa de:

  • Acesso de administrador ou proprietário do Ambiente de trabalho seguro do ChatGPT.

  • Permissão do GitLab para criar o aplicativo OAuth: acesso de proprietário do grupo para um aplicativo pertencente ao grupo ou acesso de administrador da instância para um aplicativo disponível em toda a instância.

  • Apenas o nome do host do GitLab, sem https://, porta ou caminho. Use um host do GitLab Self-Managed ou GitLab Dedicated, não gitlab.com.

  • Uma decisão sobre quais ações do GitLab o ChatGPT e o Codex devem oferecer, como pesquisa em repositórios, fluxos de trabalho de solicitações de merge e problemas, edição de arquivos ou fluxos de trabalho mais amplos do Codex.

Mantenha o ChatGPT e o GitLab abertos em abas separadas. Copie a URI de redirecionamento exata exibida no ChatGPT; não a crie nem modifique.

Valores a preparar

  • Nome do host do GitLab: por exemplo, gitlab.example.com.

  • URI de redirecionamento: copie-a do fluxo de configuração do modelo no ChatGPT.

  • ID do aplicativo OAuth do GitLab.

  • Segredo do OAuth do GitLab.

  • Escopos OAuth: copie-os do fluxo de configuração do modelo no ChatGPT.

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.

Criar o aplicativo OAuth do GitLab no GitLab

Escolher onde criar o aplicativo

  1. Abra seu host do GitLab, como https://gitlab.example.com.

  2. Escolha entre criar um aplicativo para toda a instância ou um aplicativo pertencente a um grupo. Essa escolha determina quem gerencia o aplicativo; o acesso aos projetos continua seguindo as permissões do usuário do GitLab que autoriza e os escopos OAuth concedidos.

  3. Para um aplicativo disponível em toda a instância, acesse Administração > Aplicativos. Para um aplicativo pertencente a um grupo, acesse Configurações > Aplicativos no grupo.

Adicionar os detalhes do aplicativo

  1. Selecione Novo aplicativo ou Adicionar novo aplicativo.

  2. Insira um nome claro para o aplicativo, como GitLab Self-Managed ou GitLab Dedicated.

  3. Em URI de redirecionamento, cole a URI exata copiada do ChatGPT.

  4. Mantenha a opção Confidencial habilitada para esse aplicativo OAuth do lado do servidor.

Configurar o acesso e salvar

  1. Para um aplicativo disponível em toda a instância, o GitLab recomenda selecionar Confiável. Isso ignora a solicitação de autorização do usuário.

  2. Selecione os escopos api, write_repository e openid.

  3. Verifique quem pode gerenciar o aplicativo e confirme se os usuários do GitLab que farão a autorização têm as permissões adequadas de grupo e projeto.

  4. Salve o aplicativo.

Requisitos de escopo OAuth

O modelo solicita os seguintes escopos OAuth para as ações do GitLab habilitadas no ChatGPT e no Codex:

  • api: obrigatório para as operações da API do GitLab disponibilizadas pelo aplicativo, incluindo ações de solicitação de merge, problemas e CI/CD.

  • write_repository: obrigatório para operações de gravação em repositórios por Git.

  • openid: obrigatório para informações de identidade e associação do OpenID Connect.

Copiar as credenciais OAuth do GitLab

No aplicativo do GitLab salvo, copie a ID do aplicativo e o segredo. Trate o segredo como uma credencial. Se ele for exposto, renove-o no GitLab e crie um novo aplicativo no Ambiente de trabalho seguro.

Concluir a configuração no ChatGPT

  1. Volte à aba de configuração do modelo no ChatGPT.

  2. Cole a ID do aplicativo do GitLab em ID do cliente OAuth.

  3. Cole o segredo do GitLab em Segredo do cliente OAuth.

  4. Confirme se o campo de nome do host do GitLab contém apenas o nome do host, como gitlab.example.com.

  5. Selecione Criar rascunho.

  6. Abra os detalhes do aplicativo de rascunho e revise Acesso por função e Configurar ações.

Publicar e gerenciar o aplicativo para ChatGPT e Codex

A criação do aplicativo de rascunho não o disponibiliza automaticamente aos membros. Após revisar o rascunho:

  1. Selecione Publicar no aplicativo de rascunho.

  2. Acesse Configurações do Ambiente de trabalho seguro > Plugins e confirme se o GitLab está disponível para as funções desejadas.

  3. Revise Acesso por função para as funções que devem usar o aplicativo.

  4. Em Configurar ações, revise as ações de leitura e gravação disponíveis.

  5. Em Configurar aprovações, escolha quando os usuários devem aprovar uma ação antes que o ChatGPT ou o Codex use o aplicativo.

  6. Peça a um usuário de teste com acesso que abra o GitLab pelo Diretório de plugins ou por Configurações > Plugins. Confirme se o usuário consegue instalar o plugin e se conectar ao aplicativo criado com o modelo Self-Managed do GitLab.

Essas configurações de aprovação do aplicativo se aplicam às conversas do ChatGPT e aos threads do Codex.

Configurar a atividade do GitLab para revisão de código no Codex

Após publicar o aplicativo, configure a atividade do GitLab no Codex se você pretende usar a revisão de código do Codex. Essa configuração de atividade define os eventos de webhook necessários.

  1. Abra as configurações de conectores do Codex.

  2. Configure uma conta de serviço do Ambiente de trabalho seguro. Permita que o Codex crie a conta ou forneça um token de acesso pessoal para uma conta de serviço existente.

  3. Habilite a Atividade do GitLab para o projeto ou um dos grupos superiores.

  4. Se o Codex precisar executar tarefas de programação ou usar uma configuração específica do projeto, crie um ambiente do projeto.

O aplicativo GitLab usa o OAuth do usuário para leituras e ações habilitadas no ChatGPT e no Codex. Para gravações de revisão do Codex no GitLab Self-Managed ou GitLab Dedicated, o token da conta de serviço gerenciada pelo Ambiente de trabalho seguro determina a identidade e os projetos em que o Codex pode comentar ou reagir.

Saiba mais: Revisar solicitações de merge do GitLab com o Codex.

Conectar e testar o aplicativo GitLab

  1. Como usuário com acesso, abra o GitLab pelo Diretório de plugins ou por Configurações > Plugins. Selecione Instalar plugin e depois Conectar.

  2. Se o Ambiente de trabalho seguro tiver mais de um aplicativo GitLab, escolha o aplicativo correspondente a este host do GitLab Self-Managed ou GitLab Dedicated.

  3. Autorize o aplicativo OAuth do GitLab quando solicitado.

  4. Primeiro, execute uma pequena ação de leitura no ChatGPT ou Codex, como listar projetos acessíveis ou buscar uma solicitação de merge conhecida.

  5. Se as ações de gravação estiverem habilitadas, teste-as em um projeto de baixo risco e em cada produto no qual pretende usá-las antes de disponibilizá-las de forma mais ampla.

Comportamento do nome do host e do OAuth

O aplicativo usa o nome do host para obter os endpoints do GitLab. Insira apenas o host, como gitlab.example.com. Não inclua https://, um caminho de API ou repositório, uma porta nem gitlab.com. Este modelo é para o GitLab Self-Managed ou o GitLab Dedicated. Para o GitLab.com (SaaS), use o aplicativo GitLab.

Solução de problemas na configuração do aplicativo GitLab Self-Managed

  • URI de redirecionamento incompatível: confirme se a URI de redirecionamento do aplicativo OAuth do GitLab corresponde exatamente à exibida no ChatGPT.

  • O ChatGPT não consegue criar nem salvar o aplicativo de rascunho: confirme se o nome do host, a ID do aplicativo, o segredo e a URI de redirecionamento estão presentes.

  • A autenticação é bem-sucedida, mas as chamadas ao projeto falham: confirme se o usuário do GitLab que está autorizando tem acesso ao projeto e se o aplicativo OAuth tem os escopos do modelo.

  • A API retorna 403 ou informa permissões insuficientes: confirme se a conta do GitLab conectada tem as permissões necessárias no projeto ou grupo e se o aplicativo OAuth inclui os escopos obrigatórios do modelo.

  • Nenhum projeto está acessível: confirme se o usuário tem acesso ao projeto, está conectado à instância correta do GitLab e selecionou o aplicativo GitLab correto no ChatGPT ou Codex.

Documentação relacionada do GitLab

Este artigo foi útil?