본문 바로가기
WIKI 기술 지식 베이스

Datadog 모니터로 GitHub Actions 배포 게이팅하기

원문 보기 위키 갱신

Datadog 모니터로 GitHub Actions 배포 게이팅하기 (Gating your GitHub Actions Deployments with Datadog Monitors)

{% callout %}

다음 Datadog 사이트 사용자에게 중요한 안내: app.ddog-gov.com, us2.ddog-gov.com

{% alert level="danger" %} 이 제품은 선택한 Datadog 사이트에서 지원되지 않아요. {% placeholder "user-datadog-site-name" /%}. {% /alert %}

{% /callout %}

Datadog는 GitHub Actions Deployment Protection Rules의 통합 파트너예요. 이를 통해 최종 고객에게 고품질 애플리케이션을 전달할 수 있어요. Datadog 모니터로 GitHub Actions 배포 워크플로우에 품질 게이트(quality gate)를 적용할 수 있어요.

이 기능은 GitHub Enterprise Cloud의 모든 Datadog 고객에게 제공되며, CI Visibility 사용은 필요하지 않아요.

출처: 문서

본문

Deployment Protection Rules 활성화하기 (Enable Deployment Protection Rules)

애플리케이션 배포의 품질 검사를 위해 Datadog에 의존하려면, 애플리케이션에서 Deployment Protection Rules 기능을 활성화해야 해요.

Datadog에서 새 GitHub 애플리케이션 설정하기 (Set up a new GitHub application in Datadog)

Datadog에 자동으로 연결되는 GitHub 애플리케이션을 만들려면 이 지침을 참고해요. Deployment Protection Rules 체크박스를 반드시 선택해요.

{% image source="https://docs.dd-static.net/images/ci/github_gates_new_app.dfb6307b6410878a044cf0a3fa98f068.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/ci/github_gates_new_app.dfb6307b6410878a044cf0a3fa98f068.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Datadog GitHub pull request comment preview" /%}

이미 설정되어 Datadog에 연결된 GitHub 애플리케이션이 있다면, 앱 내 GitHub 통합 타일에서 Deployment Protection Rules를 활성화하는 링크를 찾을 수 있어요.

{% image source="https://docs.dd-static.net/images/ci/github_gates_existing_app.a3012fd3f6b01e5fbcaad5bb98d990f3.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/ci/github_gates_existing_app.a3012fd3f6b01e5fbcaad5bb98d990f3.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Datadog GitHub pull request comment preview" /%}

GitHub에서 Deployment Protection Rules 구성하기 (Configure Deployment Protection Rules in GitHub)

  1. Deployments에 읽기 및 쓰기 권한을 활성화해요.
  2. Actions에 읽기 권한을 활성화해요.
  3. 애플리케이션의 Subscribe to events에서 Deployment protection rule 체크박스를 선택해요.
  4. 리포지토리에서 Settings를 클릭하고, Code and Automation 섹션 아래 Environments를 클릭한 다음, Deployment Protection Rules 아래에서 Datadog 통합과 연결된 GitHub 애플리케이션을 활성화해요.

배포를 게이팅할 모니터 만들기 (Create monitors to gate your deployments)

GitHub Actions 배포 게이팅에 사용할 Datadog 모니터를 만들고 구성하려면 이 지침을 따라 해요.

품질 검사에 여러 개의 별도 모니터를 사용할 수도 있지만, Datadog는 복합 모니터(composite monitors)를 권장해요. 복합 모니터를 사용하면 하나의 모니터로 두 개 이상의 신호를 기반으로 배포를 게이팅할 수 있기 때문이에요. 자세한 내용은 모니터 유형(Monitor Types)을 참고해요.

품질 게이팅에 사용할 모든 모니터는 다음 태그로 올바르게 태깅되어 있어야 해요:

  • git_env
  • git_repo

git_repo 태그는 <OWNER>/<REPO> 형식으로 리포지토리 소유자 이름을 포함해야 해요. 예를 들어 Datadog/my-repo처럼요.

워크플로우를 실행하면 GitHub Actions가 Datadog 모니터에 요청을 보내요. 아래 나열된 모니터 평가 결과 중 하나에 따라 Datadog가 GitHub에 코멘트를 보내는데, 이는 워크플로우 실행 내에서 관련 이벤트와 환경에 대한 GitHub의 Comment 섹션에서 확인할 수 있어요.

  • 배포와 연결된 모든 모니터(환경 및 리포지토리 태그로 연결)가 OK 상태이면 Datadog는 배포를 승인해요.
  • 배포와 연결된 모니터 중 하나라도 OK 상태가 아니면(ALERT, WARN, 또는 NODATA) Datadog는 배포를 거부해요.

예시 품질 검사 (Example quality checks)

애플리케이션 성능 (Application performance)

배포 전에 애플리케이션의 오류율 및/또는 평균 지연 시간이 특정 임계값 아래인지 확인하려면 APM 모니터를 사용하면 돼요.

환경 인프라 상태 (Environment infrastructure health)

배포 전에 애플리케이션이나 서비스의 CPU 및/또는 메모리 사용량을 확인하려면 통합(integration) 및 메트릭 모니터(metric monitors)를 사용해요.

더 알아보기 (Learn more)