본문 바로가기
개발/개발지식

[Jenkins] GitLab webhook 등록 시, Hook executed successfully but returned HTTP 403 Error 및 webhook 등록 방법

by 그레이웅 2022. 11. 23. 16:09
반응형

Hook executed successfully but returned HTTP 403  Error 오류

 

오류 상황

 

GitLab과 Jenkins 연동 시 다음 이미지와 같이 Hook executed successfully but returned HTTP 403  Error 가 발생하였다.

Git push 이후 Jenkins를 자동으로 빌드시켜주는 webhook 등록을 하려 하였는데, 이를 등록하고, 테스트를 해보는데 아래와 같은 오류가 지속적으로 발생되었다.

 

 

맨 처음 Webhooks를 등록할때 url에 어떤 값을 넣어야 하고 Secret token은 Jenkins에서 어디에서 생성해서 입력해야 하는지 를 알지 못하였다. 위의 오류는 내가 Jenkins에 URL을 제대로 등록해주지 않아 발생한 오류였다.

Jenkins의 프로젝트  URL을 등록해주어야 하는데, 이 프로젝트 URL의 값이 어디있는지 찾지 못하여 현재 Jenkins 프로젝트 주소를 넣어주었었다.

 

Jenkins webhook 생성창

해결 방법 

 

Jenkins 프로젝트 > 구성 > 빌드 유발로 이동한다.

 

Jenkins 빌드 유발 설정

Jenkins 빌드 유발 설정에서 Build when a change is pushed to GitLab webhook URL : 부분을 체크해주고 뒤의 URL을 복사해준다. 복사 후 GitLab 프로젝트 > Settings > Webhooks 로 접속하여 복사한 url주소를 하단 이미지의 표시된 부분에 넣어준다.

GitLab webhook setting

 

 


Jenkins -> GitLab Secret token 발급 및 등록방법 

 

Jenkins 프로젝트 > 구성 > 빌드 유발

 

빌드 유발의 설정들을 내리다 보면 하단의 고급 표시가 있다. 눌러준다.

빌드 유발 설정 화면

 

고급을 누른 후 하단으로 내리다보면 Secret token이 나오고

Generate 버튼을 클릭하면 토큰을 발급받게 된다. 이를 복사한다.

Secret token

 

복사한 토큰을 아래의 GitLab 프로젝트 > Settings > Webhooks 설정에 Secret token 부분에 넣어주면 된다.

나는 Trigger는 push events 만 체크하였다. URL과 Secret token과 설정할 트리거를 선택하고 Add webhook

버튼을 눌러준다.

GitLab webhook

 

그러면 내가 등록한 Project Hooks 가 아래 이미지처럼 등록되게 된다.

 

GitLab hooks 에 등록되어있는 hooks

 

Test > push events를 눌러 테스트를 수행해 볼 수 있다.

 

 

화면 상단에 다음 이미지와 같이 나오면 성공적으로 테스트를 완료하였고, push Event 발생 시 정상적으로 Jenkins에서 빌드되는 것도 확인하였다.

 

 

 

반응형

댓글