Implantação contínua com o Git usando o Cloud Build

É possível usar o Cloud Build para automatizar builds e implantações no Cloud Run for Anthos no Google Cloud usando gatilhos de compilação do Cloud Build para criar e implantar automaticamente o código sempre que novas confirmações forem enviadas para uma determinada ramificação de um repositório Git.

Quando você usa um gatilho de compilação do Cloud Build para criar contêineres, as informações do repositório de origem são exibidas no Console do Cloud após a implantação no Cloud Run for Anthos.

Antes de começar

  • Você tem um repositório git com um Dockerfile ou a base do código é escrita em uma das linguagens compatíveis com o Google Cloud Buildpacks: Go, Node.js, Python, Java ou .NET Core.
  • Ative as APIs Cloud Build e Cloud Source Repositories .

    Ative as APIs

Como configurar a implantação contínua da interface do usuário do Cloud Run for Anthos

O procedimento varia um pouco dependendo se você está configurando a implantação contínua em um novo serviço ou em um serviço existente. Clique na guia apropriada para saber mais.

Novo serviço

  1. Acessar o Cloud Run for Anthos

  2. Clique em Criar serviço.

  3. Preencha as Configurações do serviço com suas preferências.

  4. Clique em Next.

  5. Selecione Implantar continuamente novas revisões de um repositório de código-fonte.

    Configurar com o Cloud Build

  6. Clique em Configurar com o Cloud Build.

  7. Selecione o provedor e o repositório.

    • GitHub: se você ainda não estiver autenticado, clique em Autenticar e siga as instruções. Por padrão, a conexão de um repositório é feita usando o app do GitHub para o Cloud Build. Como alternativa, é possível espelhar o repositório do GitHub no Cloud Source Repositories. Para fazer isso, clique em Opções avançadas e marque Espelhar repositório do GitHub usando o Cloud Source Repositories. Saiba mais.
    • Bitbucket: se você ainda não estiver autenticado, clique em Autenticar e siga as instruções.
    • Cloud Source Repositories

    Configurar a etapa 1 da implantação contínua

  8. Clique em Next.

  9. Preencha as opções na etapa "Configuração do build":

    • Ramificação: indica qual código-fonte precisa ser usado ao executar o gatilho. É possível colocar regex aqui. As ramificações correspondidas são verificadas automaticamente e podem ser vistas abaixo da entrada. Se houver correspondência exata de uma ramificação, o gatilho será executado automaticamente após a criação.
    • Tipo de build

      • Se o repositório precisar ser criado com o Docker e ele contiver um Dockerfile, selecione Dockerfile. Local de origem: indica o local e o nome do Dockerfile. O diretório será usado como o contexto de build do Docker. Todos os caminhos precisam estar relacionados ao diretório atual.

      • Caso contrário, selecione Google Cloud Buildpacks. Use o contexto de Buildpack para especificar o diretório e o Ponto de entrada (opcional) para fornecer o comando que inicia o servidor. Por exemplo: gunicorn -p :8080 main:app para Python, java -jar target/myjar.jar para Java. Deixe em branco para usar o comportamento padrão.

    Configurar a etapa 2 da implantação contínua

  10. Clique em Save.

  11. Verifique as configurações selecionadas.

    Configurar a verificação da implantação contínua

  12. Clique em Criar

  13. Você será redirecionado para a página Detalhes do serviço, em que poderá acompanhar o progresso da configuração da implantação contínua.

  14. Quando todas as etapas forem concluídas, observe as opções adicionais:

    • Botão "Editar implantação contínua".
    • Histórico de builds.
    • Detalhes do código-fonte na seção Detalhes da revisão.

Serviço existente

  1. Acessar o Cloud Run for Anthos

  2. Na lista, localize e clique no serviço.

  3. Clique em Configurar implantação contínua.

  4. Selecione o provedor e o repositório.

    • GitHub: se você ainda não estiver autenticado, clique em Autenticar e siga as instruções. Por padrão, a conexão de um repositório é feita usando o app do GitHub para o Cloud Build. Como alternativa, é possível espelhar o repositório do GitHub no Cloud Source Repositories. Para fazer isso, clique em Opções avançadas e marque Espelhar repositório do GitHub usando o Cloud Source Repositories. Saiba mais.
    • Bitbucket: se você ainda não estiver autenticado, clique em Autenticar e siga as instruções.
    • Cloud Source Repositories

    Configurar a etapa 1 da implantação contínua

  5. Clique em Next.

  6. Preencha as opções na etapa "Configuração do build":

    • Ramificação: indica qual código-fonte precisa ser usado ao executar o gatilho. É possível colocar regex aqui. As ramificações correspondidas são verificadas automaticamente e podem ser vistas abaixo da entrada. Se houver correspondência exata de uma ramificação, o gatilho será executado automaticamente após a criação.
    • Tipo de build

      • Se o repositório precisar ser criado com o Docker e ele contiver um Dockerfile, selecione Dockerfile. Local de origem: indica o local e o nome do Dockerfile. O diretório será usado como o contexto de build do Docker. Todos os caminhos precisam estar relacionados ao diretório atual.

      • Caso contrário, selecione Google Cloud Buildpacks. Use o contexto de Buildpack para especificar o diretório e o Ponto de entrada (opcional) para fornecer o comando que inicia o servidor. Por exemplo: gunicorn -p :8080 main:app para Python, java -jar target/myjar.jar para Java. Deixe em branco para usar o comportamento padrão.

    Configurar a etapa 2 da implantação contínua

  7. Clique em Save.

  8. A página é recarregada e exibe o progresso da configuração da implantação contínua.

  9. Quando todas as etapas forem concluídas, observe as opções adicionais:

    • Botão "Editar implantação contínua".
    • Histórico de builds.
    • Detalhes do código-fonte na seção Detalhes da revisão.

Como configurar manualmente a implantação contínua

Veja Como configurar manualmente a implantação contínua se precisar usar um procedimento manual em vez da IU.

Anexar o gatilho de compilação existente do Cloud Build ao serviço do Cloud Run for Anthos.

Se você já tiver um gatilho do Cloud Build, poderá anexá-lo ao serviço e aproveitar os recursos do Console do Cloud na página "Detalhes do serviço" (botão Editar implantação contínua e gráfico Histórico de builds).

Para isso, você precisa adicionar um rótulo com gcb-trigger-id como chave e o identificador exclusivo do gatilho do Cloud Build como valor, e não o nome dele. Veja as instruções para configurar o rótulo.