필수 조건
참고 항목
사용자 지정 배포 보호 규칙은 현재 공개 미리 보기 버전이며 변경될 수 있습니다.
배포 보호 규칙에 대한 일반적인 내용은 GitHub Actions를 사용하여 배포을(를) 참조하세요.
GitHub Apps을(를) 사용하여 사용자 지정 배포 보호 규칙 만들기
-
GitHub App을(를) 생성합니다. 자세한 내용은 GitHub 앱 등록을(를) 참조하세요. 다음과 같이 GitHub App을(를) 구성합니다.
- 필요에 따라 "사용자 식별 및 권한 부여"의 콜백 URL 텍스트 필드에 콜백 URL을 입력합니다. 자세한 내용은 사용자 권한 부여 콜백 URL 정보을(를) 참조하세요.
- "사용 권한"에서 리포지토리 권한을 선택합니다.
- "작업" 오른쪽에서 드롭다운 메뉴를 클릭하고 액세스: 읽기 전용을 선택합니다.
- "배포" 오른쪽에서 드롭다운 메뉴를 클릭하고 액세스: 읽기 및 쓰기를 선택합니다.
- "이벤트 구독"에서 배포 보호 규칙을 선택합니다.
-
리포지토리에 사용자 지정 배포 보호 규칙을 설치하고 사용 설정합니다. 자세한 내용은 사용자 지정 배포 보호 규칙 구성을(를) 참조하세요.
배포 승인 또는 거부하기
워크플로가 사용자 지정 배포 보호 규칙이 사용 설정된 환경을 참조하는 작업에 도달하면 GitHub에서 deployment_protection_rule
페이로드를 포함하는 사용자가 구성한 URL로 POST
요청을 보냅니다. 배포 보호 규칙을 작성하여 deployment_protection_rule
페이로드에 따라 배포를 승인하거나 거부하는 REST API 요청을 자동으로 보낼 수 있습니다. 다음과 같이 REST API 요청을 구성합니다.
-
들어오는
POST
요청의 유효성을 검사합니다. 자세한 내용은 웹후크 제공 유효성 검사하기을(를) 참조하세요. -
JWT(JSON Web Token)를 사용하여 GitHub App(으)로 인증합니다. 자세한 내용은 GitHub 앱으로 인증을(를) 참조하세요.
-
deployment_protection_rule
웹후크 페이로드의 설치 ID를 사용하여 설치 토큰을 생성합니다. 자세한 내용은 GitHub 앱을 사용한 인증 정보을(를) 참조하세요.curl --request POST \ --url "https://api.github.com/app/installations/INSTALLATION_ID/ACCESS_TOKENS" \ --header "Accept: application/vnd.github+json" \ --header "Authorization: Bearer {jwt}" \ --header "Content-Type: application/json" \ --data \ '{ \ "repository_ids": [321], \ "permissions": { \ "deployments": "write" \ } \ }'
-
필요에 따라 GitHub에 다른 작업을 수행하지 않고 상태 보고서를 추가하려면
/repos/OWNER/REPO/actions/runs/RUN_ID/deployment_protection_rule
에POST
요청을 보냅니다. 요청 본문에서state
을(를) 생략합니다. 자세한 내용은 워크플로 실행에 대한 REST API 엔드포인트을(를) 참조하세요. 동일한 배포에 상태 보고서를 최대 10번 게시할 수 있습니다. 상태 보고서는 Markdown 서식을 지원하며 최대 1024자까지 가능합니다. -
요청을 승인하거나 거부하려면
/repos/OWNER/REPO/actions/runs/RUN_ID/deployment_protection_rule
에POST
요청을 보냅니다 . 요청 본문에서state
속성을approved
또는rejected
(으)로 설정합니다. 자세한 내용은 워크플로 실행에 대한 REST API 엔드포인트을(를) 참조하세요. -
필요에 따라
/repos/OWNER/REPOSITORY_ID/actions/runs/RUN_ID/approvals
에GET
요청을 전송하여 워크플로 실행에 대한 승인 상태를 요청합니다. 자세한 내용은 워크플로 실행에 대한 REST API 엔드포인트을(를) 참조하세요. -
필요에 따라 GitHub에 대한 배포를 검토합니다. 자세한 내용은 배포 검토을(를) 참조하세요.
GitHub Marketplace에 사용자 지정 배포 보호 규칙 게시하기
GitHub App을(를) GitHub Marketplace에 게시하여 개발자가 적절한 보호 규칙을 검색하고 GitHub 리포지토리에 설치할 수 있습니다. 또는 필요에 맞게 기존 사용자 지정 배포 보호 규칙을 찾아볼 수 있습니다. 자세한 내용은 앱용 GitHub Marketplace 정보 및 GitHub Marketplace에 앱 나열을(를) 참조하세요.