Skip to content

Commit 68dd21b

Browse files
authored
Merge pull request #10 from Chuseok22/20251023_#9_릴리즈_자동_생성_워크플로_추가
20251023 #9 릴리즈 자동 생성 워크플로 추가
2 parents 0d85c2b + cd296e2 commit 68dd21b

2 files changed

Lines changed: 73 additions & 0 deletions

File tree

.github/release.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# .github/release.yml
2+
changelog:
3+
categories:
4+
- title: "🚀 Features"
5+
labels:
6+
- feat
7+
- feature
8+
- enhancement
9+
- title: "🐛 Fixes"
10+
labels:
11+
- fix
12+
- bug
13+
- hotfix
14+
- title: "🧰 Maintenance"
15+
labels:
16+
- chore
17+
- refactor
18+
- perf
19+
- ci
20+
- docs
21+
- deps
22+
exclude:
23+
labels:
24+
- skip-release
25+
authors:
26+
- dependabot[bot]

.github/workflows/auto-version.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,27 @@ on:
7272
type: string
7373
default: "VERSION"
7474

75+
# 릴리즈 생성 여부
76+
create_release:
77+
description: "버전 증가 시 GitHub Release 생성 여부 - 기본: true"
78+
required: false
79+
type: string
80+
default: "true"
81+
82+
# 릴리즈 태그 latest 마킹 여부
83+
release_latest:
84+
description: "생성한 릴리즈를 latest로 마킹할지 여부 - 기본: true"
85+
required: false
86+
type: string
87+
default: "true"
88+
89+
# pre-release 여부
90+
release_prelease:
91+
default: "생성한 릴리즈를 pre-release로 표시할지 여부 - 기본: false"
92+
required: false
93+
type: string
94+
description: "false"
95+
7596
outputs:
7697
version_bumped:
7798
description: "버전 증가 여부 (true/false)"
@@ -127,6 +148,32 @@ jobs:
127148
workdir: ${{ inputs.workdir }}
128149
plain_version_file: ${{ inputs.plain_version_file }}
129150

151+
# GitHub Release 생성 (자동 생성 릴리즈 노트)
152+
- name: GitHub Release 생성 (릴리즈 노트 자동생성)
153+
if: ${{ steps.bump.outputs.version_bumped == 'true' && inputs.create_release == 'true' }}
154+
env:
155+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
156+
TAG: ${{ steps.bump.outputs.new_tag }}
157+
run: |
158+
set -euo pipefail
159+
echo "Target tag: $TAG"
160+
161+
# 플래그 구성
162+
FLAGS=""
163+
if [ "${{ inputs.release_latest }}" = "true" ]; then
164+
FLAGS="$FLAGS --latest"
165+
fi
166+
if [ "${{ inputs.release_prerelease }}" = "true" ]; then
167+
FLAGS="$FLAGS --prerelease"
168+
fi
169+
170+
# 중복 방지: 릴리스가 이미 있으면 스킵
171+
if gh release view "$TAG" >/dev/null 2>&1; then
172+
echo "Release $TAG already exists. Skip creating."
173+
else
174+
gh release create "$TAG" --generate-notes --title "$TAG" $FLAGS
175+
fi
176+
130177
# 버전 bump 시 repository_dispatch 전송
131178
- name: Send repository_dispatch (only when bumped)
132179
if: ${{ steps.bump.outputs.version_bumped == 'true' && inputs.dispatch_on_bump == 'true' }}

0 commit comments

Comments
 (0)