En esta página, se describe cómo crear la canalización de entrega y los destinos que describen dónde y cómo Cloud Deploy implementará tu aplicación. Consulta Esquema del archivo de configuración para una descripción de Estructura de archivos YAML para las canalizaciones y los destinos de entrega.
Acerca de la canalización de entrega y los destinos
Tu canalización de entrega describe una progresión de los objetivos de implementación. Puedes definir esos destinos en el mismo archivo que la canalización de entrega, o en uno o más archivos archivos.
Después de crear la canalización de entrega y los archivos o archivos de definición de destino, puedes
ejecuta gcloud deploy apply
en cada uno de esos archivos para registrarlos como
recursos de Cloud Deploy.
Define la canalización de entrega y los destinos
La estructura de la canalización de entrega y los archivos de configuración de destino es que se describen aquí.
Puedes llamar a este archivo como desees. Por convención, una canalización de entrega
de Terraform que incluye definiciones de destino es
llamada clouddeploy.yaml
, que, en cambio, hace referencia a objetivos definidos en
uno o más archivos separados se llaman delivery-pipeline.yaml
.
El destino puede apuntar a GKE, GKE Enterprise, o Cloud Run. En un objeto de entrega, todos los destinos deben hacer referencia al mismo tipo de entorno de ejecución (todos GKE o todo GKE Enterprise, por ejemplo).
Crea una canalización de entrega y destinos con la consola de Google Cloud
Puedes usar la consola de Google Cloud para crear una nueva canalización de publicación y un objetivo o varios. Esto es útil para probar Cloud Deploy, pero no es adecuado para cargas de trabajo de producción. (También puedes usar la consola de Google Cloud para crear una versión).
Para crear la canalización de entrega, sigue estos pasos:
En la página Canalizaciones de entrega, haz clic en Crear.
Proporciona un nombre (o mantén el predeterminado) y, de forma opcional, una descripción.
Selecciona tu región.
Elige tu entorno de ejecución.
Para GKE, elige Google Kubernetes Engine o selecciona Cloud Run si ese es el entorno de ejecución en el que realizas la implementación.
En Nueva orientación, proporciona un nombre (o mantén el valor predeterminado).
Si quieres exigir aprobación para este objetivo, selecciona la casilla de verificación Requerir aprobación para lanzamientos.
Si vas a usar un de implementación de versiones canary selecciona la casilla de verificación Habilitar versiones canary.
Haz clic en Listo.
Haz clic en Agregar destino y sigue estos pasos para cada objetivo adicional deseas crear.
Cuando tengas todos tus objetivos, haz clic en Crear para crear la publicación. la canalización y los recursos de destino.
Registra la canalización de entrega y los destinos
Si creaste tu canalización y destinos con la consola de Google Cloud, no es necesario que lo hagas.
Para registrar tu canalización de entrega con Cloud Deploy, ejecuta
gcloud deploy apply
una vez para cada archivo de definición independiente. Es decir, si
tres objetivos en tres archivos, deberías ejecutar el comando cuatro
veces, una para la canalización de entrega y una para cada destino.
El siguiente comando registra una canalización de entrega con sus destinos definidos en el mismo archivo.
gcloud deploy apply --file=PIPELINE_CONFIG \
--region=LOCATION \
--project=PROJECT
Ahora tienes una canalización de entrega que puede administrar la implementación de tus versiones y los recursos de destino que puede usar cualquier canalización de entrega en el mismo proyecto y región.
Ejemplo de un solo archivo
El comando de este ejemplo registra una canalización de publicación y los destinos que se definen en el mismo archivo:
gcloud deploy apply --file=clouddeploy.yaml --region=us-central1
Un ejemplo que usa archivos diferentes
Para este ejemplo, hay tres objetivos definidos en tres archivos separados. ejecutas cuatro comandos:
gcloud deploy apply --file=delivery-pipeline.yaml --region=us-central1 && \
gcloud deploy apply --file=target_dev.yaml --region=us-central1 && \
gcloud deploy apply --file=target_staging.yaml --region=us-central1 && \
gcloud deploy apply --file=target_prod.yaml --region=us-central1
La marca --region
es obligatoria, a menos que establezcas un valor predeterminado (con gcloud
config set deploy/region [REGION]
). La región debe ser la misma para la entrega
de Google Cloud y todos los destinos
a los que hace referencia la canalización.
Crea la canalización de entrega y los destinos con Terraform
También puedes usar Proveedor de Google Cloud Terraform para crear una canalización de entrega y objetivo de Google Cloud.
El proveedor de Terraform en fase beta de Google Cloud pueden incluir compatibilidad con las funciones de Cloud Deploy en Vista previa.
Editar canalizaciones y destinos existentes
Luego, puedes editar cualquier canalización de entrega o configuración de destino y ejecutar gcloud
deploy apply
para actualizar la canalización o el recurso de destino. Pero esos cambios
no afectan ninguna versión existente, ya que la administra la versión original
de entrega continua.
Solicitar aprobación manual para una implementación
Si deseas que se solicite la aprobación manual para un destino determinado, incluye la siguiente propiedad en la definición del objetivo:
requireApproval: true
El valor predeterminado es false
. Si omites esta propiedad de la canalización de entrega
config. o no le proporcionan ningún valor, la implementación en este destino no requiere
aprobación. (Sin embargo, el llamador que intenta promocionar al objetivo aún necesita el permiso de IAM clouddeploy.rollouts.create
).
Incluso puedes exigir la aprobación manual en el primer objetivo. Cuando una versión se
con la CLI, se crea el rollout
para el primer destino
automáticamente. Si se requiere aprobación, Cloud Deploy crea el
rollout
, pero en estado de lanzamiento pendiente hasta que se otorgue la aprobación.
¿Qué sigue?
Consulta Implementa tu aplicación. para descubrir cómo invocar tu canalización de entrega y crear una versión.