Ver resultados de versiones

En esta página se explica cómo ver información sobre tus compilaciones de Cloud Build mediante la Google Cloud consolagcloud, la herramienta de línea de comandos gcloud y la API de Cloud Build.

Antes de empezar

Si quieres usar los ejemplos de línea de comandos de esta guía, instala la herramienta de línea de comandos gcloud.

Ver resultados de versiones

Para ver los registros de compilación, las entidades requieren uno de los siguientes roles de gestión de identidades y accesos (IAM), además de los permisos de IAM de Cloud Build:

Para obtener más información sobre los permisos necesarios para ver los registros de compilación en Cloud Build, GitHub o GitHub Enterprise después de crear un activador, consulta Ver registros de compilación.

Consola

En la Google Cloud consola, el menú Historial de compilaciones puede mostrarte información sobre el estado de una compilación (por ejemplo, si se ha completado correctamente o no), la fuente, los resultados, la hora de creación, las imágenes y más.

Para ver el menú Historial de compilaciones, abre la página Historial de compilaciones en la consola de Google Cloud :

Abre la página Historial de compilaciones.

Se muestra la página Historial de compilaciones, que incluye una lista de tus compilaciones recientes.

Puedes filtrar las compilaciones con el campo Filtrar o introduciendo una consulta.

Para ver más columnas, como Descripción del activador y Artefactos, usa el selector de columnas .

Para ver los detalles de una compilación específica, ve al Historial de compilaciones y haz clic en una compilación. Se muestra la página Detalles de la compilación, con el Resumen de la compilación. El Resumen de la compilación incluye lo siguiente:

  • Registro de compilación: el registro de tu compilación.
  • Detalles de ejecución: los detalles de tu compilación, incluidas las variables de entorno y las sustituciones.
  • Dependencias de compilación: si tu compilación tiene una o varias dependencias, esta pestaña muestra información sobre las dependencias, como la URL del repositorio y la revisión.
  • Artefactos de la compilación: los artefactos de la compilación, como las imágenes de contenedor, los registros de compilación o los archivos binarios.

Para ver el registro de compilación o los detalles de ejecución específicos de un paso de compilación, selecciona el paso en la tabla Pasos de la izquierda.

gcloud

El comando gcloud builds list muestra todas tus compilaciones.

Para ver tus compilaciones, ejecuta el siguiente comando:

gcloud builds list

Debería ver un resultado similar al siguiente:

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 ver los detalles de una compilación específica, ejecuta el siguiente comando:

gcloud builds describe [BUILD_ID]

donde [BUILD_ID] es el ID de la compilación de la que quieres obtener los detalles.

Debería ver un resultado similar al siguiente:

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'

Estado del paso y estado de la compilación

Una vez completada la compilación, Cloud Build proporciona un status general de la compilación y un status de cada paso de compilación.

En la siguiente tabla se resumen los estados cuando una compilación o un paso se completan correctamente, se agota el tiempo de espera o fallan:

Evento Estado de versión Estado del paso
La compilación se realiza correctamente SUCCESS Todos los pasos están marcados con SUCCESS.
La compilación se realiza correctamente aunque haya pasos fallidos permitidos SUCCESS
  • La compilación está marcada como SUCCESS.
  • Los pasos fallidos configurados con allowFailure o allowExitCodes se marcan con FAILED.
Error al compilar FAILURE
  • El paso fallido se marca con el icono FAILED.
  • Los pasos que se completan antes de la finalización de la compilación se marcan con SUCCESS.
  • Los pasos que se encuentran en mitad de la ejecución se marcan con CANCELLED.
  • Los pasos que no empiezan a ejecutarse se marcan con el icono QUEUED.
El usuario ha cancelado la compilación CANCELLED
  • Los pasos que se completen antes de la cancelación de la compilación se marcarán con el símbolo SUCCESS.
  • Los pasos que se encuentran en mitad de la ejecución se marcan con CANCELLED.
  • Los pasos que no empiezan a ejecutarse se marcan con el icono QUEUED.
Tiempo de compilación agotado TIMEOUT
  • Los pasos que se completan antes de que se agote el tiempo de compilación se marcan con el símbolo SUCCESS.
  • Los pasos que se encuentran en mitad de la ejecución se marcan con CANCELLED.
  • Los pasos que no empiezan a ejecutarse se marcan con el icono QUEUED.
Tiempo de espera agotado FAILED
  • El paso que se agota se marca con TIMEOUT.
  • Los pasos que se completen correctamente antes del paso que agote el tiempo se marcarán con el símbolo SUCCESS.
  • Los pasos que se encuentran en mitad de la ejecución se marcan con CANCELLED.
  • Los pasos que no empiezan a ejecutarse se marcan con el icono QUEUED.

Para ver el estado de cada paso y de la compilación, ejecuta el comando gcloud builds describe:

gcloud builds describe <var>BUILD_ID</var>

donde BUILD_ID es el ID de la compilación.

En el siguiente fragmento se muestra el estado de cada paso de una compilación con un paso que ha agotado el tiempo de espera:

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 compilación mediante consultas

Para encontrar información sobre las compilaciones que cumplen criterios específicos, proporciona una cadena de consulta en el campo Filtrar compilaciones de la página Historial de compilaciones de laGoogle Cloud consola. Por ejemplo, puede consultar las compilaciones que han fallado (es decir, las que tienen el valor FAILURE en el campo de estado), las compilaciones que se crearon después de un momento determinado, las compilaciones etiquetadas y otras condiciones similares.

Campos admitidos en las consultas

Puede consultar compilaciones en función de los valores de los siguientes 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

Los campos que se muestran con notación de puntos (.) son subcampos.

Crear una cadena de consulta

Las cadenas de consulta usan el formato general:

field="value"

Usa la notación de punto para especificar un subcampo, como results.images.name. Las consultas admiten los operadores de comparación = y !=, así como >, >=, < y <= para los campos que tienen valores numéricos (como create_time).

Puede crear consultas compuestas mediante las expresiones booleanas AND y OR.

Consultas de ejemplo habituales

Para consultar todas las compilaciones correctas, haz lo siguiente:

status="SUCCESS"

Para consultar todas las compilaciones que aún no se han completado, haz lo siguiente:

status="QUEUED" OR status="WORKING"

Para consultar las compilaciones con un nombre de imagen de resultado determinado, haz lo siguiente:

(status="SUCCESS" OR status="FAILURE") AND \
    results.images.name="us-east1-docker.pkg.dev/my-project/my-image"

Para consultar todas las compilaciones con la etiqueta "prod", haz lo siguiente:

tags="prod"

Para consultar las compilaciones marcadas como verificadas, haz lo siguiente:

options.requested_verify_option="VERIFIED"

Para consultar las compilaciones que proceden de una fuente de Cloud Storage (en lugar de un repositorio de Cloud Source):

source.storage_source.bucket!=""

Para consultar las compilaciones con un resumen de resultados determinado, haz lo siguiente:

results.images.digest="sha256:6c7147fe4c813845ac2a9aa6f937bb272b68784f647c4f64c7325723c7245c88"

Para consultar las compilaciones que se iniciaron después de una hora específica y finalizaron antes de otra hora específica (zona horaria UTC):

create_time>"2016-10-12T18:43:49+00:00" AND finish_time<"2016-10-13T18:43:49+00:00"

Filtrar resultados de compilación mediante etiquetas

Puedes usar etiquetas en tus archivos de configuración para organizar tus compilaciones en grupos y filtrarlas. Puedes especificar cadenas en etiquetas, como "prod" o "test".

Las etiquetas tienen las siguientes limitaciones:

  • El límite de caracteres de cada etiqueta es de 128.
  • Puedes definir un máximo de 64 etiquetas por compilación
  • Las etiquetas pueden contener letras, números y guiones bajos en cualquier posición de la cadena.
  • Las etiquetas pueden contener puntos y guiones en cualquier posición, excepto en la primera posición de la cadena.

Para añadir etiquetas a tu compilación, sigue estos pasos:

  1. En el archivo de configuración de compilación, añade el 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'
    
  2. Para ver las compilaciones etiquetadas de tu clúster, usa la opción --filter de gcloud builds list. Puedes filtrar las compilaciones especificando una o varias etiquetas.

    • Para filtrar las compilaciones por una sola etiqueta, especifica la etiqueta como una cadena en el campo tags. El siguiente comando muestra todas las compilaciones etiquetadas con 'test1':

       gcloud builds list --filter "tags='test1'"
      
    • Para filtrar compilaciones por varias etiquetas, usa "AND", "OR" o "NOT" para enumerar las etiquetas. El siguiente comando muestra todas las compilaciones etiquetadas con 'test1' o 'test2' y con 'test3':

       gcloud builds list --filter "tags=('test1' OR 'test2') AND 'test3'"
      

    Después de ejecutar estos comandos, verás un resultado similar al siguiente:

    ID                                    CREATE_TIME                DURATION  SOURCE                                                                             IMAGES                                 STATUS
    d33a9895-...                          ...                        1M45S     gs://...                                                                           us-east1-docker.pkg.dev/...            SUCCESS
    

Siguientes pasos