Conectar ao Bitbucket Cloud

Nesta página, descrevemos como criar conexões com o Bitbucket Cloud e links para repositórios do Bitbucket Cloud. Você pode concluir essas tarefas usando o console Google Cloud ou a Google Cloud CLI.

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 Bitbucket Cloud com o Google. Especificamente, é possível usar repositórios do Bitbucket Cloud com o Gemini Code Assist.

Para saber mais sobre o Developer Connect, consulte Visão geral do Developer Connect.

Antes de começar

  1. Faça login na sua Conta do Google.

    Se você ainda não tiver uma, inscreva-se agora.

  2. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Developer Connect, Secret Manager APIs.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the APIs

  5. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Developer Connect, Secret Manager APIs.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the APIs

  8. Verifique se você tem acesso a uma conta no Bitbucket Cloud.

    Para ajudar a manter o trabalho da sua equipe seguro, recomendamos que você conclua as tarefas deste guia usando uma conta de bot ou uma conta compartilhada pela equipe, e não uma conta pessoal.

  9. Verifique se você tem um repositório do Bitbucket Cloud ou permissões de administrador em um repositório compartilhado.
  10. Opcional: crie uma chave de criptografia gerenciada pelo cliente (CMEK) para criptografar os secrets de autenticação criados pelo Developer Connect.
  11. Opcional: para usar as instruções de linha de comando deste guia, conclua as etapas a seguir:
    1. Instale a CLI do Google Cloud. Se você já instalou a CLI gcloud, verifique se tem a versão mais recente disponível executando gcloud components update.
    2. 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
              

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:

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 pessoal no Bitbucket Cloud, siga estas etapas:

  1. Faça login no Bitbucket Cloud.

  2. Siga estas etapas para criar dois tokens de acesso no Bitbucket Cloud. Eles podem ser tokens de acesso ao repositório, tokens de acesso ao projeto ou tokens de acesso ao espaço de trabalho.

    1. Escolha as instruções para o tipo de token de acesso que você vai usar:

    2. Crie o primeiro token com os seguintes escopos:

      • Repositórios: read.
      • Solicitações de envio: leitura.
      • Webhooks: leitura e gravação.

      No Developer Connect, isso é chamado de token de acesso do autorizador.

    3. Crie o segundo token com o seguinte escopo:

      • Repositórios: read.

      No Developer Connect, ele é chamado de token de acesso de leitura.

    Você é responsável por gerenciar os tempos de vida dos tokens no Bitbucket Cloud. Os tokens do Bitbucket Cloud não têm validade e permanecem válidos até serem revogados.

    Alguns tipos de tokens do Bitbucket são recursos premium disponíveis exclusivamente em planos pagos. Para mais informações, consulte Tokens do Bitbucket Cloud.

  3. Copie os tokens de acesso para usar nos procedimentos a seguir.

Crie uma conexão

Esta seção descreve como criar uma conexão entre o Developer Connect e o Bitbucket Cloud. Se você estiver usando o console Google Cloud , também poderá começar a adicionar links a repositórios ao concluir a configuração da conexão.

Para criar uma conexão do Bitbucket Cloud, selecione uma das seguintes opções:

Console

Para iniciar uma conexão, siga estas etapas:

  1. No console do Google Cloud , abra o Developer Connect.

    Acessar 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 Bitbucket Cloud.
    • Se uma tabela com as conexões atuais aparecer: clique em Criar conexão > Bitbucket Cloud para definir o provedor de gerenciamento de código-fonte.

      A página Criar conexão é aberta.

  2. Em Região, escolha uma região para os recursos de conexão.

    1. Em Nome, insira um nome para a nova conexão.
  3. Em Workspace, insira seu ID do espaço de trabalho do Bitbucket Cloud.

  4. Na seção Tokens de acesso, insira seus tokens de acesso do Bitbucket Cloud:

  5. Clique em Mostrar mais para ver as configurações opcionais.

    1. Opcional: na seção Criptografia, selecione uma chave CMEK para criptografar os secrets do Secret Manager criados pelo Developer Connect.

    2. Opcional: por padrão, o Developer Connect pode funcionar como um proxy para chamadas do Git no Bitbucket Cloud. Para desativar essa opção, desmarque a caixa de seleção Ativar o proxy do Developer Connect.

  6. Para concluir a configuração da conexão, clique no botão Continuar.

    O Developer Connect cria sua conexão. Esse processo pode levar alguns segundos.

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:

  1. Na lista de repositórios disponíveis, selecione os que você quer usar.

  2. Clique em OK.

  3. 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

  1. Crie um secret de webhook no Secret Manager executando o comando a seguir, em que WEBHOOK_SECRET_NAME é um nome para o secret de webhook:

    cat /proc/sys/kernel/random/uuid | tr -d '\n' | gcloud secrets create WEBHOOK_SECRET_NAME
    
  2. Armazene seus tokens de acesso pessoal no Secret Manager executando os seguintes comandos:

    gcloud secrets create AUTHORIZER_SECRET_NAME
    
    echo -n AUTHORIZER_SECRET_DATA | gcloud secrets versions add AUTHORIZER_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:

    • AUTHORIZER_SECRET_NAME: um nome para o secret em que o Secret Manager armazena seu token de acesso do autorizador.
    • AUTHORIZER_SECRET_DATA: seu token de acesso do autorizador.
    • READ_SECRET_NAME: um nome para o secret em que o Secret Manager armazena seu token de acesso de leitura.
    • READ_SECRET_DATA: seu token de acesso de leitura.
  3. Execute o comando gcloud developer-connect connections create para criar uma conexão com o Bitbucket Cloud:

    gcloud developer-connect connections create CONNECTION_NAME \
        --location=REGION \
        --bitbucket-cloud-config-authorizer-credential-user-token-secret-version=projects/PROJECT_ID/secrets/AUTHORIZER_SECRET_NAME/versions/VERSION \
        --bitbucket-cloud-config-read-authorizer-credential-user-token-secret-version=projects/PROJECT_ID/secrets/READ_SECRET_NAME/versions/VERSION \
        --bitbucket-cloud-config-webhook-secret-version=projects/PROJECT_ID/secrets/WEBHOOK_SECRET_NAME/versions/VERSION \
        --git-proxy-config-enabled
    

    Substitua:

    • CONNECTION_NAME: um nome para a conexão.
    • REGION: a região a ser usada para sua conexão.
    • PROJECT_ID: o Google Cloud ID do projeto.
    • AUTHORIZER_SECRET_NAME: o nome do secret do Secret Manager que contém seu token no nível do autorizador do Bitbucket Cloud.
    • READ_SECRET_NAME: o nome do secret do Secret Manager que contém seu token somente leitura do Bitbucket Cloud.
    • 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 latest para usar o número da versão mais recente.
    • --git-proxy-config-enabled: uma flag opcional que permite que o Developer Connect atue como um proxy para chamadas do Git ao Bitbucket Cloud. Essa capacidade está em pré-lançamento.

    O Developer Connect conclui a conexão com o Bitbucket Cloud. Em seguida, vincule aos repositórios.

Depois de estabelecer uma conexão com o Bitbucket Cloud, é 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 Bitbucket Cloud, selecione uma das seguintes opções:

Console

Para criar links para repositórios, siga estas etapas:

  1. Abra a página Repositórios no console do Google Cloud .

    Abra a página Repositórios

  2. Clique em Vincular repositório.

    O painel Vincular repositórios Git é aberto.

  3. Na lista de conexões, escolha uma.

  4. Clique em Continuar.

  5. Na lista de repositórios, selecione os que você quer vincular.

    O Developer Connect mostra nomes sugeridos para os recursos do repositório.

  6. Selecione uma opção de nomenclatura de recurso do repositório:

    • Gerado: use os nomes de recursos de repositório gerados.
    • Manual: insira os nomes que quiser.
  7. Clique em Criar.

    O Developer Connect cria os links do repositório e os mostra no console Google Cloud .

gcloud

Crie um link para seu repositório do Bitbucket Cloud 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: um nome para o novo link entre o Developer Connect e seu repositório do Bitbucket Cloud.
  • REPO_URI: o URL do seu repositório no Bitbucket Cloud, incluindo o prefixo https:// e o sufixo .git.
  • CONNECTION_NAME: o nome da sua conexão com o Bitbucket Cloud.
  • 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-linkslist.

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