지난 포스트에서는 Github Actions를 이용해 이슈 등록을 자동화하는 방법에 대해 알아보았고,
이번 포스트에서는 [2. 이슈 닫기]에 대해 작성하려고 한다.
[1. 이슈 등록] | [2. 이슈 닫기] |
1. Github Issue 등록 2. Github Actions - Issue open 트리거 3. Jira Issue 자동 생성 4. Jira 생성된 Issue의 Ticket Number로 브랜치 자동 생성 |
1. Github Issue 닫기 2. Github Actions - Issue close 트리거 3. Jira Issue 상태 변경 |
[2. 이슈 완료]
이슈 등록처럼 완료도 Closed가 트리거되었을 때, Jira의 이슈 상태 변경 API를 이용하면 된다! (아주 간단 😆)
(.github/workflows/close-jira-issue.yml)
Step 1. Jira 로그인
- name: Login to Jira
uses: atlassian/gajira-login@v3
env:
JIRA_BASE_URL: ${{ secrets.JIRA_BASE_URL }}
JIRA_API_TOKEN: ${{ secrets.JIRA_API_TOKEN }}
JIRA_USER_EMAIL: ${{ secrets.JIRA_USER_EMAIL }}
Step 2. Jira Ticket Number 추출
이슈 제목이 ex. [SKP-14] Jira 세팅 이런 식으로 설정되어있기 때문에, 아래와 같이 파싱해서 JIRA_KEY를 얻어낸다
- name: Extract Jira issue key from GitHub issue title
id: extract-key
run: |
ISSUE_TITLE="${{ github.event.issue.title }}"
JIRA_KEY=$(echo "$ISSUE_TITLE" | grep -oE '[A-Z]+-[0-9]+')
echo "JIRA_KEY=$JIRA_KEY" >> $GITHUB_ENV
Step 3. Jira Issue 상태 변경
상태를 Done으로 변경!
- name: Close Jira issue
if: env.JIRA_KEY != ''
uses: atlassian/gajira-transition@v3
with:
issue: ${{ env.JIRA_KEY }}
transition: Done
사용 예시
이제 Github에서 이슈를 닫으면 Jira 이슈의 상태가 Done으로 변경된다!
'⚒️ 기타' 카테고리의 다른 글
프로젝트에서 Github와 Jira 함께 사용하기 (5) - Husky로 Jira 커밋 메시지 작성하기 (0) | 2024.07.09 |
---|---|
프로젝트에서 Github와 Jira 함께 사용하기 (3) - Github Actions로 Jira 이슈 등록 자동화 (1) | 2024.07.08 |
프로젝트에서 Github와 Jira 함께 사용하기 (2) - Github와 Jira 연동하기 (0) | 2024.07.08 |
프로젝트에서 Github와 Jira 함께 사용하기 (1) - Jira란? (0) | 2024.07.08 |