Cuando invocas Cloud Deploy para crear una versión nueva que administrará la canalización de entrega, la canalización y los destinos se conservan en su estado actual de esa versión. Aún puedes editar tu canalización de entrega y archivos de definición de destino, pero los cambios que realices solo afectan a las futuras actualizaciones.
¿Por qué Cloud Deploy hace esto?
Para que tus versiones sean confiables y duraderas, la canalización de entrega y sus recursos asociados se conservan en el momento en que se crea la versión. Esta preservación evita que los cambios recientes en la definición de la canalización de entrega afecten la versión de formas que los manifiestos generados podrían no poder admitir.
¿Por qué esto es importante?
Cuando se cambia una canalización de entrega después de crear la versión, Cloud Deploy entrega la versión según la definición de canalización anterior (como era cuando se creó la versión) no la nueva definición. Este comportamiento no es un problema, a menos que tú o alguien más de tu organización espere que la versión siga el comportamiento actualizado de la canalización.
¿Cuándo es importante?
Cuando promueves una
release
Cuando se creó la versión por primera vez, Cloud Deploy tomó una instantánea de la canalización. Esa instantánea (la instancia de canalización) es la versión de la canalización que controla el ciclo de implementación de esa
release
.Si alguien sí edita la canalización y, luego, tú pasas la versión al siguiente destino, Cloud Deploy mostrará una advertencia que te informará que es posible que la implementación no se comporte como se espera. Puedes responder si confirmas la promoción o la cancelas.
gcloud deploy releases promote… The pipeline or targets were cached when the release was created, but the source has changed since then. You should review the differences before proceeding. Promoting release xxxx-release-00n to target xxx. Do you want to continue (Y/n)?
Si confirmas que deseas continuar, la versión se promueve al clúster de destino previsto, con ese destino configurado como se definió cuando creaste la release
. Es decir, los cambios en el destino no afectan a esa release
.
Cuando apruebas una
rollout
Al igual que con la promoción, si apruebas un
rollout
y hay una discrepancia entre la instancia de canalización asociada con la versión y la definición de canalización actual, Cloud Deploy muestra un mensaje que te informa sobre la discrepancia. Puedes confirmar o cancelar la aprobación.Cuando reviertes una
release
.Si se cambia una canalización de entrega o un destino después de un
rollout
y se intenta revertir, se producirá una discrepancia de canalización. Cloud Deploy te solicitará que confirmes que deseas revertir la acción. En este caso, te recomendamos que examines el cambio en la canalización de publicación o el objetivo antes de revertirlo.
Qué puedes hacer
Si cambias una canalización de entrega o cualquiera de sus destinos después de crear una versión, puedes hacer lo siguiente:
Permite que la canalización original siga ejecutándose, sin ninguno de los cambios de la canalización editada.
Los cambios en la canalización no afectan al resto de la versión.
Crea una versión nueva.
La nueva versión usa la canalización de entrega nueva y editada, y comienza de nuevo con el primer destino en la progresión de tu canalización de entrega.