OS: Ubuntu 18.04
Jekins: 2.479.3
1. GitLab Plugin 설치
Dashbord > Jenkins 관리 > Plugins에서 Availabel plugins를 클릭하여 GitLab을 설치한다.
![[Jenkins] Gitlab webhook 연결 - undefined - 1. GitLab Plugin 설치 [Jenkins] Gitlab webhook 연결 - undefined - 1. GitLab Plugin 설치](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
2. GitLab 연결 설정(자격증명)
여기서는 Jenkins에서 GitLab의 정보를 등록하는 것이다.
Dashboard > Jenkins 관리 > System에서 GitLab 설정값을 입력한다.
URL은 도메인 형식 - ex) http://[IP]:[PORT]
Credentials는 GitLab에 대한 자격증명이다.
만약 자격증명이 없다면 Add 버튼을 클릭하자.
![[Jenkins] Gitlab webhook 연결 - undefined - 2. GitLab 연결 설정(자격증명) [Jenkins] Gitlab webhook 연결 - undefined - 2. GitLab 연결 설정(자격증명)](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
여기서 Kind에서는 "GitLab API token"을 설정해준다.
ID는 자격증명 유니크 아이디 아무렇게나 설정해주자.
"API token"은 아래와 같이 GitLab에서 받아올 수 있다.
![[Jenkins] Gitlab webhook 연결 - undefined - 2. GitLab 연결 설정(자격증명) [Jenkins] Gitlab webhook 연결 - undefined - 2. GitLab 연결 설정(자격증명)](https://blog.kakaocdn.net/dn/zcjhw/btsL3ngmo6O/gDbARZJphs51AdbXbI5beK/img.png)
자격증명 API Token을 생성하려면 "프로필 > 환경설정 > 엑세스토큰" 에서 생성 가능하며,
![[Jenkins] Gitlab webhook 연결 - undefined - 2. GitLab 연결 설정(자격증명) [Jenkins] Gitlab webhook 연결 - undefined - 2. GitLab 연결 설정(자격증명)](https://blog.kakaocdn.net/dn/cYHJxO/btsL10sPsLS/O9ain5En0UVVDC46JjZ8F1/img.png)
생성을 누르게 되면 토큰 값이 나오는데 이 화면을 나가면 다신 볼 수 없으니 세팅을 다하고 화면을 이탈할 것.
![[Jenkins] Gitlab webhook 연결 - undefined - 2. GitLab 연결 설정(자격증명) [Jenkins] Gitlab webhook 연결 - undefined - 2. GitLab 연결 설정(자격증명)](https://blog.kakaocdn.net/dn/pVyZ0/btsL1W5gR2Q/9zIH5Czc02HdLTfUSKS1L1/img.png)
![[Jenkins] Gitlab webhook 연결 - undefined - 2. GitLab 연결 설정(자격증명) [Jenkins] Gitlab webhook 연결 - undefined - 2. GitLab 연결 설정(자격증명)](https://blog.kakaocdn.net/dn/daGfHw/btsL1DdUtWs/ClQTNiKnZufR1k6mFktMWK/img.png)
3. Webhook 설정
여기서는 GitLab에서 Webhook을 이용해 특정 이벤트를 Jenkins로 보내는 설정이다.
먼저 Jenkins로 이벤트를 보낼 프로젝트를 선택한 후 Webhook을 설정한다.
여기서 URL과 Secret token을 Jenkins에서 받아와야한다.
나머지는 event를 보낼 때 설정값이니 알아서 확인하도록 하자.
![[Jenkins] Gitlab webhook 연결 - undefined - 3. Webhook 설정 [Jenkins] Gitlab webhook 연결 - undefined - 3. Webhook 설정](https://blog.kakaocdn.net/dn/d2hl5i/btsL070yyuY/HXejHRYBKlVFkuW8Ulbb81/img.png)
Jenkins에서 특정 작업을 만든 후에 [구성] 탭으로 진입.
![[Jenkins] Gitlab webhook 연결 - undefined - 3. Webhook 설정 [Jenkins] Gitlab webhook 연결 - undefined - 3. Webhook 설정](https://blog.kakaocdn.net/dn/XPqu4/btsL1Y2QvH7/yOLV3eaKgiQROgIJfXLFvK/img.png)
Triggers에서 GitLab 뭐라뭐라 하는 것의 URL값이 해당 jenkins 작업의 url이다.
이것을 GitLab Webhook에 있는 URL란에 입력해야한다.
즉 해석하자면 GitLab에서 push event가 일어나면 Jenkins의 wedding-vow라는 작업으로 트리거를 보낸다는 뜻이다.
![[Jenkins] Gitlab webhook 연결 - undefined - 3. Webhook 설정 [Jenkins] Gitlab webhook 연결 - undefined - 3. Webhook 설정](https://blog.kakaocdn.net/dn/C1fCM/btsL1sRh6xK/30rCKPN6WFeAvp0xsvmqfk/img.png)
같은 Trigger 탭의 아래에 "고급" 버튼을 누르면 아래에 Secret token 섹션이 있는데
Generate 해서 나오는 Token 값을 Gitlab의 Secret token에 입력하면 된다.
![[Jenkins] Gitlab webhook 연결 - undefined - 3. Webhook 설정 [Jenkins] Gitlab webhook 연결 - undefined - 3. Webhook 설정](https://blog.kakaocdn.net/dn/k5X7A/btsL1XiT5PM/DPbxb9bZPfm6c7Iqmz7dVk/img.png)
'프로그래밍 > Jenkins' 카테고리의 다른 글
[Jenkins] 주기적으로 빌드 실행하는 방법 (0) | 2024.05.08 |
---|---|
[Jenkins] Cmake 사용&버전 변경 (0) | 2023.07.23 |
[Jenkins] Git Command CI&CD (0) | 2023.07.04 |
[Jenkins] Shell script 오류나도 계속 진행하는 방법 (0) | 2023.06.24 |
[Jenkins] Git fatal: could not read Username 오류 해결 (0) | 2023.06.07 |
댓글