자동화 규칙 사용

이 문서에서는 배포 파이프라인에서 자동으로 수행할 수 있는 작업인 자동화 규칙에 대해 설명합니다. 예를 들어 특정 대상으로의 승격이 적절한 상황에서 자동으로 발생하도록 배포 파이프라인을 구성할 수 있습니다.

Cloud Deploy에 내장된 자동화 규칙만 사용할 수 있습니다. 이 문서에는 사용 가능한 자동화 규칙이 나와 있습니다.

사용 가능한 자동화 규칙

Cloud Deploy에서 사용할 수 있는 자동화 규칙은 다음과 같습니다.

규칙 설명
promoteReleaseRule 진행 중인 이전 대상에서 성공적으로 출시된 후 표시된 대상으로

출시 버전을 자동으로 승격합니다.

advanceRolloutRule 표시된

단계에서 다음 단계로 자동으로 출시를 진행합니다.

자동화 규칙 구성

각 자동화 규칙의 구성은 특정 규칙에 따라 다릅니다. 이 섹션에서는 모든 규칙에 공통적인 구성과 사용 가능한 각 규칙을 구성하는 방법에 대해 설명합니다.

다음 섹션에서는 개별 자동화 규칙과 관련된 구성을 설명합니다. 자동화 자체 구성은 배포 자동화를 참조하세요.

promoteReleaseRule 자동화 규칙 구성

promoteReleaseRule 규칙은 대상으로의 성공적인 출시 후 출시 버전을 승격합니다. 예를 들어 3개의 대상이 있는 경우 출시 버전이 첫 번째 대상에 성공적으로 배포되면 자동으로 두 번째 대상으로 승격되도록 이 규칙을 설정할 수 있습니다.

promoteReleaseRule 자동화를 구성할 때 승격할 대상(destinationTargetId) 또는 @next를 지정할 수 있습니다. Automation 정의에 지정된 대상에서 출시가 성공적으로 완료되면 출시 버전은 wait 시간 간격으로 destinationTargetId에 지정된 대상으로 승격됩니다.

또한 destinationPhase 속성을 사용하여 출시 버전을 의도한 대상의 특정 단계로 승격할 수 있습니다.

rules:
- promoteReleaseRule:
    name: "[RULE_NAME]"
    wait: [WAIT_TIME]
    destinationTargetId: "[TO_TARGET]"
    destinationPhase: "[TO_PHASE]"

각 항목의 의미는 다음과 같습니다.

  • [RULE_NAME]

    이 규칙에 지정할 이름입니다. 이 이름은 자동화 리소스 내에서 고유해야 합니다.

  • [WAIT_TIME]

    출시 버전이 승격될 준비가 된 후 승격되기 전까지 대기하는 시간(분)입니다. 예를 들면 1m입니다. m는 필수 항목입니다.

    기본값은 0이거나 대기 시간이 없는 것입니다. 최댓값은 20160m(또는 14일)입니다.

  • [TO_TARGET]

    승격할 대상의 targetId입니다.

    자동화 구성selector.targets 속성에 지정된 대상 이후의 다음 대상으로 출시 버전을 자동으로 승격하는 @next일 수도 있습니다. destinationTargetId에서 값을 생략할 경우 기본값입니다.

  • [TO_PHASE]

    승격할 단계의 단계 이름입니다(예: canary-25 또는 stable). 이 속성은 선택사항으로, 생략하면 출시 버전이 대상의 첫 번째 단계로 승격됩니다.

advanceRolloutRule 자동화 규칙 구성

advanceRolloutRule은 한 단계가 성공적으로 완료된 후 다음 단계로 자동으로 출시를 진행합니다. 이 자동화 규칙은 카나리아 배포에 유용합니다. 예를 들어 25%, 50%, stable 단계로 대상에 카나리아 배포 전략을 구성한 경우 50% 단계가 완료된 후 자동으로 stable로 단계를 진행하는 자동화 규칙을 구성할 수 있습니다.

advanceRolloutRule 자동화를 구성할 때 sourcePhase에서 진행할 단계를 식별합니다.

rules:
- advanceRolloutRule:
    id: "[RULE]"
    sourcePhases: ["[START_PHASE]", "[START_PHASE]"...]
    wait: [WAIT_TIME]

각 항목의 의미는 다음과 같습니다.

  • [RULE]

    이 규칙에 지정할 이름입니다. 이 이름은 전송 파이프라인 내에서 고유해야 합니다.

  • [WAIT_TIME]

    출시가 준비된 후 출시를 진행할 때까지 대기하는 시간(분)입니다. 예를 들면 1m입니다. m는 필수 항목입니다.

    기본값은 0이거나 대기 시간이 없는 것입니다. 최댓값은 20160m(또는 14일)입니다.

  • ["[START_PHASE]", "[START_PHASE]"...]

    출시가 자동으로 진행되는 단계입니다. 즉, 나열된 단계 중 하나가 성공적으로 완료되면 출시가 해당 단계에서 다음 단계로 자동 진행됩니다.

    단계 이름은 대소문자를 구분합니다. 또한 이러한 단계 이름은 선택사항입니다. sourcePhases를 생략하면 출시의 모든 단계가 자동으로 진행됩니다.

다음 단계