Nesta página, explicamos como acessar informações sobre o Cloud Build
builds usando o console do Google Cloud, a ferramenta de linha de comando gcloud
e as
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 console do Google Cloud, o menu Histórico de build mostra informações sobre o status do 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 da build, abra a página Histórico da build no console do 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.
Para filtrar builds por região, use o menu suspenso Região, na parte superior da página, para escolher a região que você quer usar como filtro.
Também é possível filtrar builds usando a caixa de texto Filtrar builds na parte superior do ou digitando uma consulta manualmente.
Para ver mais colunas, como Descrição do gatilho e Artefatos, use o seletor de coluna
.Para ver detalhes sobre um build específico, acesse Histórico de build e clique em um determinado build. 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.
- 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 [BUILD_ID]
[BUILD_ID] é o código da criação.
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 para builds que atendam a critérios específicos, forneça uma string de consulta
no campo Filtrar builds na página Histórico da versão do
console do Google Cloud. Por exemplo, é possível consultar criações que falharam (que têm um valor FAILURE
no campo de status), criações que foram criadas após um determinado período, criações com tags e outras condições.
Campos compatíveis para consultas
É possível consultar builds com base nos valores dos seguintes campos:
status
build_id
trigger_id
source.storage_source.bucket
source.storage_source.object
source.repo_source.repo_name
source.repo_source.branch_name
source.repo_source.tag_name
source.repo_source.commit_sha
source_provenance.resolved_repo_source.commit_sha
results.images.name
results.images.digest
options.requested_verify_option
tags
images
create_time
start_time
finish_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. Assim é possível organizar as criações em grupos e filtrá-las. 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
--filter
emgcloud 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 acessar insights de segurança do build.
- Saiba como resolver erros de build.