Skip to content

Commit 4451d32

Browse files
committed
fix : develop 브랜치에서 이전 버전 추출 코드 수정
1 parent 844c03b commit 4451d32

1 file changed

Lines changed: 22 additions & 19 deletions

File tree

.github/workflows/publish-on-version-change.yml

Lines changed: 22 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -20,36 +20,39 @@ jobs:
2020
check-version-change:
2121
runs-on: ubuntu-latest
2222
outputs:
23-
version-changed: ${{ steps.version-check.outputs.changed }} # 버전 변경 여부를 다음 작업에 전달
24-
new-version: ${{ steps.version-check.outputs.version }} # 새 버전 값을 다음 작업에 전달
23+
version-changed: ${{ steps.version-check.outputs.changed }} # 버전 변경 여부
24+
new-version: ${{ steps.version-check.outputs.version }} # 새 버전
2525
steps:
26-
# 코드를 체크아웃 (이전 커밋과 비교하기 위해 깊이를 2로 설정)
26+
# 현재 브랜치 코드 체크아웃
2727
- name: Checkout code
2828
uses: actions/checkout@v4
2929
with:
30-
fetch-depth: 2 # 현재와 이전 커밋을 가져오기 위함
30+
fetch-depth: 1
31+
ref: ${{ github.ref }} # 현재 push된 브랜치
32+
persist-credentials: false
3133

32-
# sdk_version이 변경되었는지 확인하는 단계
33-
- name: Check if sdk_version changed
34+
# 최신 develop 브랜치만 fetch (비교용)
35+
- name: Fetch develop branch
36+
run: git fetch origin develop --depth=1
37+
38+
# sdk_version 비교
39+
- name: Check if sdk_version changed (vs origin/develop)
3440
id: version-check
3541
run: |
36-
# 현재 커밋의 sdk_version 값 추출
37-
CURRENT_VERSION=$(grep "sdk_version" gradle/libs.versions.toml | cut -d '"' -f 2)
38-
echo "Current version: $CURRENT_VERSION"
42+
# develop 브랜치의 sdk_version 추출
43+
PREV=$(git show origin/develop:gradle/libs.versions.toml | grep 'sdk_version' | cut -d '"' -f2 || true)
3944
40-
# 이전 커밋의 sdk_version 값 추출
41-
git checkout develop -- gradle/libs.versions.toml 2>/dev/null || echo "No previous version found"
42-
PREVIOUS_VERSION=$(grep "sdk_version" gradle/libs.versions.toml | cut -d '"' -f 2 2>/dev/null || echo "")
43-
echo "Previous version: $PREVIOUS_VERSION"
45+
# 현재 브랜치의 sdk_version 추출
46+
CURR=$(grep 'sdk_version' gradle/libs.versions.toml | cut -d '"' -f2 || true)
4447
45-
# 현재 버전으로 파일 복원
46-
git checkout HEAD -- gradle/libs.versions.toml
48+
echo "develop: $PREV"
49+
echo "current: $CURR"
4750
48-
# 버전이 변경되었고 유효한 값인지 확인
49-
if [ "$CURRENT_VERSION" != "$PREVIOUS_VERSION" ] && [ -n "$CURRENT_VERSION" ]; then
51+
# 변경 여부 판단
52+
if [ "$CURR" != "$PREV" ] && [ -n "$CURR" ]; then
5053
echo "changed=true" >> $GITHUB_OUTPUT
51-
echo "version=$CURRENT_VERSION" >> $GITHUB_OUTPUT
52-
echo "Version changed from $PREVIOUS_VERSION to $CURRENT_VERSION"
54+
echo "version=$CURR" >> $GITHUB_OUTPUT
55+
echo "Version changed from $PREV → $CURR"
5356
else
5457
echo "changed=false" >> $GITHUB_OUTPUT
5558
echo "Version not changed"

0 commit comments

Comments
 (0)