Como armazenar e gerenciar registros de build

Quando você executa compilações, o Cloud Build coleta e armazena seus registros de build. Esta página explica como armazenar, visualizar e excluir registros de build.

Como escolher onde armazenar registros de versão

É possível configurar o Cloud Build para armazenar registros de compilação no Cloud Logging ou no Cloud Storage incluindo o campo logging no arquivo de configuração do Cloud Build. de dados. Se você não especificar um campo logging no arquivo de configuração de versão, o Cloud Build armazenará registros de versão no Logging e no Cloud Storage.

As etapas a seguir armazenam registros de criação somente no Logging:

  1. No arquivo de configuração de build, defina o valor de logging como CLOUD_LOGGING_ONLY:

    YAML

    steps:
    - name: 'gcr.io/cloud-builders/docker'
      args: ['build', '-t', 'gcr.io/myproject/myimage', '.']
    options:
      logging: CLOUD_LOGGING_ONLY
    

    JSON

    {
      "steps": [
      {
        "name": "gcr.io/cloud-builders/docker",
        "args": [
          "build",
          "-t",
          "gcr.io/myproject/myimage",
          "."
        ]
      }
      ],
      "options": {
        "logging": "CLOUD_LOGGING_ONLY"
      }
    }
    
  2. Use o arquivo de configuração do build para iniciar um build usando a linha de comando, a API ou os acionadores.

Como armazenar registros de build no bucket padrão criado pelo Google

Por padrão, o Cloud Build armazena os registros de build em um bucket do Cloud Storage criado pelo Google. É possível visualizar o armazenamento de registros de build no bucket do Cloud Storage criado pelo Google, mas não é possível fazer outras alterações nele. Se você precisar de controle total sobre seu bucket de registros, armazene os registros em um bucket do Cloud Storage criado pelo usuário.

Como armazenar registros de build em um bucket criado pelo usuário

Permissões do IAM:

Para armazenar registros do build no seu próprio bucket do Cloud Storage, primeiro conceda as permissões do IAM necessárias para a conta de serviço do Cloud Build ou para o serviço especificado pelo usuário. conta:

  • Se o bucket do Cloud Storage e o Cloud Build estiverem no mesmo projeto do Cloud e você estiver usando a conta de serviço do Cloud Build, sua conta de serviço do Cloud Build terá as permissões necessárias do IAM por padrão. Você não precisa conceder permissões adicionais.

  • Se o bucket do Cloud Storage e o Cloud Build estiverem no mesmo projeto do Cloud e você estiver usando uma conta de serviço especificada pelo usuário, concedaAdministrador do Storage à conta de serviço. Para instruções sobre como conceder um papel a uma conta de serviço, consulte Como conceder papéis no projeto.

  • Se o bucket do Cloud Storage e o Cloud Build estiverem em projetos diferentes do Cloud, conceda o papel Administrador do Storage à conta de serviço do Cloud Build:

    1. Abra a página do IAM:

      Abra a página do IAM

    2. Selecione o projeto em que você está executando o build usando o Cloud Build.

    3. Na tabela de permissões, localize o endereço de e-mail que termina com @cloudbuild.gserviceaccount.com e anote-o. Esta é sua conta de serviço do Cloud Build.

    4. Abra a página "IAM" no projeto em que o bucket do Cloud Storage está localizado:

      Abra a página do IAM

    5. Clique em Add (Adicionar).

    6. Digite o endereço de e-mail da conta de serviço do Cloud Build.

    7. Selecione Cloud Storage > Administrador do Storage.

    8. Clique em Save.

Para especificar um bucket do Cloud Storage para armazenar registros de builds:

  1. No projeto do Cloud, crie um bucket do Cloud Storage para armazenar os registros de build.

  2. No arquivo de configuração do build, adicione um campo logsBucket que aponte para o bucket do Cloud Storage criado para armazenar registros da build. O arquivo de configuração de build a seguir contém instruções para criar uma imagem de contêiner e armazenar os registros de build em um bucket chamado mylogsbucket:

    YAML

        steps:
        - name: 'gcr.io/cloud-builders/docker'
          args: [ 'build', '-t', 'gcr.io/myproject/myimage', '.' ]
        logsBucket: 'gs://mylogsbucket'
        options:
          logging: GCS_ONLY
    

    JSON

        {
          "steps": [
           {
             "name": "gcr.io/cloud-builders/docker",
             "args": [
               "build",
               "-t",
               "gcr.io/myproject/myimage",
               "."
             ]
           }
           ],
           "logsBucket": "gs://mylogsbucket",
           "options": {
             "logging": "GCS_ONLY"
           }
        }
    
  3. Use o arquivo de configuração do build para iniciar um build usando a linha de comando, a API ou os acionadores.

Quando o build é concluído, o Cloud Build armazena os registros no bucket do Cloud Storage especificado no arquivo de configuração de build.

Como visualizar registros de build

Permissões do IAM:

  • Se os registros do build estiverem no Logging, conceda o papel Visualizador de registros no projeto em que o build está configurado para principais que querem visualizar registros de compilação:

    1. Abra a página do IAM:

      Abrir a página do IAM

    2. Selecione o projeto e clique em Abrir.

    3. Na tabela de permissões, localize o ID de e-mail do principal e clique no ícone de lápis.

    4. Selecione o papel Logging > Visualizador de registros.

    5. Clique em Save.

  • Se os registros de build estiverem no bucket padrão do Cloud Storage criado pelo Google, conceda o papel Visualizador de projetos no projeto em que o build está configurado para principais que querem visualizá-los:

    1. Abra a página do IAM:

      Abrir a página do IAM

    2. Selecione o projeto e clique em Abrir.

    3. Na tabela de permissões, localize o ID de e-mail do principal e clique no ícone de lápis.

    4. Selecione o papel Projeto > Leitor.

    5. Clique em Save.

    Se os registros de build estiverem em um bucket do Cloud Storage especificado pelo usuário, conceda o papel Leitor de objetos do Storage aos principais que quiserem visualizá-los:

    1. Abra a página do IAM:

      Abrir a página do IAM

    2. Selecione o projeto e clique em Abrir.

    3. Na tabela de permissões, localize o ID de e-mail do principal e clique no ícone de lápis.

    4. Selecione o papel Cloud Storage > Leitor de objetos do Storage.

    5. Clique em Save.

Para ver os registros do build no Cloud Build:

Console

  1. Abra a página do Cloud Build no Console do Google Cloud.

    Abrir a página do Cloud Build

  2. Selecione o projeto e clique em Abrir.

  3. No menu suspenso Região, selecione a região da sua versão.

  4. Na página Histórico de build, clique em um build específica.

  5. Na página Detalhes do build, em Etapas, clique em Resumo do build para ver os registros de build inteiros ou clique em uma etapa do build para ver registros de build dessa etapa.

    Captura de tela dos registros de build na página "Detalhes do build"

  6. Se os registros forem armazenados no Logging, no painel Registro do build, clique no ícone para visualizar os registros no Explorador de registros.

    Captura de tela dos registros de build no Explorador de registros

gcloud

Execute o comando gcloud builds log, em que build-id é o ID da versão para que você quer receber registros de versão. O ID do build é exibido no final do processo de envio da build quando você executa gcloud builds submit ou na coluna "ID" quando você executa gcloud builds list.

gcloud builds log build-id

Para ver os registros de versão no GitHub e no GitHub Enterprise:

Se você criar um gatilho do GitHub ou do GitHub Enterprise e especificar --include-logs-with-status como uma opção, será possível ver seus registros de versão no GitHub e no GitHub Enterprise.

Para ver os registros de versão no GitHub e no GitHub Enterprise:

  1. Navegue até o repositório associado ao gatilho.

  2. Navegue até a lista de confirmações.

  3. Localize a linha da confirmação que você quer ver os registros do build.

  4. Clique no ícone de resultado na linha da confirmação.

    Você verá uma lista de verificações associadas à confirmação.

  5. Clique em Detalhes na linha em que você quer ver os registros do build.

    Você verá a página Summary associada à confirmação. Se você criou um gatilho usando a sinalização --include-logs-with-status, verá seus registros de compilação na seção Detalhes da página.

Como excluir registros de build

Não é possível excluir os registros de build no bucket de registros criado pelo Google.

Para excluir os registros da build em um bucket de registros criado pelo usuário:

  1. Conceda o papel Administrador de objetos do Storage ao usuário ou à conta de serviço que exclua os registros.

  2. Exclua os registros de build seguindo as instruções para excluir objetos do Cloud Storage em Como excluir objetos.

Para excluir o bucket de registros criados pelo usuário:

  1. Conceda o papel Administrador do Storage ao usuário ou à conta de serviço excluindo o bucket de registros.

  2. Exclua o bucket de registros usando as instruções para excluir um bucket em Como excluir buckets.

A seguir