DevOps/Git
Git | Github Actions | Auto Labeling workflow ( PR 라벨링 자동화 )
개발자티포
2024. 5. 2. 10:38
728x90
반응형
workflow를 사용하는 방법은 매우 간단하다
프로젝트/.github/workflows/ 경로 아래에 yml 파일을 만들면 인식해서 실행시켜준다.
1. /.github/workflows/auto_labeling.yml 생성
name: Auto Labeling
on:
pull_request:
types: [ opened, reopened, synchronize ]
permissions:
contents: write
pull-requests: write
packages: write
jobs:
update_release_draft:
runs-on: self-hosted
steps:
- uses: release-drafter/release-drafter@v6
with:
commitish: main
config-name: auto_labeling_config.yml
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
pull_request가 실행 될 때마다 작동하게 설계했으며, config 파일의 경로는 .github/ 이어야 한다.
권한 또한 중요하니 잊지 않도록 한다.
runs-on은 환경에 맞는 코드를 쓰면 된다.
2. /.github/auto_labeling_config.yml 작성
template: |
## What’s Changed
$CHANGES
autolabeler:
- label: 'Component: Client'
files:
- 'client/**'
- label: 'Type: Bug'
title:
- '/^fix(\([a-zA-Z][a-zA-Z]\))?:/i'
template 은 필수 코드 이므로 추가하고, 경로와 PR title을 사용한 규칙을 지정하도록 한다.
사실상 template은 해당 작업에서 사용되진 않으며, 릴리즈 자동화에서 쓰일 예정이다.
title의 정규 표현식은 원하는대로 바꿀 수도 있다.
728x90
반응형