배포 보호 규칙
배포 보호 규칙은 작업을 계속하기 전에 충족해야 하는 특정 조건을 요구합니다. 환경 참조 작업의 경우 이러한 조건이 필요합니다. 배포 보호 규칙을 통해 수동 승인을 요청하거나 작업 지연, 특정 분기로의 환경 제한 등의 조치를 취할 수 있습니다. 또한 GitHub Apps로 구동되는 사용자 지정 보호 규칙을 만들어 구현하면 타사 시스템을 사용하여 GitHub에 구성된 환경을 참조하는 배포를 제어할 수도 있습니다.
타사 시스템에는 관찰성 시스템, 변경 관리 시스템, 코드 품질 시스템 또는 환경에 안전하게 배포를 롤아웃하기 전에 준비 상태를 평가하는 데 사용되는 기타 수동 구성이 포함될 수 있습니다.
참고
리포지토리에 GitHub Apps 기반 배포 보호 규칙을 원하는 만큼 설치할 수 있습니다. 하지만 환경에 상관없이 배포 보호 규칙은 동시에 6개까지만 사용하도록 설정할 수 있습니다.
필수 검토자
필수 검토자를 사용하여 특정 사용자 또는 팀이 환경을 참조하는 워크플로 작업을 승인하도록 요구합니다. 최대 6명의 사용자 또는 팀을 검토자로 나열할 수 있습니다. 검토자는 적어도 리포지토리에 대한 읽기 권한이 있어야 합니다. 작업을 계속하려면 필수 검토자 중 한 명만 작업을 승인하면 됩니다.
보호된 환경에 배포할 때 자체 검토를 생략하는 옵션도 있습니다. 이 옵션을 활성화하면 배포를 시작한 사용자가 필수 검토자일 경우, 해당 배포 작업을 승인할 수 없게 됩니다. 이 방법을 사용하면 보호된 환경에 대한 배포 시 항상 두 명 이상의 검토를 거치게 됩니다.
필수 검토자가 있는 환경을 참조하는 작업을 검토하는 방법은 배포 상태 검토에서 자세히 알아보실 수 있습니다.
대기 타이머
대기 타이머를 사용하여 작업이 처음 트리거된 후 특정 시간 동안 작업을 지연시킵니다. 시간은 분 단위로 0에서 43,200(30일에 해당) 사이의 정수여야 합니다. 대기 시간은 청구 시간으로 계산되지 않습니다.
배포 분기 및 태그
배포 분기 및 태그를 설정하여 특정 환경에 배포 가능한 분기와 태그를 제한할 수 있습니다. 환경 설정에 따른 배포 시 분기 및 태그 옵션은 다음과 같습니다.
-
**제한 없음**: 환경에 배포 가능한 분기 또는 태그에 대한 제한이 없습니다. -
**보호된 분기만:** 분기 보호 규칙이 설정된 분기로만 환경에 배포할 수 있습니다. 리포지토리의 모든 분기에 정의된 분기 보호 규칙이 없는 경우 모든 분기를 배포할 수 있습니다. 분기 보호 규칙에 대한 자세한 내용은 [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches)을(를) 참조하세요.참고
배포 워크플로는 보호된 분기 이름과 동일한 태그에 의해 트리거되며, 보호된 분기 이름과 일치하는 분기가 있는 포크는 환경에 배포할 수 없습니다.
-
**선택한 분기 및 태그:** 이름 패턴이 지정된 분기와 태그만 환경에 배포 가능합니다.배포 분기 또는 태그 규칙은 워크플로 실행의
GITHUB_REF과 일치해야 합니다. 각 워크플로 트리거에GITHUB_REF대한 값은 워크플로를 트리거하는 이벤트을 참조하세요. 배포 분기 또는 태그 규칙으로을(를) 지정하면, 이름이 로 시작하는 만 환경에 배포할 수 있습니다. 다른 분기 규칙을 refs/pull/*/merge에 추가하면pull_request이벤트에 의해 트리거된 워크플로가 환경에 배포될 수 있습니다. 와일드카드 문자는/와 일치하지 않습니다.release/로 시작하고 추가적인 슬래시를 포함하는 분기나 태그를 일치시키려면release/*/*를 사용하십시오. 배포 분기에 대한 구문 옵션을 더 자세히 알고 싶다면 RubyFile.fnmatch설명서를 참조하세요.참고
이름 패턴은 분기나 태그에 대해 개별적으로 구성해야 합니다.
관리자에게 구성된 보호 규칙을 무시할 수 있는 권한을 부여합니다.
기본적으로 관리자는 보호 규칙을 무시하고 특정 환경에 강제로 배포를 진행할 수 있습니다. 자세한 내용은 배포 상태 검토을(를) 참조하세요.
또는 환경에 대해 배포할 때 보호 규칙을 항상 따르도록 환경을 구성할 수 있습니다.
사용자 지정 배포 보호 규칙
참고
사용자 지정 배포 보호 규칙은 현재 공개 미리 보기 버전이며 변경될 수 있습니다.
타사 서비스를 사용하여 배포를 제어하는 사용자 지정 보호 규칙을 사용하도록 설정할 수 있습니다. 예를 들어 Datadog, Honeycomb, ServiceNow와 같은 서비스를 사용하여 GitHub에 대한 배포에 자동화된 승인을 제공할 수 있습니다. 자세한 내용은 사용자 지정 배포 보호 규칙 만들기을(를) 참조하세요.
사용자 지정 배포 보호 규칙이 생성되어 리포지토리에 설치되면, 리포지토리의 모든 환경에 대해 해당 규칙을 활성화할 수 있습니다. 사용자 지정 배포 보호 규칙을 설정하고 사용하는 방법에 대한 자세한 내용은 사용자 지정 배포 보호 규칙 구성을 참고하세요.
환경 비밀
환경에 저장된 비밀은 환경을 참조하는 워크플로 작업에서만 사용할 수 있습니다. 환경에 승인이 필요한 경우 필수 검토자 중 한 명이 승인할 때까지 작업에서 환경 비밀에 액세스할 수 없습니다. 비밀에 관한 자세한 내용은 비밀 항목을 참조하세요.
참고
자체 호스트형 실행기에서 실행되는 워크플로는, 환경을 사용하더라도 격리된 컨테이너 내에서 실행되지 않습니다. 환경 비밀을 리포지토리 및 조직 비밀과 동일한 수준의 보안으로 취급해야 합니다. 자세한 내용은 안전 사용 참조을(를) 참조하세요.
환경 변수
환경에 저장된 변수는 해당 환경을 참조하는 워크플로 작업 내에서만 사용 가능합니다. 이러한 변수들은 vars 컨텍스트를 통해서만 액세스할 수 있습니다. 자세한 내용은 변수에 정보 저장을(를) 참조하세요.