프로그래밍/Jenkins

[Jenkins] Gitlab webhook 연결

Beginner:) 2025. 1. 27.
320x100

OS: Ubuntu 18.04

Jekins: 2.479.3

 

1. GitLab Plugin 설치

Dashbord > Jenkins 관리 > Plugins에서 Availabel plugins를 클릭하여 GitLab을 설치한다.

 

2. GitLab  연결 설정(자격증명)

여기서는 Jenkins에서 GitLab의 정보를 등록하는 것이다.

 

Dashboard > Jenkins 관리 > System에서 GitLab 설정값을 입력한다.

URL은 도메인 형식 - ex) http://[IP]:[PORT]

Credentials는 GitLab에 대한 자격증명이다.

만약 자격증명이 없다면 Add 버튼을 클릭하자.

 

 

 

여기서 Kind에서는 "GitLab API token"을 설정해준다. 

ID는 자격증명 유니크 아이디 아무렇게나 설정해주자.

"API token"은 아래와 같이 GitLab에서 받아올 수 있다.

 

 

자격증명 API Token을 생성하려면 "프로필 > 환경설정 > 엑세스토큰" 에서 생성 가능하며,

 

생성을 누르게 되면 토큰 값이 나오는데 이 화면을 나가면 다신 볼 수 없으니 세팅을 다하고 화면을 이탈할 것.

 

 

 

 

 

 

3. Webhook 설정

여기서는 GitLab에서 Webhook을 이용해 특정 이벤트를 Jenkins로 보내는 설정이다.

 

먼저 Jenkins로 이벤트를 보낼 프로젝트를 선택한 후 Webhook을 설정한다.

여기서 URL과 Secret token을 Jenkins에서 받아와야한다.

나머지는 event를 보낼 때 설정값이니 알아서 확인하도록 하자.

 

 

Jenkins에서 특정 작업을 만든 후에 [구성] 탭으로 진입.

 

 

Triggers에서 GitLab 뭐라뭐라 하는 것의 URL값이 해당 jenkins 작업의 url이다. 

이것을 GitLab Webhook에 있는 URL란에 입력해야한다. 

즉 해석하자면 GitLab에서 push event가 일어나면 Jenkins의 wedding-vow라는 작업으로 트리거를 보낸다는 뜻이다.

 

같은 Trigger 탭의 아래에 "고급" 버튼을 누르면 아래에 Secret token 섹션이 있는데

Generate 해서 나오는 Token 값을 Gitlab의 Secret token에 입력하면 된다.

 

반응형

댓글