Instancias de flujo de procesamiento por versión

Cuando invocas Cloud Deploy para crear una versión que gestione tu flujo de procesamiento de entrega, la canalización y los destinos se conservan en su estado actual para esa versión. Puedes seguir editando tu canal de distribución y tus archivos de definición de destino, pero los cambios que hagas solo afectarán a las versiones futuras.

¿Por qué hace esto Cloud Deploy?

Para que tus lanzamientos sean fiables y duraderos, el flujo de procesamiento de entrega y sus recursos asociados se conservan en el momento en que se crea el lanzamiento. De esta forma, se evita que los cambios recientes en la definición de la canalización de entrega afecten al lanzamiento de formas que los manifiestos generados no puedan admitir.

¿Por qué es importante?

Si se cambia una canalización de entrega después de crear una versión, Cloud Deploy entrega la versión según la definición de la canalización anterior (tal como estaba cuando se creó la versión), no según la nueva definición. Este comportamiento no supone un problema a menos que tú u otra persona de tu organización esperéis que la versión siga el comportamiento actualizado de la canalización.

¿Cuándo es importante?

  • Cuando promocionas un release

    Cuando se creó la versión por primera vez, Cloud Deploy hizo una instantánea de la canalización. Esa instantánea, la instancia de la canalización, es la versión de la canalización que controla el ciclo de implementación de ese release.

    Si alguien edita la canalización y, a continuación, asciendes la versión a la siguiente de destino, Cloud Deploy muestra una advertencia para informarte de que es posible que la implementación no se comporte como esperas. Puedes responder confirmando la promoción o cancelándola.

  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 confirma que quiere continuar, la versión se promocionará al clúster de destino previsto, con ese destino configurado tal como se definió al crear el release. Es decir, los cambios en el objetivo no afectan a ese release.

  • Cuando apruebas un rollout

    Al igual que con las promociones, si apruebas un rollout y hay una discrepancia entre la instancia de la canalización asociada al lanzamiento y la definición de la canalización actual, Cloud Deploy muestra un mensaje que te informa de la discrepancia. Puedes confirmar o cancelar la aprobación.

  • Cuando reviertes una release.

    Si se cambia una canalización o un destino de entrega después de un rollout y se intenta restaurar una versión anterior, habrá un error de coincidencia en la canalización. Cloud Deploy te pedirá que confirmes que quieres restaurar la versión anterior. En este caso, te recomendamos que examines el cambio en la canalización de entrega o en el destino antes de revertir el cambio.

Qué puedes hacer

Si cambias una canalización de distribución o cualquiera de sus destinos después de crear una versión, puedes hacer lo siguiente:

  • Dejar 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.

    La nueva versión usa la nueva canalización de entrega editada y vuelve a empezar con el primer objetivo de la progresión de la canalización de entrega.