본문 바로가기
C.W.K.
Stream
Lesson 06 of 12 · published

Environment 보호 규칙

~11 min · protection, approval, branch

Level 0견습생
0 XP0/101 lessons0/10 achievements
0/120 XP to next level120 XP to go0% complete

배포 게이트

환경은 작업이 그 환경을 대상으로 하기 전에 게이트를 요구할 수 있어. Settings → Environments → <name>에서 설정해.

필수 검토자

  • 최대 6명의 사용자나 팀을 지정할 수 있어.
  • 작업이 일시 중지되고 검토자에게 'Review pending deployments' 버튼이 보여.
  • 검토자는 실행을 트리거한 사람이면 안 돼 (설정으로 바꿀 수 있어).

대기 타이머

  • 승인 후 실행까지 지연을 강제할 수 있어 (0~30일).
  • 쿨링 기간, 일괄 배포, 업무 시간 창에 활용해.

배포 브랜치 정책

  • 배포를 특정 브랜치로 제한해 (보통 main만).
  • 또는 특정 태그로 제한할 수도 있어 (릴리스용 v*.*.*).
  • 이 정책이 없으면 기능 브랜치에서 YAML 한 줄만 바꿔도 프로덕션에 배포할 수 있어.

사용자 정의 배포 보호 규칙 (베타)

  • 배포에 투표하는 앱: 변경 관리 티켓, 관측 가능성 예산 등.
  • 게이트가 GitHub 외부 데이터를 필요로 할 때 유용해.

Code

Rule 가진 환경 에 고정 된 작업·yaml
  deploy-prod:
    needs: build
    runs-on: ubuntu-latest
    environment:
      name: production
      url: https://www.example.com
    # required reviewers + branch policy live in repo Settings → Environments
    # The YAML just opts into them by naming the environment.
    steps:
      - uses: actions/checkout@v4
      - run: ./deploy.sh prod

External links

Exercise

실제 운영 환경에서 다음을 설정해 봐: 필수 검토자(최소 본인), main 브랜치만 허용하는 브랜치 정책, 5분 대기 타이머. main에서 배포를 트리거하고 게이트가 작동하는지 확인해.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.