Nesta página, explicamos como conferir informações sobre seus builds do Cloud Build
usando o console Google Cloud , a ferramenta de linha de comando gcloud e a
API Cloud Build.
Antes de começar
Para usar os exemplos de linha de comando deste guia, instale a ferramenta de linha de comando gcloud.
Ver resultados do build
Para ver os registros de criação, os principais exigem um dos seguintes papéis de IAM, além das permissões de IAM do Cloud Build:
Se os registros do build estiverem no bucket padrão do Cloud Storage, conceda o papel Projeto > Leitor.
Se os registros do build estiverem em um bucket do Cloud Storage especificado pelo usuário, conceda o papel Leitor de objetos do Storage.
Para mais informações sobre as permissões necessárias para visualizar os registros de build no Cloud Build ou no GitHub ou GitHub Enterprise após a criação do gatilho, consulte Como visualizar registros de build.
Console
No Google Cloud console, o menu Histórico de build mostra informações sobre o status de uma build (como sucesso ou falha), a origem, os resultados, o tempo de criação, as imagens e muito mais.
Para acessar o menu Histórico de builds, abra a página Histórico de builds no console Google Cloud :
Abrir a página "Histórico de criações"
É exibida a página Histórico de criações, que mostra uma lista das suas versões recentes.
É possível filtrar builds usando o campo Filtrar ou inserindo uma consulta.
Para ver mais colunas, como Descrição do gatilho e Artefatos, use o seletor de coluna .
Para conferir detalhes sobre um build específico, acesse o Histórico de build e clique em um build especificado. A página Detalhes de build é exibida com o Resumo de build para o build. O Resumo da build inclui os seguintes dados:
- Registro da build: o registro da sua build.
- Detalhes da execução: os detalhes do build, incluindo as variáveis de ambiente e substituições.
- Build dependencies: se o build tiver uma ou mais dependências, essa guia vai mostrar informações sobre dependências, como URL e revisão do repositório.
- Artefatos do build: os artefatos do build, como imagens de contêiner, registros do build ou binários.
Para conferir o registro de build ou os detalhes da execução específicos de uma etapa de build, selecione a etapa na tabela Etapas à esquerda.
gcloud
O comando gcloud builds list exibe todos os builds.
Para ver suas builds, execute este comando:
gcloud builds list
O resultado será semelhante a este:
ID CREATE_TIME DURATION SOURCE IMAGES STATUS
3a2055bc-ccbd-4101-9434-d376b88b8940 2018-02-16T18:33:26+00:00 23S gs://gcb-docs-project_cloudbuild/source/1518806004.25-db1e250a7b7f496eb8242bfee5ac308e.tgz us-east1-docker.pkg.dev/gcb-docs-project/quickstart-image (+1 more) SUCCESS
900704ca-7a0c-4569-ac08-884593c19aac 2018-02-16T18:32:32+00:00 gs://gcb-docs-project_cloudbuild/source/1518805951.23-03dd53d16f684c568fa2bb7ff7ebda06.tgz - FAILURE
021f9ede-ddaa-4cfb-8988-60142b015ebd 2018-02-14T15:48:44+00:00 10S gs://gcb-docs-project_cloudbuild/source/1518623322.56-9cd088ffc1e04f5aa6040728772d0c2a.tgz - SUCCESS
8126d538-3c43-4304-a14c-33aceec8cb97 2018-02-14T15:46:13+00:00 10S gs://gcb-docs-project_cloudbuild/source/1518623172.09-327c02585a4e44e782ac97dd80d5a5d5.tgz us-east1-docker.pkg.dev/gcb-docs-project/quickstart-image (+1 more) SUCCESS
Para exibir detalhes de uma criação específica, execute o seguinte comando:
gcloud builds describe [BUILD_ID]
em que [BUILD_ID] é o ID da criação de que você quer detalhes.
O resultado será semelhante a este:
createTime: '2018-02-22T14:49:54.066666971Z'
finishTime: '2018-02-22T14:50:05.463758Z'
id: bcdb9c48-d92c-4489-a3cb-08d0f0795a0b
images:
- us-east1-docker.pkg.dev/gcb-docs-project/quickstart-image
logUrl: https://console.cloud.google.com/cloud-build/builds/bcdb9c48-d92c-4489-a3cb-08d0f0795a0b?project=gcb-docs-project
logsBucket: gs://404889597380.cloudbuild-logs.googleusercontent.com
projectId: gcb-docs-project
results:
buildStepImages:
- sha256:a4363bc75a406c4f8c569b12acdd86ebcf18b6004b4f163e8e6293171462a79d
images:
- digest: sha256:1b2a237e74589167e4a54a8824f0d03d9f66d3c7d9cd172b36daa5ac42e94eb9
name: us-east1-docker.pkg.dev/gcb-docs-project/quickstart-image
pushTiming:
endTime: '2018-02-22T14:50:04.731919081Z'
startTime: '2018-02-22T14:50:00.874058710Z'
- digest: sha256:1b2a237e74589167e4a54a8824f0d03d9f66d3c7d9cd172b36daa5ac42e94eb9
name: us-east1-docker.pkg.dev/gcb-docs-project/quickstart-image:latest
pushTiming:
endTime: '2018-02-22T14:50:04.731919081Z'
startTime: '2018-02-22T14:50:00.874058710Z'
source:
storageSource:
bucket: gcb-docs-project_cloudbuild
generation: '1519310993665963'
object: source/1519310992.2-8465b08c79e14e89bee09adc8203c163.tgz
sourceProvenance:
fileHashes:
gs://gcb-docs-project_cloudbuild/source/1519310992.2-8465b08c79e14e89bee09adc8203c163.tgz#1519310993665963:
fileHash:
- value: -aRYrWp2mtfKhHSyWn6KNQ==
resolvedStorageSource:
bucket: gcb-docs-project_cloudbuild
generation: '1519310993665963'
object: source/1519310992.2-8465b08c79e14e89bee09adc8203c163.tgz
startTime: '2018-02-22T14:49:54.966308841Z'
status: SUCCESS
steps:
- args:
- build
- --no-cache
- -t
- us-east1-docker.pkg.dev/gcb-docs-project/quickstart-image
- .
name: gcr.io/cloud-builders/docker
status: SUCCESS
timing:
endTime: '2018-02-22T14:50:00.813257422Z'
startTime: '2018-02-22T14:50:00.102600442Z'
timeout: 600s
timing:
BUILD:
endTime: '2018-02-22T14:50:00.873604173Z'
startTime: '2018-02-22T14:50:00.102589403Z'
FETCHSOURCE:
endTime: '2018-02-22T14:50:00.087286880Z'
startTime: '2018-02-22T14:49:56.962717504Z'
PUSH:
endTime: '2018-02-22T14:50:04.731958202Z'
startTime: '2018-02-22T14:50:00.874057159Z'
Status da etapa e da criação
Depois que uma criação for concluída, o Cloud Build fornecerá um conjunto status para a criação e status para cada etapa da criação individual.
A tabela a seguir resume os status quando uma versão ou etapa é bem-sucedida, atinge o tempo limite ou falha:
| Evento | Status da criação | Status da etapa |
|---|---|---|
| Build bem-sucedida | SUCCESS |
Todas as etapas estão marcadas como SUCCESS. |
| O build é bem-sucedido com etapas com falhas permitidas | SUCCESS |
|
| Falha na build | FAILURE |
|
| A build é cancelada pelo usuário | CANCELLED |
|
| A build atingiu o tempo limite | TIMEOUT |
|
| A etapa atinge o tempo limite | FAILED |
|
Para ver o status por etapa e de criação, execute o comando gcloud builds describe:
gcloud builds describe <var>BUILD_ID</var>
em que BUILD_ID é o ID do build.
O snippet a seguir mostra o status por etapa de uma criação com uma etapa com tempo limite atingido:
status: FAILURE
steps:
- args:
- sleep
- '60'
id: long sleep
name: alpine
status: CANCELLED
timing:
endTime: '2018-02-26T14:09:18.531368493Z'
startTime: '2018-02-26T14:09:11.023235026Z'
waitFor:
- '-'
- args:
- sleep
- '3'
id: shorty
name: alpine
status: SUCCESS
timeout: 60s
timing:
endTime: '2018-02-26T14:09:15.497724138Z'
startTime: '2018-02-26T14:09:11.023676903Z'
waitFor:
- '-'
- args:
- sleep
- '60'
name: alpine
status: TIMEOUT
timeout: 3s
timing:
endTime: '2018-02-26T14:09:18.527488475Z'
startTime: '2018-02-26T14:09:15.497736775Z'
waitFor:
- shorty
- args:
- 'false'
name: alpine
status: QUEUED
waitFor:
- long sleep
timeout: 60s
Filtrar resultados de build usando consultas
Para encontrar informações sobre builds que atendem a critérios específicos, insira uma string de consulta
no campo Filtrar builds na página Histórico de build no
Google Cloud console. Por exemplo, é possível consultar builds que falharam (que
têm um valor FAILURE no campo de status), builds que foram criadas após um
determinado período, builds com tags e outras condições.
Campos compatíveis para consultas
É possível consultar builds com base nos valores dos seguintes campos:
statusbuild_idtrigger_idsource.storage_source.bucketsource.storage_source.objectsource.repo_source.repo_namesource.repo_source.branch_namesource.repo_source.tag_namesource.repo_source.commit_shasource_provenance.resolved_repo_source.commit_sharesults.images.nameresults.images.digestoptions.requested_verify_optiontagsimagescreate_timestart_timefinish_time
Os campos listados com uma notação de ponto (.) são subcampos.
Como criar uma string de consulta
Strings de consulta usam o formato geral:
field="value"
Use o ponto para especificar um subcampo, como results.images.name. As consultas são compatíveis com os operadores de comparação = e != e também com >, >=, < e <= para campos com valores numéricos (como create_time).
Para criar consultas compostas, use as expressões booleanas AND e OR.
Exemplos de consultas comuns
Para consultar todas as criações bem-sucedidas:
status="SUCCESS"
Para consultar todas as criações ainda não concluídas:
status="QUEUED" OR status="WORKING"
Para consultar as criações com um nome de imagem resultante específico:
(status="SUCCESS" OR status="FAILURE") AND \
results.images.name="us-east1-docker.pkg.dev/my-project/my-image"
Para consultar todas as criações com a tag "prod":
tags="prod"
Para consultar as criações marcadas como verificadas:
options.requested_verify_option="VERIFIED"
Para consultar as criações provenientes de uma fonte do Cloud Storage (em oposição a um Cloud Source Repository):
source.storage_source.bucket!=""
Para consultar as criações com um resumo resultante específico:
results.images.digest="sha256:6c7147fe4c813845ac2a9aa6f937bb272b68784f647c4f64c7325723c7245c88"
Para consultar as criações iniciadas depois de um período específico e concluídas antes de um período específico (fuso horário UTC):
create_time>"2016-10-12T18:43:49+00:00" AND finish_time<"2016-10-13T18:43:49+00:00"
Filtrar resultados de build usando tags
Use tags nos arquivos de configuração para organizar builds
em grupos e filtrá-los. Também é possível especificar strings em tags, como "prod" ou "test".
As tags têm as seguintes limitações:
- O limite de caracteres de cada tag é de 128 caracteres.
- É possível definir um máximo de 64 tags por criação.
- As tags podem conter letras, números e sublinhados em qualquer posição da string.
- As tags podem conter pontos e hifens em qualquer posição, exceto na primeira posição da string.
Para adicionar tags à build:
No arquivo de configuração de build, adicione o campo
tags:steps: - name: 'gcr.io/cloud-builders/docker' args: [ 'build', '-t', 'us-east1-docker.pkg.dev/$PROJECT_ID/cb-demo-img', '.' ] images: - 'us-east1-docker.pkg.dev/$PROJECT_ID/cb-demo-img' tags: - 'test1' - 'test2'Para ver builds com tags no seu cluster, use a opção
--filteremgcloud builds list. É possível filtrar os builds especificando uma ou várias tags.Para filtrar os builds por uma única tag, especifique a tag como uma string no campo
tags. O comando a seguir lista todos as builds marcadas com a tag'test1':gcloud builds list --filter "tags='test1'"Para filtrar os builds por várias tags, use "AND", "OR" ou "NOT" para listar as tags. O comando a seguir lista todos os builds marcados com a tag
'test1'ou'test2'e com'test3':gcloud builds list --filter "tags=('test1' OR 'test2') AND 'test3'"
Você verá uma resposta semelhante à seguinte depois de executar estes comandos:
ID CREATE_TIME DURATION SOURCE IMAGES STATUS d33a9895-... ... 1M45S gs://... us-east1-docker.pkg.dev/... SUCCESS
A seguir
- Saiba como ver os resultados de build para gatilhos de build.
- Saiba como visualizar insights de segurança do build.
- Saiba como resolver erros de build.