우노
[Github Actions] Branch Merge 시 Tag/Release 자동 생성 본문
들어가기 앞서,
- repository의 버전을 tag를 통해 관리하고 있을 경우, 업데이트(merge)마다 수동으로 tag를 생성한다면 매우 번거로운 작업이 됩니다.
- 따라서, 해당 포스트에서는 Github Actions을 활용해, Main Branch Merge 시 Tag/Release를 자동으로 생성하는 방법을 다뤄보겠습니다.
자동화 방법
해당하는 Repo의 .github/workflows 폴더에, 아래 yml 파일을 저장하면 됩니다.
name: Release Tag on: push: branches: - main # main branch로 push될 때 아래 action이 실행됩니다. jobs: build: runs-on: ubuntu-latest steps: # 깃헙 코드 내려받기 - uses: actions/checkout@v2 # 태그 생성 - name: Bump version and push tag id: tag_version uses: mathieudutour/github-tag-action@v5.5 # 가져다 쓸 auto tagging 프로그램 with: github_token: ${{ secrets.GITHUB_TOKEN }} # secrets.GITHUB_TOKEN 는 자동생성됨 # 릴리즈 생성 - name: Create Release id: create_release uses: actions/create-release@v1 # 가져다 쓸 create release 프로그램 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # secrets.GITHUB_TOKEN 는 자동생성됨 with: tag_name: ${{ steps.tag_version.outputs.new_tag }} release_name: Release ${{ steps.tag_version.outputs.new_tag }} body: ${{ steps.tag_version.outputs.changelog }}
- auto tagging은 repo의 모든 권한을 가지고 있어야 사용 가능합니다.
결과
- 원하는 내용에 따라 추가적으로 workflow를 수정하시면 됩니다.
참고
'DevOps > GitHub' 카테고리의 다른 글
[Github] Local에서 Remote Branch 삭제 (0) | 2023.03.29 |
---|---|
[Github Actions] 주요 필드 (0) | 2023.03.11 |
[Github Actions] Secrets으로 환경변수 사용 (0) | 2023.03.08 |
[Github] git pull error (merge, rebase, fast-forward) (0) | 2023.03.05 |
[Github] 특정 branch clone (0) | 2023.02.16 |
Comments