출시 버전별 파이프라인 인스턴스

전달 파이프라인에서 관리할 새 출시 버전을 만들기 위해 Cloud Deploy를 호출할 때 파이프라인 및 대상은 해당 출시 버전에 대해 현재 상태로 보존됩니다. 전달 파이프라인 및 대상 정의 파일을 계속 수정할 수 있지만 이러한 변경사항은 이후 출시 버전에만 영향을 줍니다.

Cloud Deploy에서 이 작업을 수행하는 이유는 무엇인가요?

출시 버전의 신뢰성 및 내구성을 유지하기 위해 전달 파이프라인 및 연관된 해당 리소스는 출시 버전이 생성될 때 보존됩니다. 이러한 보존에 따라 전달 파이프라인 정의가 최근에 변경되더라도 생성된 매니페스트가 이를 수용할 수 없도록 출시 버전에 영향을 주지 않습니다.

이 작업이 왜 중요한가요?

출시 버전이 생성된 후 전달 파이프라인이 변경될 경우 Cloud Deploy는 새 정의가 아닌 출시 버전이 생성되었을 때의 이전 파이프라인 정의에 따라 출시 버전을 배포합니다. 사용자 또는 조직의 다른 사람이 출시 버전이 업데이트된 파이프라인 동작을 따를 것이라고 기대하지 않는 한 이 동작은 문제가 되지 않습니다.

이 작업이 중요한 경우는 언제인가요?

  • release를 승격하는 경우

    출시 버전이 처음 생성될 때 Cloud Deploy는 파이프라인의 스냅샷을 생성합니다. 이 스냅샷(파이프라인 인스턴스)은 release의 배포 주기를 제어하는 파이프라인 버전입니다.

    누군가 파이프라인을 수정한 후, 사용자가 출시 버전을 다음 대상으로 승격할 경우, Cloud Deploy는 배포가 예상한 대로 동작하지 않을 수 있음을 알리는 경고를 표시합니다. 여기에 대해서는 승격을 확인하거나 취소하는 방식으로 응답할 수 있습니다.

  gcloud deploy releases promote 
      …
      WARNING: The delivery pipeline was modified since  was created.
      This release will promote based on the state of the delivery pipeline at the
      time of release creation.
      It will not be rolled out to the pipeline in its current state.
      Promoting will result in .
      Learn more at: https://cloud.google.com/deploy/docs/pipeline-instances
      Are you sure you want to promote  to ? Y/n

작업을 계속하도록 선택하면 출시 버전이 의도된 대상 클러스터로 승격되고 대상은 release를 만들 때 정의된 대로 구성됩니다. 즉, 대상 변경사항이 release에 영향을 주지 않습니다.

  • rollout을 승인하는 경우

    승격의 경우와 마찬가지로, rollout을 승인하고 출시 버전과 연관된 파이프라인 인스턴스와 현재 파이프라인 정의 사이에 불일치가 있으면 Cloud Deploy가 이러한 불일치를 알리는 메시지를 표시합니다. 이에 대해서는 승인을 확인하거나 취소할 수 있습니다.

  • release를 롤백하는 경우

    전달 파이프라인 또는 대상이 rollout 다음에 변경되고 롤백을 시도하면 파이프라인 불일치가 발생합니다. Cloud Deploy는 정말 롤백할지 확인하는 메시지를 표시합니다. 이 경우 롤백하기 전 전달 파이프라인 또는 대상의 변경사항을 조사하는 것이 좋습니다.