Promueve tu lanzamiento y administra las aprobaciones

En esta página, se describe cómo promover una versión existente de Cloud Deploy al siguiente objetivo en la progresión de una canalización de entrega.

Antes de comenzar

En esta página, se da por sentado que ya creaste una versión.

Promueve la versión

Cuando tu versión se implemente en un destino definido en tu canalización de entrega, podrás promoverla al siguiente destino:

gcloud

gcloud deploy releases promote --release=RELEASE_NAME \
                               --delivery-pipeline=PIPELINE_NAME \
                               --region=REGION

Aquí:

RELEASE_NAME es el nombre de la versión que quieres que promocionas.

PIPELINE_NAME es el nombre de la canalización de entrega que usas para administrar la implementación de esta versión.

REGION es el nombre de la región en la que se publicó la versión. cuando se creó, por ejemplo us-central1. Este campo es obligatorio.

Consulta la referencia del SDK de Google Cloud para obtener más información sobre el comando gcloud deploy releases promote.

Console

  1. Abrir la página de Publicación canalizaciones de datos.

  2. Haz clic en la canalización que se muestra en la lista de canalizaciones de entrega.

    La página Detalles de la canalización de entrega muestra una representación gráfica del progreso de tu canalización de entrega.

    Visualización de la canalización de entrega en la consola de Google Cloud

  3. En el primer objetivo de la visualización de la canalización de entrega, haz clic en Promover.

    Se muestra el cuadro de diálogo Promocionar la versión. Muestra los detalles de la objetivo de la promoción.

  4. Haz clic en Ascender.

Si la canalización de entrega o el destino cambiaron desde que se creó la versión Cloud Deploy devuelve un mensaje que indica una posible mismatch y los mensajes para confirmar la promoción. Puedes responder n a la instrucción y examinar las diferencias entre las versiones de la canalización antes de continuar. Si eliges de todas formas, la versión se implementa de acuerdo con la canalización de entrega, se definió cuando se creó la versión. Consulta Instancias de canalización por versión para obtener más información sobre las discrepancias en las canalizaciones.

Cloud Deploy crea un rollout para el lanzamiento en la destino de destino y la versión se pone en cola para la implementación. Cuando sea implementada, la visualización de la canalización de entrega muestra este hecho:

Visualización de la canalización de entrega en la consola de Google Cloud

Administra las aprobaciones de una canalización de entrega

Puedes requerir la aprobación de cualquier destino y aprobar o rechazar las versiones que se publiquen en él.

Las aprobaciones se pueden administrar de manera programática mediante la integración de tu flujo de trabajo de software (como ServiceNow) u otro sistema, con Cloud Deploy con Pub/Sub y Cloud Deploy API de gcloud.

Solicitar aprobación

Para solicitar la aprobación de cualquier destino, configura requireApproval como true en la configuración de destino:

     apiVersion: deploy.cloud.google.com/v1
     kind: Target
     metadata:
      name:
     description:
     requireApproval: true

Consulta Configuración de la canalización de entrega. para obtener más detalles.

Cuando un lanzamiento está pendiente de aprobación, los usuarios o sistemas que se suscriben al tema de Pub/Sub clouddeploy-approvals reciben una notificación y, luego, pueden aprobar o rechazar el lanzamiento.

Cuando usas la implementación paralela, puedes configurar el con varios destinos para requerir aprobación. Si se rechaza el ascenso al destino, el lanzamiento del controlador falla y muestra el estado de APPROVAL_REJECTED, y los lanzamientos secundarios no se crean.

Cómo aprobar o rechazar un lanzamiento

Cada destino puede necesitar aprobación antes de que se implemente cualquier versión en él. Cuando asciende a un objetivo que requiere aprobación, Cloud Deploy publica un mensaje de Pub/Sub en el clouddeploy-approvals tema.

Cualquier usuario o cuenta de servicio con el rol roles/clouddeploy.approver puede aprobar un lanzamiento de Cloud Deploy en un destino que requiera aprobación.

Tu sistema integrado de gestión de flujos de trabajo, después de haber recibido una aprobación requerida mediante las notificaciones del servicio puede aprobar o rechazar el lanzamiento con la API de Cloud Deploy.

Aprobar o rechazar manualmente

Console

  1. En la consola de Google Cloud, navega a la página Canalizaciones de entrega de Cloud Deploy para ver una lista de las canalizaciones de entrega disponibles.

    Abrir la página Canalizaciones de entrega

    La lista de canalizaciones de entrega se muestra en la consola de Google Cloud. Canalizaciones de entrega que se configuraron, pero no se registraron con el servicio Cloud Deploy.

  2. Haz clic en el nombre de la canalización de entrega.

    Se mostrará la visualización de la canalización. Si la aprobación está pendiente y si tener el rol roles/clouddeploy.approver o permisos equivalentes la visualización incluya un vínculo Review.

    Canalización de entrega
visualización, con aprobación pendiente

  3. Haz clic en Revisar.

    Se mostrará una lista de los lanzamientos pendientes de aprobación.

    Lanzamientos para esto
canalización, con aprobación pendiente

  4. Haz clic en Revisar.

    Se mostrará la pantalla para aprobar lanzamiento.

    Detalles de la
lanzamiento con aprobación pendiente

    En la pestaña Manifest diff, se muestran los cambios realizados en el manifiesto renderizado desde la versión implementada actualmente (si corresponde) a la que estás aprobando (o rechazando).

  5. Haz clic en Aprobar o Rechazar.

    Si apruebas, tu aplicación se implementará en el destino. Si rechazar, la aplicación no se implementa y no puede aprobarse más adelante a menos que se vuelva a promocionar.

gcloud

Un usuario con el rol roles/clouddeploy.approver puede aprobar o aprobar manualmente rechazar un lanzamiento. Para aprobarlas, sigue estos pasos:

gcloud deploy rollouts approve rollout-name --delivery-pipeline=pipeline-name \
                                                                   --region=region \
                                                                   --release=release-name

Para rechazarlo, sigue estos pasos:

gcloud deploy rollouts reject rollout-name --delivery-pipeline=pipeline-name \
                                                                  --region=region \
                                                                  --release=release-name