Skip to main content

GitHub CLI를 사용하여 테스트용 웹후크 전달하기

GitHub CLI을(를) 사용하여 포트 전달 또는 제3자 도구의 복잡성 없이 개발 환경에서 웹후크를 테스트할 수 있습니다.

GitHub CLI을(를) 통한 웹후크 수신 알아보기

통합 코드를 변경할 때 로컬 환경에서 코드를 실행하면 코드를 배포하지 않고도 신속하게 테스트하고 반복할 수 있습니다. GitHub CLI을(를) 사용하여 웹후크를 로컬 환경으로 전달할 수 있습니다.

GitHub CLI의 웹후크 전달은 리포지토리 및 조직 웹후크에서만 작동합니다. 다른 유형의 웹후크를 로컬로 테스트하려면 이 작업을 수동으로 수행해야 합니다. 자세한 내용은 웹후크 테스트을(를) 참조하세요.

Warning

웹후크 전달은 테스트와 개발 중에만 사용하도록 설계되었습니다. 라이브 웹후크 처리 목적으로 프로덕션 환경에서는 사용할 수 없습니다.

GitHub CLI을(를) 통해 웹후크 수신하기

Note

GitHub CLI에 대한 자세한 내용은 "GitHub CLI 정보"을 참조하세요.

  1. 웹후크 전달을 사용 설정하기 위해 GitHub CLI 확장 프로그램을 설치하려면 extension install 하위 명령을 사용합니다.

    gh extension install cli/gh-webhook
    
  2. 조직 웹후크를 전달하려면 필요한 권한이 있도록 GitHub CLI 로그인에 admin:org_hook 범위를 추가합니다.

    gh auth refresh --scopes admin:org_hook
    
  3. 로컬에서 애플리케이션을 시작하고 웹후크를 수신할 것으로 예상되는 URL을 기록해 둡니다. 이 가이드에서는 애플리케이션이 http://localhost:3000/webhook에서 웹후크 이벤트를 수신 대기하고 있다고 가정합니다.

  4. 애플리케이션에 제공할 웹후크를 설정하려면 webhook forward 하위 명령을 실행합니다. REPOSITORY을(를) 리포지토리 소유자의 이름으로 바꿉니다. 예들 들어 monalisa/octocat입니다. EVENTS을(를) 수신하려는 이벤트의 쉼표로 구분된 목록으로 바꿉니다. 예들 들어 issues,pull_request입니다. URL을(를) 애플리케이션에서 웹후크를 수신할 것으로 예상되는 로컬 URL로 바꿉니다. 예들 들어 "http://localhost:3000/webhook"입니다. 리포지토리 웹후크 대신 조직 웹후크를 수신하려면 --repo 플래그를 --org 플래그로 바꿉니다. 예: --org="octo-org".

    gh webhook forward --repo=REPOSITORY --events=EVENTS --url=URL
    

그런 다음, 명령이 백그라운드에서 계속 실행됩니다. 지정된 리포지토리에 대해 지정된 모든 이벤트를 수신하고 지정된 URL에서 실행되는 웹후크 처리기로 전달합니다.

Note

각 리포지토리와 조직에 대해 한 번에 한 사람만 웹후크 전달을 사용할 수 있습니다. 웹후크 전달을 설정하려고 할 때 다른 사용자가 이미 해당 조직 또는 리포지토리에서 작업 중인 경우 Hook already exists 오류가 발생합니다.