REST Resource: projects.locations.deliveryPipelines.releases

Recurso: Release

Un recurso Release en la API de Cloud Deploy.

Un Release define una instancia de configuración específica de Skaffold que se puede implementar.

Representación JSON
{
  "name": string,
  "uid": string,
  "description": string,
  "annotations": {
    string: string,
    ...
  },
  "labels": {
    string: string,
    ...
  },
  "abandoned": boolean,
  "createTime": string,
  "renderStartTime": string,
  "renderEndTime": string,
  "skaffoldConfigUri": string,
  "skaffoldConfigPath": string,
  "buildArtifacts": [
    {
      object (BuildArtifact)
    }
  ],
  "deliveryPipelineSnapshot": {
    object (DeliveryPipeline)
  },
  "targetSnapshots": [
    {
      object (Target)
    }
  ],
  "customTargetTypeSnapshots": [
    {
      object (CustomTargetType)
    }
  ],
  "renderState": enum (RenderState),
  "etag": string,
  "skaffoldVersion": string,
  "targetArtifacts": {
    string: {
      object (TargetArtifact)
    },
    ...
  },
  "targetRenders": {
    string: {
      object (TargetRender)
    },
    ...
  },
  "condition": {
    object (ReleaseCondition)
  },
  "deployParameters": {
    string: string,
    ...
  }
}
Campos
name

string

Opcional. Es el nombre del Release. El formato es projects/{project}/locations/{location}/deliveryPipelines/{deliveryPipeline}/releases/{release}. El componente release debe coincidir con [a-z]([a-z0-9-]{0,61}[a-z0-9])?.

uid

string

Solo salida. Es el identificador único de Release.

description

string

Descripción de Release. La longitud máxima es de 255 caracteres.

annotations

map (key: string, value: string)

Anotaciones de usuario Solo el usuario puede configurar y usar estos atributos, no Cloud Deploy. Consulta https://google.aip.dev/128#annotations para obtener más detalles, como las limitaciones de formato y tamaño.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

labels

map (key: string, value: string)

Las etiquetas son atributos que el usuario y Cloud Deploy pueden configurar y usar. Las etiquetas deben cumplir con las siguientes restricciones:

  • Las claves y los valores solo pueden contener letras minúsculas, caracteres numéricos, guiones bajos y guiones.
  • Todos los caracteres deben usar la codificación UTF-8 y se permiten los caracteres internacionales.
  • Las claves deben comenzar con una letra en minúscula o un carácter internacional.
  • Cada recurso tiene un límite de 64 etiquetas.

Las claves y los valores tienen restricciones adicionales para ser <= 128 bytes.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

abandoned

boolean

Solo salida. Indica si se trata de una versión abandonada.

createTime

string (Timestamp format)

Solo salida. Hora a la que se creó el objeto Release.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

renderStartTime

string (Timestamp format)

Solo salida. Hora en la que comenzó la renderización.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

renderEndTime

string (Timestamp format)

Solo salida. Hora en la que se completó la renderización.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

skaffoldConfigUri

string

El URI de Cloud Storage del archivo tar.gz que contiene la configuración de Skaffold.

skaffoldConfigPath

string

Es la ruta de acceso al archivo de la configuración de Skaffold dentro del URI de configuración.

buildArtifacts[]

object (BuildArtifact)

Lista de artefactos para pasar al comando de Skaffold.

deliveryPipelineSnapshot

object (DeliveryPipeline)

Solo salida. Instantánea de la canalización superior tomada en el momento de la creación de la versión.

targetSnapshots[]

object (Target)

Solo salida. Instantánea de los destinos tomados en el momento de la creación de la versión.

customTargetTypeSnapshots[]

object (CustomTargetType)

Solo salida. Instantánea de los tipos de destinos personalizados a los que hacen referencia los destinos tomados al momento de crear la versión.

renderState

enum (RenderState)

Solo salida. Estado actual de la operación de renderización.

etag

string

El servidor calcula esta suma de comprobación en función del valor de otros campos, y es posible que se envíe en solicitudes de actualización y eliminación para garantizar que el cliente tenga un valor actualizado antes de continuar.

skaffoldVersion

string

La versión de Skaffold que se debe usar cuando se opera en esta versión, como “1.20.0”. No todas las versiones son válidas. Cloud Deploy admite un conjunto específico de versiones.

Si no la estableces, se usará la versión compatible más reciente de Skaffold.

targetArtifacts

map (key: string, value: object (TargetArtifact))

Solo salida. Asigna del ID de destino a los artefactos de destino creados durante la operación de renderización.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

targetRenders

map (key: string, value: object (TargetRender))

Solo salida. Asigna del ID de destino a los detalles de la operación de renderización de ese destino.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

condition

object (ReleaseCondition)

Solo salida. Información sobre el estado de la versión.

deployParameters

map (key: string, value: string)

Opcional. Los parámetros de implementación que se usarán para todos los destinos en esta versión.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

BuildArtifact

Descripción de una imagen para usar durante la renderización de Skaffold.

Representación JSON
{
  "image": string,
  "tag": string
}
Campos
image

string

Nombre de la imagen en la configuración de Skaffold.

tag

string

Etiqueta de imagen que se debe usar. Por lo general, será la ruta de acceso completa a una imagen, como “gcr.io/my-project/busybox:1.2.3” o “gcr.io/my-project/busybox@sha256:abc123”.

RenderState

Estados válidos de la operación de renderización.

Enums
RENDER_STATE_UNSPECIFIED El estado de renderización no está especificado.
SUCCEEDED Se completaron correctamente todas las operaciones de renderización.
FAILED Se completaron todas las operaciones de renderización, y una o más fallaron.
IN_PROGRESS Se inició el procesamiento y no se completó.

TargetArtifact

Los artefactos producidos por una operación de renderización de destino.

Representación JSON
{
  "skaffoldConfigPath": string,
  "manifestPath": string,
  "phaseArtifacts": {
    string: {
      object (PhaseArtifact)
    },
    ...
  },

  // Union field uri can be only one of the following:
  "artifactUri": string
  // End of list of possible types for union field uri.
}
Campos
skaffoldConfigPath

string

Solo salida. Es la ruta de acceso del archivo de la configuración resuelta de Skaffold en relación con el URI.

manifestPath

string

Solo salida. Es la ruta de acceso al archivo del manifiesto renderizado en relación con el URI.

phaseArtifacts

map (key: string, value: object (PhaseArtifact))

Solo salida. Asigna del ID de fase a los artefactos de fase para Target.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Campo de unión uri.

uri puede ser una de las siguientes opciones:

artifactUri

string

Solo salida. El URI de un directorio que contiene los artefactos Contiene la configuración de implementación que usa Skaffold durante un lanzamiento, y todas las rutas de acceso están relacionadas con esta ubicación.

PhaseArtifact

Contiene las rutas de acceso a los artefactos, en relación con el URI, para una fase.

Representación JSON
{
  "skaffoldConfigPath": string,
  "manifestPath": string,
  "jobManifestsPath": string
}
Campos
skaffoldConfigPath

string

Solo salida. Es la ruta de acceso del archivo de la configuración resuelta de Skaffold en relación con el URI.

manifestPath

string

Solo salida. Es la ruta de acceso al archivo del manifiesto renderizado en relación con el URI.

jobManifestsPath

string

Solo salida. Es la ruta de acceso al archivo del directorio de los manifiestos de trabajo renderizados en relación con el URI. Solo se establece si es aplicable.

TargetRender

Son los detalles de renderización para un solo destino.

Representación JSON
{
  "renderingBuild": string,
  "renderingState": enum (TargetRenderState),
  "metadata": {
    object (RenderMetadata)
  },
  "failureCause": enum (FailureCause),
  "failureMessage": string
}
Campos
renderingBuild

string

Solo salida. El nombre del recurso del objeto Build de Cloud Build que se usa para renderizar el manifiesto para este destino. El formato es projects/{project}/locations/{location}/builds/{build}.

renderingState

enum (TargetRenderState)

Solo salida. El estado actual de la operación de renderización de este destino.

metadata

object (RenderMetadata)

Solo salida. Metadatos relacionados con Release renderizados para este destino.

failureCause

enum (FailureCause)

Solo salida. Motivo por el que falló esta renderización. Esto siempre no se especificará mientras la renderización esté en curso.

failureMessage

string

Solo salida. Información adicional sobre la falla de renderización, si está disponible.

TargetRenderState

Estados válidos de la operación de renderización.

Enums
TARGET_RENDER_STATE_UNSPECIFIED El estado de la operación de renderización no está especificado.
SUCCEEDED La operación de renderización se completó correctamente.
FAILED Falló la operación de renderización.
IN_PROGRESS La operación de renderización está en curso.

RenderMetadata

RenderMetadata incluye información asociada con una renderización de Release.

Representación JSON
{
  "cloudRun": {
    object (CloudRunRenderMetadata)
  },
  "custom": {
    object (CustomMetadata)
  }
}
Campos
cloudRun

object (CloudRunRenderMetadata)

Solo salida. Metadatos asociados con la renderización para Cloud Run.

custom

object (CustomMetadata)

Solo salida. Metadatos personalizados proporcionados por una operación de renderización definida por el usuario.

CloudRunRenderMetadata

CloudRunRenderMetadata contiene información de Cloud Run asociada con una renderización de Release.

Representación JSON
{
  "service": string
}
Campos
service

string

Solo salida. Es el nombre del servicio de Cloud Run en el manifiesto renderizado. El formato es projects/{project}/locations/{location}/services/{service}.

FailureCause

Errores de renderización conocidos.

Enums
FAILURE_CAUSE_UNSPECIFIED No se especificó ningún motivo para la falla.
CLOUD_BUILD_UNAVAILABLE Cloud Build no está disponible, ya sea porque no está habilitado o porque Cloud Deploy no tiene permisos suficientes. Consulta los permisos necesarios.
EXECUTION_FAILED La operación de renderización no se completó correctamente; revisa los registros de Cloud Build.
CLOUD_BUILD_REQUEST_FAILED Cloud Build no pudo entregar la solicitud de Cloud Deploy. Consulta failedMessage para obtener más detalles.
VERIFICATION_CONFIG_NOT_FOUND La operación de renderización no se completó correctamente porque no se encontró la estrofa de verificación necesaria en la configuración de Skaffold.
CUSTOM_ACTION_NOT_FOUND La operación de renderización no se completó correctamente porque no se encontró en la configuración de Skaffold la acción personalizada necesaria para la implementación previa o posterior. Consulta failedMessage para obtener más detalles.
DEPLOYMENT_STRATEGY_NOT_SUPPORTED No se pudo realizar el lanzamiento durante la renderización porque la configuración de lanzamiento no es compatible con la estrategia de implementación especificada.
RENDER_FEATURE_NOT_SUPPORTED La operación de renderización tuvo una función configurada que no se admite.

ReleaseCondition

ReleaseCondition contiene todas las condiciones relevantes para un Release.

Representación JSON
{
  "releaseReadyCondition": {
    object (ReleaseReadyCondition)
  },
  "skaffoldSupportedCondition": {
    object (SkaffoldSupportedCondition)
  }
}
Campos
releaseReadyCondition

object (ReleaseReadyCondition)

Detalles sobre el estado general de los lanzamientos.

skaffoldSupportedCondition

object (SkaffoldSupportedCondition)

Detalles sobre el estado de compatibilidad de la versión de Skaffold de la versión.

ReleaseReadyCondition

ReleaseReadyCondition contiene información sobre el estado de la versión. Si una versión no está lista, no podrás crear un lanzamiento con ella.

Representación JSON
{
  "status": boolean
}
Campos
status

boolean

Es verdadero si la versión está en un estado válido. De lo contrario, al menos una condición en ReleaseCondition tendrá un estado no válido. Itera esas condiciones y observa cuáles tienen el estado = false para descubrir el problema con el lanzamiento.

SkaffoldSupportedCondition

SkaffoldSupportedCondition contiene información sobre cuándo finaliza la compatibilidad con la versión de la versión de Skaffold.

Representación JSON
{
  "status": boolean,
  "skaffoldSupportState": enum (SkaffoldSupportState),
  "maintenanceModeTime": string,
  "supportExpirationTime": string
}
Campos
status

boolean

Es verdadero si la versión de Skaffold que se usa en esta versión es compatible.

skaffoldSupportState

enum (SkaffoldSupportState)

El estado de compatibilidad de Skaffold para la versión de esta versión.

maintenanceModeTime

string (Timestamp format)

El momento en que la versión de Skaffold de esta versión entrará en el modo de mantenimiento.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

supportExpirationTime

string (Timestamp format)

El momento en el que la versión de Skaffold de este lanzamiento dejará de ser compatible.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

SkaffoldSupportState

Es el estado de compatibilidad de una versión específica de Skaffold.

Enums
SKAFFOLD_SUPPORT_STATE_UNSPECIFIED Valor predeterminado Este valor no se usa.
SKAFFOLD_SUPPORT_STATE_SUPPORTED Por el momento, se admite esta versión de Skaffold.
SKAFFOLD_SUPPORT_STATE_MAINTENANCE_MODE Esta versión de Skaffold está en modo de mantenimiento.
SKAFFOLD_SUPPORT_STATE_UNSUPPORTED Ya no se admite esta versión de Skaffold.

Métodos

abandon

Abandona una versión en la canalización de entrega.

create

Crea un nuevo lanzamiento en una ubicación y un proyecto determinados.

get

Obtiene detalles sobre el lanzamiento de un solo sencillo.

list

Enumera las versiones de un proyecto y una ubicación determinados.