REST Resource: projects.locations.rollouts

Recurso: Lanzamiento

Representa una sola ejecución del lanzamiento y sus resultados

Representación JSON
{
  "name": string,
  "release": string,
  "startTime": string,
  "endTime": string,
  "state": enum (RolloutState),
  "stateMessage": string,
  "stateTransitionTime": string,
  "rootRollout": string,
  "parentRollout": string,
  "rolloutOrchestrationStrategy": string,
  "unitFilter": string,
  "rolloutKind": string,
  "stats": {
    object (RolloutStats)
  },
  "control": {
    object (RolloutControl)
  },
  "effectiveUnitFilter": string,
  "labels": {
    string: string,
    ...
  },
  "annotations": {
    string: string,
    ...
  },
  "uid": string,
  "etag": string,
  "createTime": string,
  "updateTime": string,
  "deleteTime": string
}
Campos
name

string

Es el identificador. Nombre del recurso (URI completo del recurso) según el esquema de nombres estándar:

"projects/{project}/locations/{location}/rollout/{rolloutId}"

release

string

Es opcional. Inmutable. Es el nombre de la versión que se lanza para las unidades objetivo. Se requiere si no se especifica ningún otro tipo de lanzamiento.

startTime

string (Timestamp format)

Es opcional. Solo salida. Es la fecha y hora en que comenzó la ejecución del lanzamiento. Estará vacío si aún no comenzó el lanzamiento.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

endTime

string (Timestamp format)

Es opcional. Solo salida. Fecha y hora en que finalizó la ejecución del lanzamiento (independientemente de si se realizó correctamente, falló o se canceló). Estará vacío si el lanzamiento aún no finalizó. Una vez que se establece, la versión se encuentra en estado terminal y todos los resultados son definitivos.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

state

enum (RolloutState)

Solo salida. Es el estado actual del lanzamiento.

stateMessage

string

Solo salida. Es un mensaje legible que indica detalles sobre la última transición de estado.

stateTransitionTime

string (Timestamp format)

Es opcional. Solo salida. Es la fecha y hora en que la versión dejó de estar en el estado anterior y pasó al estado actual.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

rootRollout

string

Es opcional. Solo salida. Es el lanzamiento raíz del que se deriva este lanzamiento. Nombre del recurso (URI completo del recurso) según el esquema de nombres estándar:

"projects/{project}/locations/{location}/rollouts/{rolloutId}"

parentRollout

string

Es opcional. Solo salida. Es el lanzamiento principal directo del que se deriva este lanzamiento. Nombre del recurso (URI completo del recurso) según el esquema de nombres estándar:

"projects/{project}/locations/{location}/rollouts/{rolloutId}"

rolloutOrchestrationStrategy

string

Es opcional. Es la estrategia que se usa para ejecutar este lanzamiento. Esta estrategia anulará cualquier estrategia especificada en RolloutKind. Si no se especifica en la creación, se usará la estrategia de RolloutKind.

Hay dos estrategias de valores admitidas que se usan para controlar: "Google.Cloud.Simple.AllAtOnce" y "Google.Cloud.Simple.OneLocationAtATime".

Un lanzamiento con una de estas estrategias simples se realizará en todas las ubicaciones definidas en las ubicaciones de SaaS del tipo de unidad objetivo.

unitFilter

string

Es opcional. Cadena de filtro con formato de CEL(https://github.com/google/cel-spec) en relación con Unit. Se aplicará el filtro para determinar la población de unidades aptas. Este filtro solo puede reducir, pero no expandir el alcance del lanzamiento. Si no se proporciona, se usará el unitFilter de RolloutKind.

rolloutKind

string

Es opcional. Inmutable. Nombre del RolloutKind del que proviene este lanzamiento y al que se adhiere.

stats

object (RolloutStats)

Es opcional. Solo salida. Son los detalles sobre el progreso del lanzamiento.

control

object (RolloutControl)

Es opcional. Cambio solicitado en la ejecución de este lanzamiento. El valor predeterminado de RolloutControl.action es ROLLOUT_ACTION_RUN, lo que significa que la versión se lanzará hasta completarse mientras avanza por todos los estados naturales de lanzamiento (como RUNNING -> SUCCEEDED o RUNNING -> FAILED). Las solicitudes solo se pueden realizar cuando el lanzamiento está en un estado no terminal.

effectiveUnitFilter

string

Es opcional. Solo salida. Es solo una instantánea del filtro de unidades efectivo en la hora de inicio del lanzamiento. Contiene una expresión CEL(https://github.com/google/cel-spec) que consta de una conjunción de Rollout.unit_filter y RolloutKind.unit_filter. Este campo captura el filtro que aplica el lanzamiento para determinar la población de la unidad. Si se modifica el unitFilter del RolloutKind asociado después de que se inicia el lanzamiento, no se actualizará aquí.

labels

map (key: string, value: string)

Es opcional. Son las etiquetas del recurso, que se pueden usar para la categorización, de forma similar a las etiquetas de recursos de Kubernetes.

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

annotations

map (key: string, value: string)

Es opcional. Las anotaciones son un mapa clave-valor no estructurado que se almacena con un recurso que herramientas externas pueden establecer para almacenar y recuperar metadatos arbitrarios. No se pueden consultar y deben conservarse cuando se modifican objetos.

Más información: https://kubernetes.io/docs/user-guide/annotations

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

uid

string

Solo salida. Identificador único del recurso. El UID es único en el tiempo y espacio para este recurso dentro del alcance de este servicio. Normalmente, el servidor lo genera durante la creación correcta de un recurso y no se debe cambiar. El UID se usa para identificar los recursos de manera única en caso de la reutilización de nombres de recursos y debe ser un UUID4.

etag

string

Solo salida. Valor opaco que identifica de manera única a una versión o generación de un recurso. Se puede usar para confirmar que el cliente y el servidor están de acuerdo en el orden del recurso que se escribe.

createTime

string (Timestamp format)

Solo salida. Marca de tiempo cuando se creó el recurso.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo salida. Marca de tiempo cuando se actualizó el recurso por última vez. Este valor debe actualizarse en caso de que los usuarios hagan cualquier cambio al recurso. Este valor debería actualizarse si el servicio hace cambios al recurso.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

deleteTime

string (Timestamp format)

Solo salida. Es la marca de tiempo en la que se marcó el recurso para su eliminación (la eliminación es una operación asíncrona).

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

RolloutState

Es el estado actual del lanzamiento.

Enums
ROLLOUT_STATE_UNSPECIFIED Significa que el estado no se especificó.
ROLLOUT_STATE_RUNNING El lanzamiento está en curso.
ROLLOUT_STATE_PAUSED Se detuvo el lanzamiento.
ROLLOUT_STATE_SUCCEEDED El lanzamiento se completó correctamente.
ROLLOUT_STATE_FAILED No se pudo realizar el lanzamiento.
ROLLOUT_STATE_CANCELLED Se canceló el lanzamiento.
ROLLOUT_STATE_WAITING El lanzamiento está esperando que se cumpla alguna condición antes de comenzar.
ROLLOUT_STATE_CANCELLING Se está cancelando el lanzamiento.
ROLLOUT_STATE_RESUMING Se está reanudando el lanzamiento.
ROLLOUT_STATE_PAUSING Se pausará el lanzamiento.

RolloutStats

RolloutStats contiene información sobre el progreso de un lanzamiento.

Representación JSON
{
  "operationsByState": [
    {
      object (Aggregate)
    }
  ]
}
Campos
operationsByState[]

object (Aggregate)

Es opcional. Solo salida. Lista sin ordenar. Es un desglose del progreso de las operaciones que se activaron con la implementación. Proporciona un recuento de las operaciones según su estado. Se puede usar para determinar la cantidad de unidades que se actualizaron o que se programaron para actualizarse.

Habrá, como máximo, una entrada por grupo. Los valores posibles para los grupos de operaciones son los siguientes: "SCHEDULED", "PENDING", "RUNNING", "SUCCEEDED", "FAILED" y "CANCELLED".

Agregación

Representa la agregación de un conjunto de registros similares de una población según un grupo determinado. Por ejemplo, se puede agregar y agrupar una colección de recuentos de unidades por su estado.

Representación JSON
{
  "group": string,
  "count": integer
}
Campos
group

string

Obligatorio. Es el grupo por el que se realizará la agregación.

count

integer

Obligatorio. Cantidad de registros en el grupo.

RolloutControl

RolloutControl proporciona una forma de solicitar un cambio en la ejecución de una versión pausándola o cancelándola.

Representación JSON
{
  "action": enum (RolloutAction),

  // Union field action_params can be only one of the following:
  "runParams": {
    object (RunRolloutActionParams)
  }
  // End of list of possible types for union field action_params.
}
Campos
action

enum (RolloutAction)

Obligatorio. Acción que se realizará en la versión. El comportamiento predeterminado es ejecutar el lanzamiento hasta que alcance de forma natural un estado terminal.

Campo de unión action_params. Es el parámetro de configuración de la acción. El parámetro de configuración debe coincidir con la acción, p.ej., action=RUN solo puede establecer run_params u omitir todos los parámetros. Es un error establecer un parámetro de configuración que no se aplica a la acción. action_params puede ser solo uno de los parámetros siguientes:
runParams

object (RunRolloutActionParams)

Es opcional. Son los parámetros de la acción RUN. Es un error especificar este campo si RolloutAction no está establecido en RUN. De forma predeterminada, cuando se reanude el lanzamiento, se volverán a intentar las operaciones fallidas.

RunRolloutActionParams

Son los parámetros de la acción RUN que controlan el comportamiento del lanzamiento cuando se reanuda desde un estado PAUSED.

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

boolean

Obligatorio. Si es verdadero, el lanzamiento volverá a intentar las operaciones fallidas cuando se reanude. Esto solo se aplica si el estado actual del lanzamiento es PAUSED y la acción solicitada es RUN.

RolloutAction

RolloutAction indica la acción que se realizará en la versión.

Enums
ROLLOUT_ACTION_UNSPECIFIED Acción no especificada. Se tratará como RUN de forma predeterminada.
ROLLOUT_ACTION_RUN Ejecuta el lanzamiento hasta que alcance de forma natural un estado terminal. Un lanzamiento solicitado para ejecutarse progresará a través de todos los estados de lanzamiento naturales (como RUNNING -> SUCCEEDED o RUNNING -> FAILED). Si se producen errores reintentables durante el lanzamiento, este se pausará de forma predeterminada y se podrá reanudar volviendo a solicitar esta acción RUN.
ROLLOUT_ACTION_PAUSE Pausa la implementación hasta que se reanude (es decir, se solicite RUN).
ROLLOUT_ACTION_CANCEL Cancela el lanzamiento de forma permanente.

Métodos

create

Crea un nuevo lanzamiento.

delete

Borra un solo lanzamiento.

get

Recupera un solo lanzamiento.

list

Recupera una colección de lanzamientos.

patch

Actualiza un solo lanzamiento.