Tipo de compilación: Compilación de Cloud Build v1

En esta página, se explica el tipo de compilación para Cloud Build.

Definición de compilación

Parámetros externos

En la siguiente tabla, se muestran los tipos de parámetros externos que se pueden usar en una compilación de Cloud Build. Los parámetros externos son valores que especificas y que no están presentes en la configuración de compilación. Esto incluye el activador parámetros que no están en el archivo cloudbuild.yaml.

Campo Tipo Detalles
buildConfigSource objeto Ubicación desde la que se leyó la configuración de compilación.

En BuildTrigger, esto corresponde al repositorio de origen que activaron la compilación (compilaciones activadas por eventos de SCM) gitFileSource para todos los demás tipos de activadores

buildConfigSource O buildConfig (en el caso de la configuración de compilación intercalada).
buildConfigSource.ref string Referencia de Git dentro de buildConfigSource.repository desde en la que se leyó la configuración, ya sea como referencia de Git completamente calificada (comienza con refs/) o un SHA de confirmación (hexadecimal en minúsculas). Un SHA de confirmación solo se usa si se especifica en el activador.
buildConfigSource.repository string URI HTTPS del repositorio de git que contiene el archivo de configuración de la compilación, con el protocolo https://. Esto tendrá un prefijo con un git+ para brindar compatibilidad con el SPDX de un conjunto de datos tengan un formato común. Para obtener más información sobre los requisitos de formato, consulta ResourceURI.
buildConfigSource.path string Ruta de acceso al archivo de configuración de compilación dentro de la confirmación. Ejemplo: cloudbuild.yaml

Mutuamente excluyente con pathAutodetect. Exactamente uno de estos campos debe configurarse en un valor no predeterminado.
buildConfigSource.pathAutoDetect booleano Si es verdadero, path se detectó automáticamente, lo que corresponde a la autodetect en BuildTrigger. "False" se considera equivalente a no establecer. Cloud Build usa path en su lugar si no se habilitó la detección automática.

Este campo y path son mutuamente excluyentes. Exactamente uno de estos campos DEBE establecerse en un valor que no sea predeterminado.
sourceToBuild objeto Es el código fuente que se obtuvo y compiló. En general, esto es lo mismo como buildConfigSource; solo difiere si BuildTrigger tenía gitFileSource configurado.

Este campo no existe si los objetos repository y ref son lo mismo que buildConfigSource y dir está vacío.

En BuildTrigger, esto corresponde a sourceToBuild o la confirmación que activó la compilación, según el tipo de activador.
sourceToBuild.ref string Es la referencia de Git dentro de sourceToBuild.repository que se obtuvo, ya sea como una ref de git completamente calificada (que comienza con refs/) o como un SHA de confirmación (hexadecimal en minúsculas). Un SHA de confirmación solo se usa si se especifica en el activador.
sourceToBuild.repository string URI HTTPS del repositorio de git que se obtuvo, con el protocolo https://. Tendrá el prefijo git+.
sourceToBuild.dir string Directorio dentro de la confirmación en el que se ejecutará la compilación, sin un barra final. Puede estar vacío (no establecido).
buildConfig string Cuando se proporciona una configuración de compilación intercalada, como en una compilación enviada manualmente, se registra la siguiente información.

- pasos
- opciones de compilación (por ejemplo, variables de entorno, volúmenes, recursos detalles del grupo, tipo de máquina, detalles de registro)
- sustituciones

Si la configuración de compilación se leyó desde un repositorio, se registra. En la sección buildConfigSource y la compilación intercalada config.

Esta información se almacena como una cadena JSON serializada codificada en base64.
substitutions mapa<cadena,cadena></cadena,cadena> Es un mapa de (cadena -> cadena) que contiene las sustituciones que se deben realizar en el recurso de compilación.

Solo contiene sustituciones "independientes" o "de tiempo de ejecución" que no se registran en la configuración de compilación, es decir, que se pasan desde un activador o una marca de gcloud CLI.

Este registro no incluye las sustituciones predeterminadas proporcionadas por el sistema, ya que se consideran internalParameters.

Las sustituciones aparecen en este campo independientemente de si se hace referencia o no que se usa en la configuración de compilación.

Parámetros internos

En la siguiente tabla, se muestran los parámetros internos que Cloud Build configura para la compilación, a menos que los reemplaces. Para obtener más información, consulta sustituciones predeterminadas.

Campo Detalles
triggerUri El URI del recurso del activador que invocó esta compilación; en este caso, el nombre completo del recurso.

Si la compilación no se activó, se omite.
systemSubstitutions Hay un subconjunto de valores de sustitución predeterminados que se proporcionan automáticamente en las compilaciones de Cloud Build, como PROJECT_ID y BUILD_ID.

Si reemplazas una de las sustituciones predeterminadas de Cloud Build, tus sustituciones no se mostrarán aquí. En su lugar, tus valores aparecerán en externalParameters.substitutions.

Dependencias resueltas

Si la compilación tiene un repositorio de código fuente o un repositorio de configuración de compilación, el de Terraform se describe en el resolvedDependencies de la BuildDefinition.

ResolvedDependencies cumple con la especificación ResourceDescriptor.


Tipo de dependencia

Detalles

Compilación del repositorio de configuración

Es el repositorio del que se extrajo la configuración de compilación (es decir, el cloudbuild.yaml), en el caso de las compilaciones activadas.


Puede estar vacío en el caso de una configuración de compilación que no se haya lee de un repositorio y se proporciona de forma intercalada, en cuyo caso se omitirá.

Repositorio de código fuente

Es el repositorio del que se extrajo el código fuente para compilar. Puede ser igual que buildConfigSource o diferente. Si es igual que buildConfigSource, se omite sourceToBuild, por ejemplo, en compilaciones activadas por SCM.

Es posible que sourceToBuild esté vacío si la compilación se ejecuta mediante –no-source y se omitirá.

Por ejemplo, la siguiente información de resolvedDependencies contiene un buildConfigRepo y un sourceRepo (que son iguales) y una imagen de paso de compilación.

"resolvedDependencies": [
{
    "uri": "git+https://github.com/octocat/hello-world.git",
    "digest": {"sha1": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d"}
}, {
    "uri": "gcr.io/cloud-builders/git",
    "digest": {
        "sha256": "28ff94e63e4058afc3f15b4c11c08cf3b54fa91faa646a4bba7158df"}
    }
]

RunDetails

Campo Detalles
compilador Contiene un subcampo id que identifica la plataforma de compilación que ejecutó la operación y propagó esta procedencia. También contiene el nivel de SLSA. El valor de id esperado es https://cloudbuild.googleapis.com/GoogleHostedWorker
metadatos Metadatos adicionales sobre esta ejecución particular de la compilación. invocationId muestra la URL de la compilación, como https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/builds/BUILD_ID.
Los campos startedOn y finishedOn contienen las marcas de tiempo de cuando se inició y completó la compilación.
subproductos Aún no está en uso. Se diseñaron para contener artefactos adicionales que no se consideran el resultado de la compilación, pero que pueden ser útiles para solucionar problemas o responder incidentes.
systemSubstitutions Hay un subconjunto de valores de sustitución predeterminados que se proporcionan automáticamente en las compilaciones de Cloud Build, como PROJECT_ID, BUILD_ID

Si reemplazas una de las sustituciones predeterminadas de Cloud Build, tus sustituciones no se mostrarán aquí. En su lugar, tus valores aparecerán en externalParameters.substitutions.