::: IT인터넷 :::

GitLab과 JIRA Cloud 연동하기

곰탱이푸우 2021. 7. 21. 08:20

GitLab (직접설치)와 Jira Cloud에 연동이 가능하다.

Commit이나 Pull Request 내역에 대해 Jira 이슈에 자동으로 기록을 남겨주는 정도이다.

  • gitlab.com을 사용하는 경우에는 Jira Cloud에서 제공하는 3rd-party 앱을 사용하면 된다.
  • 그러나 GitLab을 직접 설치해서 사용하기 때문에 패스!

 

Jira Cloud 무료 계정은 GitLab과 기본 통합만 지원한다.

  • GitLab Development Panel 통합은 Jira 유료 계정만 지원한다.
  • 무료 계정은 OAuth 메뉴가 없어 적용이 안된다.

기본 통합은 Jira Cloud UI에서 Branch 생성 등을 지원하지 않는다.

하지만 무료로 Commit 로그를 자동으로 남겨주는 것에 만족하기로 했다.

 

 

GitLab과 Jira Cloud의 연동을 아래 동영상을 참고한다.

 

GitLab과 Jira Cloud의 연동은 GitLab 전체, Group 단위, Project 단위로 적용할 수 있다.

  • 혼자 사용하기 때문에 GitLab의 그룹 단위로 통합한다.
  • 다수의 사용자가 참여하는 경우 Group 단위 또는 Project 단위로 서로 다른 Jira 계정과 연결할 수 있다.

 

 

GitLab의 Group과 Jira Cloud 연동

아래와 같이 GitLab에 Group을 3개 생성했다. Jira Cloud와 연동하기 원하는 Group 이름을 클릭한다.

 

좌측 메뉴의 Settings에 있는 Integration을 클릭한다.

 

Active integrations에 연동 된 것이 없다고 나온다.

 

 

스크롤을 아래로 내리면 Jira가 있다. Jira를 클릭한다.

 

Jira 상세 페이지에 연동을 위한 정보를 입력한다.

  • 상단 우측의 Use default settings를 클릭하여 Use custom settings로 변경한다.
  • Enable integration의 Active에 체크한다.
  • Comment detail은 All details를 선택한다. Jira 이슈의 댓글에 Commit Message 내용과 커밋 정보 등이 기록된다.
  • Transition Jira issues to their final state는 Commit Message로 Jira 이슈를 Close 하는 기능이지만 체크하지 않았다.

 

스크롤을 아래로 내리면 추가 정보를 입력해야 한다.

  • Web URL - Jira Cloud 주소를 입력한다. 보통 https://JIRA계정명.atlassian.net 형태이다.
  • Username or Email - Jira Cloud 계정을 입력한다. Atlassian에 Google 계정 연동으로 가입해서 Google 계정을 입력했다.
  • Password or API token - Atlassian 계정의 패스워드나 API 토큰을 적는다.

 

 

Jira Cloud의 API token 확인 방법

Atlassian에 직접 가입할 수도 있지만 Google, Microsoft, Apple, Slack 계정을 이용하여 쉽게 가입 가능하다.

  • 그러나 Atlassian에 직접 가입하지 않은 경우에는 Atlassian에 비밀번호 정보가 없다.
  • 따라서 비밀번호를 입력할 수 없으므로 Atlassian의 계정 정보 설정에서 API token을 생성해야 한다.

 

Jira에 로그인 한 다음 우측 상단 가장 오른쪽의 사용자 아이콘을 클릭하고 계정 설정을 선택한다.

 

 

좌측의 보안 탭을 클릭하고 API 토큰 항목의 'API 토큰 만들기 및 관리'를 선택한다.

 

상단의 API 토큰 만들기를 클릭한다.

 

사용할 API 토큰을 입력한다. gitlab에서 사용할 것이므로 gitlab으로 입력했다.

 

생성 된 API 토큰이 표시된다.

  • 눈동자를 클릭하면 가려진 부분을 확인할 수 있다.
  • 창을 닫으면 재확인이 되지 않으므로 복사하고 메모장에 임시로 옮겨놓는다.
  • 복사하지 않고 닫은 경우 해당 토큰을 철회(삭제)하고 새로 생성한다.

 

 

GitLab 연동 최종 입력과 연동 확인

다시 GitLab 화면으로 돌아와서 하단의 Password or API token에 복사한 API token을 붙여넣기한다.

모든 정보 입력이 끝났으면 Save changes를 클릭한다.

 

정상적으로 연결이 된 경우 Active integrations 항목에 Jira가 추가 된다.

 

 

GitLab과 Jira Cloud의 연동 테스트

GitLab과 Jira Cloud의 연동이 잘 되었는지 확인한다.

 

GitLab의 DEV group에 프로젝트를 하나 만들고, Branch를 생성했다.

GitLab의 Group, Project 생성은 아래 포스팅을 참고한다.
 

gitlab에서 group, project 생성하기

gitlab을 설치하는 과정은 이전 포스팅에서 진행했다. 시놀로지 NAS에서 GitLab 설정 방법 개요 시놀로지 NAS에서 GitLab도 설치 가능하며, DS21x 모델 기준으로 DS216 부터 추가되었다. 아마도 Docker를 DS216

www.bearpooh.com

GitLab의 clone, checkout, commit, push는 아래 포스팅을 참고한다.
 

gitlab에서 소스코드 작업하기 (clone, checkout, commit, push)

project와 branch까지 만들었으면 코드 개발을 위해 실제 개발 환경에 코드 저장소를 clone 해야 한다. gitlab에서 project 와 branch 생성하는 것은 아래 포스팅을 참고한다. gitlab에서 group, project 생성하..

www.bearpooh.com

 

테스트 하려는 프로젝트의 코드를 Clone하고 Branch로 전환하고 임의의 파일을 생성한다.

git add로 Commit 목록에 파일을 추가한다.

 

 

git commit 명령으로 Commit한다. Commit Message에 #JIRA이슈번호를 추가한다. (ex. #ENV-38)

 

git push 명령으로 GitLab 원격 저장소에 push한다.

 

Jira Cloud의 해당 이슈 상세 페이지로 이동하면 커밋 내용이 추가 된 것을 확인할 수 있다.

  • 웹 링크 - Commit의 링크가 생성된다. 클릭하면 GitLab의 Commit 상세 페이지로 이동한다.
  • 활동 (댓글) - Commit의 상세 정보가 표시된다.  Project와 Branch 이름, Commit link, Commit Message 등이 표시된다.

 

 

웹 링크의 Commit 정보를 클릭하면 Commit 상세 페이지로 이동한다.

diff도 표시 되어 코드 변경 내역도 확인 가능하다.

 

생각보다 어렵지 않게 GitLab과 Jira Cloud의 연동이 가능하다.

  • Jira Cloud의 UI에서 Branch 생성이나 Pull Request가 안되는 것은 아쉬운 부분이다.
  • 코드 변경 내역을 자동으로 남길 수 있는 것에 만족하고 사용하기로 했다.