Estas instruções são destinadas a desenvolvedores de aplicativos, administradores de plataforma e gerentes de segurança que querem usar repositórios de código-fonte do GitLab com o Google. Especificamente, você pode usar repositórios do GitLab com o Gemini Code Assist.
Para saber mais sobre o Developer Connect, consulte a Visão geral do Developer Connect.
Antes de começar
-
Faça login na sua Conta do Google.
Se você ainda não tiver uma, inscreva-se agora.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Developer Connect API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Developer Connect API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Confira se você tem acesso a uma conta no GitLab.
Para ajudar a manter o trabalho da sua equipe seguro, recomendamos que você conclua as tarefas neste guia usando uma conta de serviço ou uma conta compartilhada pela equipe, não uma conta pessoal.
- Verifique se você tem um repositório do GitLab ou permissões de administrador em um repositório compartilhado.
- Opcional: crie uma chave de criptografia gerenciada pelo cliente (CMEK) para criptografar os secrets de autenticação criados pelo Developer Connect.
- Opcional: para usar as instruções de linha de comando deste guia, siga estas etapas:
- Instale a CLI do Google Cloud. Se você já instalou a CLI gcloud anteriormente, verifique se tem a versão mais recente disponível executando
gcloud components update. - Crie uma conta de serviço do Developer Connect
executando o seguinte comando, em que PROJECT_ID é o Google Cloud ID do projeto:
gcloud beta services identity create \ --service=developerconnect.googleapis.com \ --project=PROJECT_ID
- Instale a CLI do Google Cloud. Se você já instalou a CLI gcloud anteriormente, verifique se tem a versão mais recente disponível executando
Ao ativar o Developer Connect, você também ativa a API Secret Manager.
Funções exigidas
Para receber as permissões necessárias para criar conexões e links, peça ao administrador que conceda a você os seguintes papéis do IAM:
-
Se você não for o proprietário do projeto:
Administrador do Developer Connect (
roles/developerconnect.admin) na sua conta de usuário. -
Se você planeja usar uma CMEK para criptografar os secrets criados pelo Developer Connect:
Criptografador/descriptografador de CryptoKey do Cloud KMS (
roles/cloudkms.cryptoKeyEncrypterDecrypter) na conta de serviço do Secret Manager. -
Se você planeja usar a CLI gcloud para concluir as etapas deste guia:
Papel de administrador do Secret Manager (
roles/secretmanager.admin) na conta de serviço do Developer Connect. -
Se você planeja usar o console do Google Cloud para concluir as etapas deste guia:
Administrador do IAM do projeto (
roles/resourcemanager.projectIamAdmin) na sua conta de usuário.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.
Criar tokens de acesso
Para criar tokens de acesso no GitLab, siga estas etapas:
Siga as instruções na documentação do GitLab para criar tokens de acesso pessoal, tokens de acesso a grupos ou tokens de acesso a projetos com as seguintes permissões:
- Um token com escopo
apipara conectar e desconectar repositórios. - Um token com escopo
read_apipara permitir que o Developer Connect leia o código-fonte nos seus repositórios. - Para tokens de acesso de grupo e de projeto, eles precisam ter uma função de mantenedor ou superior.
- Um token com escopo
Crie uma conexão
Nesta seção, descrevemos como criar uma conexão entre o Developer Connect e o GitLab. Se você estiver usando o console do Google Cloud , também poderá começar a adicionar links a repositórios ao terminar de configurar sua conexão.
Para criar uma conexão do GitLab, selecione uma das seguintes opções:
Console
Para iniciar uma conexão, siga estas etapas:
No console do Google Cloud , abra o Developer Connect.
O Developer Connect mostra a página Repositórios Git.
- Se uma lista de provedores de gerenciamento de código-fonte aparecer:comece a configurar sua primeira conexão selecionando um provedor de gerenciamento de código-fonte. Clique em Conectar no card do GitLab.
Se uma tabela com as conexões atuais aparecer: clique em Criar conexão > GitLab para definir o provedor de gerenciamento de código-fonte.
A página Criar conexão é aberta.
Em Região, escolha uma região para os recursos de conexão.
- Em Nome, insira um nome para a nova conexão.
Na seção Tokens de acesso, insira os tokens da sua conta:
- Token de acesso à API: insira o token de acesso com o escopo
api. - Ler token de acesso à API: insira o token de acesso com o escopo
read_api.
Você é responsável por garantir que seus tokens do GitLab permaneçam válidos. Os tokens do GitLab têm uma vida útil máxima de 365 dias, a menos que especificado de outra forma pelo criador do token ou por um administrador. Para saber como gerenciar as configurações e notificações de expiração de token, consulte a documentação do GitLab sobre tokens de acesso pessoal, tokens de acesso a grupos e tokens de acesso a projetos.
- Token de acesso à API: insira o token de acesso com o escopo
Clique em Mostrar mais para conferir as configurações opcionais.
Opcional: na seção Criptografia, selecione uma chave CMEK para criptografar os secrets do Secret Manager que o Developer Connect cria.
Opcional: por padrão, o Developer Connect pode funcionar como um proxy para chamadas do Git no GitLab. Para desativar essa opção, desmarque a caixa de seleção Ativar o proxy do Developer Connect.
Clique em Continuar.
Depois que a conexão é criada, a página Vincular repositórios aparece.
Conclua as etapas a seguir para vincular repositórios à sua conexão:
Na lista de repositórios disponíveis, selecione os que você quer usar.
Clique em OK.
Clique em Vincular.
Sua conexão é adicionada à página Conexões, e os links do repositório são adicionados à página Repositórios no console do Google Cloud . Você pode adicionar mais links às conexões atuais a qualquer momento.
Se você estiver configurando o Gemini Code Assist, siga as etapas em Configurar e usar a personalização de código do Gemini Code Assist.
gcloud
Crie um secret do webhook no Secret Manager executando o comando a seguir, em que WEBHOOK_SECRET_NAME é um nome para o secret do webhook:
cat /proc/sys/kernel/random/uuid | tr -d '\n' | gcloud secrets create WEBHOOK_SECRET_NAMEArmazene seus tokens de acesso no Secret Manager executando os seguintes comandos:
gcloud secrets create API_SECRET_NAME echo -n API_SECRET_DATA | gcloud secrets versions add API_SECRET_NAME --data-file=- gcloud secrets create READ_SECRET_NAME echo -n READ_SECRET_DATA | gcloud secrets versions add READ_SECRET_NAME --data-file=-Substitua:
- API_SECRET_NAME: um nome para o secret que armazena
o token com escopo
api. - API_SECRET_DATA: o token com escopo
api, semelhante aglpat-XXXXXXXXXXXXXXXX. - READ_SECRET_NAME: um nome para o secret que armazena
o token com escopo
read_api. - READ_SECRET_DATA: o token com escopo
read_api, semelhante aglpat-XXXXXXXXXXXXXXXX.
- API_SECRET_NAME: um nome para o secret que armazena
o token com escopo
Inicie uma conexão com sua conta do GitLab executando o comando
developer-connect connections create:gcloud developer-connect connections create CONNECTION_NAME \ --location=REGION \ --gitlab-config-authorizer-credential-user-token-secret-version=projects/PROJECT_ID/secrets/API_SECRET_NAME/versions/VERSION \ --gitlab-config-read-authorizer-credential-user-token-secret-version=projects/PROJECT_ID/secrets/READ_SECRET_NAME/versions/VERSION \ --gitlab-config-webhook-secret-version=projects/PROJECT_ID/secrets/WEBHOOK_SECRET_NAME/versions/VERSION --git-proxy-config-enabledSubstitua:
- CONNECTION_NAME: um nome para a conexão.
- REGION: a região da sua conexão.
- PROJECT_NAME: o Google Cloud ID do projeto.
- API_SECRET_NAME: o nome do secret do
Secret Manager que contém o token
com escopo
api. - READ_SECRET_NAME: o nome do secret do
Secret Manager que contém o token
com escopo
read_api. - WEBHOOK_SECRET_NAME: o nome do secret do Secret Manager que contém o secret do webhook.
- VERSION: o número da versão de cada secret. Isso
pode ser
latestpara usar o número da versão mais recente. --git-proxy-config-enabled: uma flag opcional que permite que o Developer Connect funcione como um proxy para chamadas do Git ao GitLab. Essa capacidade está em pré-lançamento.
O Developer Connect conclui a conexão com o GitLab. Em seguida, vincule aos repositórios.
Vincular repositórios usando uma conexão atual
Depois de estabelecer uma conexão com o GitLab, é possível vincular repositórios. Você pode repetir essas etapas mais tarde para vincular outros repositórios, se necessário.
Para criar links de repositório em uma conexão do GitLab, selecione uma das seguintes opções:
Console
Para criar links para repositórios, siga estas etapas:
Abra a página Repositórios no console do Google Cloud .
Clique em Vincular repositório.
O painel Vincular repositórios Git é aberto.
Na lista de conexões, escolha uma.
Clique em Continuar.
Na lista de repositórios, selecione aqueles que você quer vincular.
O Developer Connect mostra nomes sugeridos para os recursos do seu repositório.
Selecione uma opção de nomenclatura de recursos do repositório:
- Gerado: use os nomes de recursos de repositório gerados.
- Manual: insira os nomes que quiser.
Clique em Criar.
O Developer Connect cria os links do repositório e os mostra no console Google Cloud .
gcloud
Vincule a um repositório do GitLab executando o seguinte comando:
gcloud developer-connect connections git-repository-links create REPO_NAME \
--clone-uri=REPO_URI \
--connection=CONNECTION_NAME \
--location=REGION
Substitua:
- REPO_NAME: o nome do link do repositório.
- REPO_URI: o link para seu repositório, semelhante
a
https://gitlab.com/my-project/test-repo.git. - CONNECTION_NAME: o nome da conexão.
- REGION: a região da sua conexão.
O Developer Connect cria os links do repositório.
Para listar os repositórios vinculados, execute o comando
developer-connect connections git-repository-links list.
Se você estiver configurando o Gemini Code Assist, siga as etapas em Configurar e usar a personalização de código do Gemini Code Assist.
A seguir
- Conclua a configuração da personalização de código do Gemini Code Assist.
- Saiba como o Gemini Code Assist ajuda você a acelerar o desenvolvimento de software.
- Conheça outras integrações disponíveis no Developer Connect.