

Amazon CodeCatalyst는 더 이상 신규 고객에게 공개되지 않습니다. 기존 고객은 정상적으로 서비스를 계속 이용할 수 있습니다. 자세한 내용은 [CodeCatalyst에서 마이그레이션하는 방법](migration.md) 단원을 참조하십시오.

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

# 워크플로 게이팅
<a name="workflows-gates"></a>

*게이트*는 특정 조건이 충족되지 않으면 워크플로 실행이 진행되지 않도록 하는 데 사용할 수 있는 워크플로 구성 요소입니다. 게이트의 예시로는 사용자가 워크플로 실행을 계속하기 전에 CodeCatalyst 콘솔에서 승인을 제출해야 하는 **승인** 게이트를 들 수 있습니다.

워크플로의 일련의 작업 사이에 또는 첫 번째 작업(**소스** 다운로드 직후에 실행되는) 전에 게이트를 추가할 수 있습니다. 필요한 경우 마지막 작업 후 게이트를 추가할 수도 있습니다.

워크플로 실행에 대한 자세한 내용은 [워크플로 실행](workflows-working-runs.md) 섹션을 참조하세요.

**Topics**
+ [게이트 유형](#workflows-gates-types)
+ [다른 작업과 병렬로 실행되도록 게이트를 설정할 수 있나요?](#workflows-approval-parallel)
+ [게이트를 사용하여 워크플로 실행이 시작되지 않도록 할 수 있나요?](#workflows-gates-prevent)
+ [게이트의 제한 사항](#workflows-gate-limitations)
+ [워크플로에 게이트 추가](workflows-gates-add.md)
+ [게이트 및 작업 순서 지정](workflows-gates-depends-on.md)
+ [게이트의 버전 지정](workflows-gates-version.md)

## 게이트 유형
<a name="workflows-gates-types"></a>

현재 Amazon CodeCatalyst는 **승인** 게이트라는 한 가지 유형의 게이트를 지원합니다. 자세한 내용은 [워크플로 실행에 대한 승인 요구](workflows-approval.md) 섹션을 참조하세요.

## 다른 작업과 병렬로 실행되도록 게이트를 설정할 수 있나요?
<a name="workflows-approval-parallel"></a>

아니요. 게이트는 작업 전후에만 실행할 수 있습니다. 자세한 내용은 [게이트 및 작업 순서 지정](workflows-gates-depends-on.md) 섹션을 참조하세요.

## 게이트를 사용하여 워크플로 실행이 시작되지 않도록 할 수 있나요?
<a name="workflows-gates-prevent"></a>

예, 자격 조건이 있습니다.

워크플로 실행이 *태스크를 수행*하지 못하도록 할 수 있습니다. 이는 워크플로 실행이 *시작*하지 못하도록 하는 것과 약간 다릅니다.

워크플로가 작업을 수행하지 못하도록 워크플로의 첫 번째 작업 앞에 게이트를 추가합니다. 이 시나리오에서는 워크플로 실행이 *시작됩니다.* 즉, 소스 리포지토리 파일을 다운로드하지만 게이트가 잠금 해제될 때까지 태스크를 수행할 수 없습니다.

**참고**  
워크플로가 시작되었다가 게이트에 의해 차단된 경우에도 *스페이스당 최대 동시 워크플로 실행 수* 할당량 및 기타 할당량에 포함됩니다. 워크플로 할당량을 초과하지 않도록 하려면 게이트를 사용하는 대신 워크플로 트리거를 사용하여 워크플로를 조건부로 시작하는 것이 좋습니다. 게이트 대신 풀 요청 승인 규칙을 사용하는 것도 좋습니다. 할당량, 트리거 및 풀 요청 승인 규칙에 대한 자세한 내용은 [CodeCatalyst의 워크플로 할당량](workflows-quotas.md), [트리거를 사용하여 워크플로 실행 자동 시작](workflows-add-trigger.md) 및 [풀 요청을 승인 규칙과 병합하기 위한 요구 사항 관리](source-pull-requests-approval-rules.md) 섹션을 참조하세요.

## 게이트의 제한 사항
<a name="workflows-gate-limitations"></a>

게이트에는 다음과 같은 제한 사항이 있습니다.
+ 게이츠는 컴퓨팅 공유 특성과 함께 사용할 수 없습니다. 이 기능에 대한 자세한 내용은 [작업 간에 컴퓨팅 공유](compute-sharing.md)을 참조하세요.
+ 게이트는 작업 그룹 내에서 사용할 수 없습니다. 작업 그룹에 대한 자세한 내용은 [작업을 작업 그룹으로 그룹화](workflows-group-actions.md) 섹션을 참조하세요.

# 워크플로에 게이트 추가
<a name="workflows-gates-add"></a>

Amazon CodeCatalyst에서는 워크플로에 게이트를 추가하여 특정 조건이 충족되지 않으면 진행되지 않도록 할 수 있습니다. 다음 안내에 따라 워크플로에 게이트를 추가합니다.

게이트에 대한 자세한 내용은 [워크플로 게이팅](workflows-gates.md) 섹션을 참조하세요.

**게이트 추가 및 구성**

1. [https://codecatalyst.aws/](https://codecatalyst.aws/)에서 CodeCatalyst 콘솔을 엽니다.

1. 프로젝트를 선택합니다.

1. 탐색 창에서 **CI/CD**를 선택한 다음 **워크플로**를 선택합니다.

1. 워크플로의 이름을 선택합니다. 소스 리포지토리 또는 워크플로가 정의된 브랜치 이름을 기준으로 필터링하거나, 워크플로 이름 또는 상태를 기준으로 필터링할 수 있습니다.

1. **Edit**(편집)을 선택합니다.

1. **비주얼**을 선택합니다.

1. 왼쪽에서 **게이트**를 선택합니다.

1. 게이트 카탈로그에서 게이트를 검색한 다음 더하기 기호(**\$1**)를 선택하여 워크플로에 게이트를 추가합니다.

1. 게이스 구성 시각적 편집기를 사용하려면 **비주얼**을 선택하고, YAML 편집기를 사용하려면 **YAML**을 선택합니다. 자세한 지침은 다음을 참조하세요.
   + ['승인' 게이트 추가](workflows-approval-add.md)

1. (선택 사항) YAML 코드가 유효한지 확인하려면 **검증**을 선택합니다.

1. **커밋**을 선택하여 변경 사항을 커밋합니다.

# 게이트 및 작업 순서 지정
<a name="workflows-gates-depends-on"></a>

Amazon CodeCatalyst에서는 워크플로 작업, 작업 그룹 또는 게이트의 전후에 실행되도록 게이트를 설정할 수 있습니다. 예를 들어 `Deploy` 작업 전에 실행할 `Approval` 게이트를 설정할 수 있습니다. 이 경우 `Deploy` 작업은 `Approval` 게이트에 *종속된다*고 합니다.

게이트와 작업 간의 종속성을 설정하려면 게이트 또는 작업의 **Depends on** 속성을 구성합니다. 지침은 [작업 간 종속성 설정](workflows-depends-on-set-up.md) 섹션을 참조하세요. 참조된 지침은 워크플로 *작업*을 참조하지만 게이트에도 동일하게 적용됩니다.

게이트에서 **Depends on** 속성을 설정하는 방법의 예시는 [예시: '승인' 게이트](workflows-approval-example.md) 섹션을 참조하세요.

게이트에 대한 자세한 내용은 [워크플로 게이팅](workflows-gates.md) 섹션을 참조하세요.

워크플로 작업에 대한 자세한 내용은 [워크플로 작업 구성](workflows-actions.md) 섹션을 참조하세요.

# 게이트의 버전 지정
<a name="workflows-gates-version"></a>

기본적으로 워크플로에 게이트를 추가하면 CodeCatalyst는 형식을 사용하여 워크플로 정의 파일에 전체 버전을 추가합니다.

`vmajor.minor.patch` 

예:

```
My-Gate:
  Identifier: aws/approval@v1
```

워크플로가 특정 메이저 또는 마이너 버전의 게이트를 사용하도록 버전을 늘릴 수 있습니다. 지침은 [사용할 작업 버전 지정](workflows-action-versions.md) 섹션을 참조하세요. 참조된 주제는 워크플로 작업을 참조하지만 게이트에도 동일하게 적용됩니다.

CodeCatalyst의 게이트에 대한 자세한 내용은 [워크플로 게이팅](workflows-gates.md) 섹션을 참조하세요.