해표
HapyoLab
해표
전체 방문자
오늘
어제
  • 분류 전체보기 (83)
    • IT (53)
    • 자전거 여행 (14)
    • DevOps (8)
    • Cloud (1)
    • OS (0)
    • Android (0)
    • Programming (0)

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
해표

HapyoLab

Jenkins Github Webhook 연동
DevOps

Jenkins Github Webhook 연동

2022. 4. 1. 17:08

github-webhook 방법 보다는 token을 이용한 generic-webhook-tigger를 추천한다. 이유는 webhook 걸려는 git 프로젝트가 하나 이상의 젠킨스 프로젝트에 설정되있을 경우 모두 webhook이 걸려버린다. 가령 나는 젠킨스의 A 프로젝트만 webhook 걸려고 하는데 B 프로젝트에서도 같은 git 프로젝트가 설정되있으면 A, B모두 webhook이 걸린다. 따라서 내가 원하는 젠킨스 프로젝트만 webhook을 걸려면 generic-webhook-trigger를 이용하면 된다.

1. Github 설정

  • Github 우측 상단 아이콘을 클릭하고 Settings 클릭
  • 좌측 메뉴에서 Development settings -> Personal access tokens -> Generate new token 클릭
  • 범위 선택
  • Access Token 생성 완료 (편집기에 저장)

2. Jenkins 설정

  • 프로젝트 -> Build Triggers -> Generic Webhook Trigger 체크박스에 체크
  • Post Content parameters (Webhook을 통해 넘어온 데이터에서 사용할 값 설정)
    • Variable : Ref
      • branch 정보가 담겨있는 ref값을 저장하기 위해 variable에 ref를 입력
    • Expression : $.ref
      • JSONPath 선택
  • Token
    • Github에서 발급한 Access Token 입력
  • Optional filter
    • Expression : ^(refs/heads/master) 
      • master 브랜치를 의미
    • Text : $ref

3. Github Webhook 설정

  • 해당 Repository -> Settings -> Webhooks -> Add webhook
  • Payload URL
    • http://JENKINS_URL/generic-webhook-trigger/invoke?token=TOKEN
    • Content Type : application/json
    • Active 체크
  • 연결 확인
저작자표시 (새창열림)
    'DevOps' 카테고리의 다른 글
    • Docker Container에서 프로세스 백그라운드 실행
    • jenkins Warning: A secret was passed to “sh” using Groovy String interpolation..
    • Jenkins java.io.NotserializableException: groovy.lang.IntRange
    • Jenkins에서 배치파일 리턴받기(커맨드 제거)
    해표
    해표

    티스토리툴바