

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 스테이지 조건은 어떻게 작동하나요?
<a name="concepts-how-it-works-conditions"></a>

규칙을 지정하는 각 조건에 대해 규칙이 실행됩니다. 조건이 실패할 경우 결과가 적용됩니다. 스테이지는 조건이 실패할 때만 지정된 결과를 수행합니다. 선택적으로 규칙의 일부로서 CodePipeline이 특정 경우에 사용해야 하는 리소스도 지정합니다. 예를 들어 `CloudWatchAlarm` 규칙은 CloudWatch 경보 리소스를 사용하여 조건에 대한 검사를 실행합니다.

조건은 여러 규칙과 일치할 수 있으며 각 규칙은 세 공급자 중 하나를 지정할 수 있습니다.

다음과 같이 조건을 생성하기 위한 상위 수준 흐름입니다.

1. CodePipeline의 사용 가능한 조건 유형에서 조건 유형을 선택합니다. 예를 들어, 스테이지 성공 후 계속 진행하기 전에 일련의 규칙을 사용하여 검사를 실행할 수 있도록 성공 시 조건 유형을 사용하여 스테이지를 설정합니다.

1. [] 규칙을 선택합니다. 예를 들어 `CloudWatchAlarm` 규칙은 경보를 확인하고 EB를 사용하여 사전 구성된 경보 임계값을 확인합니다. 확인에 성공하고 경보가 임계값 미만인 경우 스테이지를 진행할 수 있습니다.

1. 규칙이 실패할 경우 사용할 롤백과 같은 결과를 구성합니다.

조건은 특정 유형의 표현식에 사용되며 각 표현식에는 다음과 같이 사용할 수 있는 결과에 대한 특정 옵션이 있습니다.
+ **입력** - 충족되는 경우 스테이지에 대한 진입을 허용하는 검사 수행 조건입니다. 규칙은 **실패** 또는 **건너뛰기** 결과 옵션과 함께 사용됩니다.
+ **실패 시** - 스테이지가 실패할 때 스테이지를 확인하기 위한 조건입니다. 규칙은 **롤백** 결과 옵션과 함께 사용됩니다.
+ **성공 시** - 스테이지가 성공할 때 스테이지를 확인하기 위한 조건입니다. 규칙은 **롤백** 또는 **실패**와 같은 결과 옵션과 함께 사용됩니다.

다음 다이어그램은 CodePipeline의 입력 조건 유형에 대한 예제 흐름을 보여줍니다. 조건이 충족되지 않으면 어떻게 되나요? 규칙이 실패하나요? 라는 질문에 조건이 답합니다. 다음 흐름에서 입력 조건은 LambdaInvoke 규칙과 `CloudWatchAlarm` 규칙으로 구성됩니다. 규칙이 실패하면 실패와 같은 구성된 결과가 적용됩니다.

![LambdaInvoke 규칙과 CloudWatchAlarm 규칙이라는 두 가지 규칙이 구성된 입력 조건 유형의 예입니다.](http://docs.aws.amazon.com/ko_kr/codepipeline/latest/userguide/images/conditions-overview-entry.png)


다음 다이어그램은 CodePipeline의 실패 시 조건 유형에 대한 예제 흐름을 보여줍니다. 조건이 충족되면 어떻게 되나요? 규칙이 모두 검사에 성공하나요? 라는 질문에 조건이 답합니다. 다음 흐름에서 실패 시 조건은 LambdaInvoke 규칙과 `CloudWatchAlarm` 규칙으로 구성됩니다. 규칙이 성공하면 실패와 같은 구성된 결과가 적용됩니다.

![Lambda 규칙과 CloudWatchAlarm 규칙이라는 두 가지 규칙으로 구성된 실패 시 조건 유형의 예입니다.](http://docs.aws.amazon.com/ko_kr/codepipeline/latest/userguide/images/conditions-overview-onfailure.png)


다음 다이어그램은 CodePipeline의 성공 시 조건 유형에 대한 예제 흐름을 보여줍니다. 조건이 충족되면 어떻게 되나요? 규칙이 모두 검사에 성공하나요? 라는 질문에 조건이 답합니다. 다음 흐름에서 성공 시 조건은 `LambdaInvoke` 규칙과 `CloudWatchAlarm` 규칙으로 구성됩니다. 규칙이 성공하면 실패와 같은 구성된 결과가 적용됩니다.

![Lambda 규칙과 CloudWatchAlarm 규칙이라는 두 가지 규칙으로 구성된 성공 시 조건 유형의 예입니다.](http://docs.aws.amazon.com/ko_kr/codepipeline/latest/userguide/images/conditions-overview-onsuccess.png)




## 스테이지 조건에 대한 규칙
<a name="concepts-how-it-works-rules"></a>

스테이지 조건을 구성할 때 사전 정의된 규칙에서 선택하고 규칙에 대한 결과를 지정합니다. 조건의 규칙 중 하나라도 실패하면 조건 상태가 실패하고 모든 규칙이 성공하면 성공합니다. 실패 시 및 성공 시 조건에 대한 기준이 충족되는 방법은 규칙 유형에 따라 다릅니다.

다음은 스테이지 조건에 추가할 수 있는 관리형 규칙입니다.
+ 조건은 **명령** 규칙을 사용하여 조건에 대한 규칙 기준을 충족하는 명령을 지정할 수 있습니다. 이 규칙에 대한 자세한 내용은 [명령](rule-reference-Commands.md) 섹션을 참조하세요.
+ 조건은 **AWS DeploymentWindow** 규칙을 사용하여 배포를 허용하는 승인된 배포 시간을 지정할 수 있습니다. 규칙의 기준은 배포 창에 제공된 cron 표현식으로 측정됩니다. 배포 창의 날짜 및 시간이 규칙의 cron 표현식 기준을 충족하면 규칙이 성공합니다. 이 규칙에 대한 자세한 내용은 [DeploymentWindow](rule-reference-DeploymentWindow.md) 섹션을 참조하세요.
+ 조건은 **AWS Lambda** 규칙을 사용하여 구성된 Lambda 함수에서 반환된 오류 상태를 확인할 수 있습니다. 확인이 Lambda 함수 결과를 수신하면 규칙이 충족됩니다. Lambda 함수의 오류는 실패 시 조건의 기준을 충족합니다. 이 규칙에 대한 자세한 내용은 [LambdaInvoke](rule-reference-LambdaInvoke.md) 섹션을 참조하세요.
+ 조건은 **AWS CloudWatchAlarm** 규칙을 사용하여 CloudWatch 이벤트에서 구성된 경보를 확인할 수 있습니다. 확인이 OK, ALARM 또는 INSUFF\_DATA의 경보 상태를 반환하면 규칙이 충족됩니다. 성공 시 조건의 경우 OK 및 INSUFFICIENT\_DATA가 기준을 충족합니다. ALARM은 실패 시 조건에 대한 기준을 충족합니다. 이 규칙에 대한 자세한 내용은 [CloudWatchAlarm](rule-reference-CloudWatchAlarm.md) 섹션을 참조하세요.
+ 조건은 **VariableCheck** 규칙을 사용하여 출력 변수가 제공된 표현식에 대해 확인되는 조건을 생성할 수 있습니다. 규칙은 변수 값이 지정된 출력 변수와 같거나 큰 값과 같은 규칙 기준을 충족할 때 확인을 전달합니다. 이 규칙에 대한 자세한 내용은 [VariableCheck](rule-reference-VariableCheck.md) 섹션을 참조하세요.