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 la configuración de 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 Es la 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 al autodetect en BuildTrigger. Se considera falso es equivalente a “not set”; En su lugar, Cloud Build usa path. si no se habilitó la detección automática.

Son mutuamente excluyentes con path. Exactamente uno de estos campos DEBE tener un valor no predeterminado.
sourceToBuild objeto Código fuente que se extrajo y se 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 a 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 referencia 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 verificó, con https://. Tendrá el prefijo git+.
sourceToBuild.dir string Es el directorio dentro de la confirmación en el que se ejecutará la compilación, sin una barra diagonal final. Puede estar vacío o no establecerse.
buildConfig string Cuando se proporciona una configuración de compilación intercalada, como en un compilación enviada, 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> Mapa de (string -> string) que contiene las sustituciones en las que se realizará el recurso Build.

Solo contiene “runtime” o "independiente" sustituciones que no son registrados en la configuración de compilación, es decir, 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 considerado internalParameters.

Las sustituciones aparecen en este campo, independientemente de si se hace referencia a ellas o se usan en la configuración de compilación.

Parámetros internos

En la siguiente tabla, se muestran los parámetros internos que Cloud Build 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, BUILD_ID

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

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 cumplen con las Especificación de ResourceDescriptor.


Tipo de dependencia

Detalles

Repositorio de configuración de compilación

El repositorio al que se aplicó la configuración de compilación (es decir, cloudbuild.yaml) en el caso de 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

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

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

Por ejemplo, la siguiente información de resolvedDependencies contiene un buildConfigRepo y sourceRepo (que son iguales) y una imagen del 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 del momento en que se inició y completó la compilación.
subproductos Aún no está en uso. Diseñado para contener artefactos que no se consideran el resultado de la compilación, pero que podrían útiles para solucionar problemas o para responder ante 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, sustituciones no se mostrarán aquí. Tus valores aparecerán en externalParameters.substitutions en su lugar.