En esta página se explica el tipo de compilación de 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 especifica el usuario y que no están presentes en la configuración de la compilación. Esto incluye los parámetros de activación que no están en el archivo cloudbuild.yaml
.
Campo | Tipo | Detalles |
---|---|---|
buildConfigSource | objeto | Ubicación desde la que se ha leído la configuración de compilación. En BuildTrigger , esto corresponde al repositorio de origen que
ha activado la compilación (compilaciones activadas por eventos de SCM) o
gitFileSource para todos los demás tipos de activadores.Se definirá buildConfigSource O buildConfig (en el caso de la configuración de compilación insertada). |
buildConfigSource.ref | cadena | Referencia de Git en buildConfigSource.repository desde la que se ha leído la configuración, ya sea una referencia de Git completa (que empieza por refs/ ) o un SHA de commit (hexadecimal en minúsculas). Un SHA de confirmación
solo se usa si se especifica en el activador. |
buildConfigSource.repository | cadena | URI HTTPS del repositorio de Git que contiene el archivo de configuración de compilación, con el protocolo https:// . Se le añadirá el prefijo git+ para que sea compatible con el formato SPDX. Para obtener más información sobre los requisitos de formato, consulta ResourceURI. |
buildConfigSource.path | cadena | Ruta al archivo de configuración de compilación en la confirmación. Ejemplo:
cloudbuild.yaml Se excluye mutuamente con pathAutodetect. Exactamente uno de estos campos debe tener un valor que no sea el predeterminado. |
buildConfigSource.pathAutoDetect | booleano | Si el valor es true, path se ha detectado automáticamente, lo que corresponde a la opción de detección automática de BuildTrigger . False se considera equivalente a no definido. Cloud Build usa path en su lugar si no se ha habilitado la detección automática.Se excluye mutuamente con path . Se debe asignar un valor que no sea el predeterminado a exactamente uno de estos campos. |
sourceToBuild | objeto | Código fuente que se ha extraído y compilado. Normalmente, es el mismo que buildConfigSource . Solo cambia si se ha definido gitFileSource en BuildTrigger.Este campo no existe si repository y ref son iguales que buildConfigSource y dir está vacío.En BuildTrigger, corresponde a sourceToBuild o a la confirmación que ha activado la compilación, según el tipo de activador. |
sourceToBuild.ref | cadena | Referencia de Git en sourceToBuild.repository que se ha consultado, ya sea como una referencia de Git completa (que empieza por refs/ ) o como un SHA de commit (hexadecimal en minúsculas). Un SHA de confirmación solo se usa si se especifica en el activador. |
sourceToBuild.repository | cadena | URI HTTPS del repositorio Git que se ha comprobado, con el protocolo https:// . Se le añadirá el prefijo git+ . |
sourceToBuild.dir | cadena | Directorio del commit en el que se va a ejecutar la compilación, sin barra inclinada al final. Puede estar vacío o sin definir. |
buildConfig | cadena | Cuando se proporciona una configuración de compilación insertada, como en una compilación enviada manualmente, se registra la siguiente información. - steps - build options (e.g. environment variables, volumes, worker pool details, machineType, log details) - substitutions Si la configuración de compilación se ha leído de un repositorio, se registra en la sección buildConfigSource y se omite la configuración de compilación insertada.Esta información se almacena como una cadena JSON serializada codificada en base64. |
sustituciones | map<string,string></string,string> | Mapa de (cadena -> cadena) que contiene las sustituciones que se van a realizar en el recurso de compilación. Solo contiene sustituciones de "tiempo de ejecución" o "independientes" que no se registran en la configuración de compilación, es decir, que se transfieren desde un activador o una marca de la CLI de gcloud. 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 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 define para la compilación, a menos que los sobrescriba. Para obtener más información, consulta las sustituciones predeterminadas.
Campo | Detalles |
---|---|
triggerUri | URI de recurso del activador que ha invocado esta compilación. En este caso, es el nombre de recurso completo. Si no se ha activado la compilación, 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 sobrescribes una de las sustituciones predeterminadas de Cloud Build, tus sustituciones no se mostrarán aquí. En su lugar, los valores se mostrarán en externalParameters.substitutions .
|
Dependencias resueltas
Si la compilación tiene un repositorio de origen o un repositorio de configuración de compilación, el repositorio se describe en la sección resolvedDependencies
del BuildDefinition
.
ResolvedDependencies
se ajusten a la
ResourceDescriptor
especificación.
Tipo de dependencia |
Detalles |
---|---|
Crear un repositorio de configuración |
El repositorio del que se ha extraído la configuración de compilación (es decir, 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 leído de un repositorio y se haya proporcionado de forma insertada, en cuyo caso se omitirá. |
Repositorio de origen |
El repositorio del que se ha extraído el código fuente que se va a compilar. Puede ser la misma que la de buildConfigSource o una diferente. Si es igual que buildConfigSource , se omite sourceToBuild . Por ejemplo, en las compilaciones activadas por SCM.
El sourceToBuild puede estar 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 un sourceRepo (que son iguales), así como 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 rellenó esta procedencia. También contiene el nivel de SLSA. El valor id esperado es
https://cloudbuild.googleapis.com/GoogleHostedWorker . |
metadata | Metadatos adicionales sobre esta ejecución concreta de la compilación.
El 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 cuándo se inició y se completó la compilación.
|
subproductos | Aún no se ha utilizado. Diseñado para contener artefactos adicionales que no se consideran el resultado de la compilación, pero que pueden ser útiles para solucionar problemas o responder a 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 y BUILD_ID .Si sobrescribes una de las sustituciones predeterminadas de Cloud Build, tus sustituciones no se mostrarán aquí. En su lugar, los valores se mostrarán en externalParameters.substitutions .
|