From 43f0603fc1e37b02c7dd6c4dee2c14855511a37a Mon Sep 17 00:00:00 2001 From: drodarie Date: Tue, 7 Jan 2025 18:04:52 +0100 Subject: [PATCH] fix: add GHA test in case of no version bump --- .github/workflows/main.yml | 46 +++++++++++++++++++++++++++----------- 1 file changed, 33 insertions(+), 13 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index d45934f3..6e8c2257 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,7 +17,7 @@ jobs: api: uses: ./.github/workflows/api.yml - tag_release: + bump: needs: [isort, black, build, docs, api] runs-on: ubuntu-latest outputs: @@ -44,35 +44,55 @@ jobs: with: token: ${{ steps.app-token.outputs.token }} branch: main + noVersionBumpBehavior: warn + + tag_release: + needs: [ bump ] + # Skip job in case no version bump is required + # in this case the variable tag will not be set by semver + if: ${{ needs.bump.outputs.tag != ''}} + runs-on: ubuntu-latest + steps: + - name: Create Github token + uses: actions/create-github-app-token@v1 + id: app-token + with: + app-id: ${{ vars.DBBS_APP_ID }} + private-key: ${{ secrets.DBBS_APP_PRIVATE_KEY }} + - name: Checkout Code + uses: actions/checkout@v4 + with: + fetch-depth: 0 + token: ${{ steps.app-token.outputs.token }} - name: Set up Python 3.11 - uses: actions/setup-python@v1 + uses: actions/setup-python@v5 with: python-version: 3.11 - name: Bump version in Python project run: | pip install --upgrade pip bump-my-version - oldv="${{ steps.semver.outputs.current }}" - newv="${{steps.semver.outputs.next}}" + oldv="${{ needs.bump.outputs.old_tag }}" + newv="${{needs.bump.outputs.tag}}" # Bump the version, dropping the leading `v` with `${x:1}` bump-my-version replace --current-version=${oldv:1} --new-version=${newv:1} pyproject.toml - name: Commit & Push version change - uses: stefanzweifel/git-auto-commit-action@v4 + uses: stefanzweifel/git-auto-commit-action@v5 with: branch: main - commit_message: 'docs: bump version: ${{ steps.semver.outputs.current }} → ${{ steps.semver.outputs.next }} [skip ci]' + commit_message: 'docs: bump version: ${{ needs.bump.outputs.old_tag }} → ${{ needs.bump.outputs.tag }} [skip ci]' - name: Create tag uses: rickstaa/action-create-tag@v1 with: - tag: ${{ steps.semver.outputs.next }} + tag: ${{ needs.bump.outputs.tag }} github_token: ${{ steps.app-token.outputs.token }} release: runs-on: ubuntu-latest - needs: tag_release + needs: [bump, tag_release] steps: - name: Create Github token @@ -97,8 +117,8 @@ jobs: uses: requarks/changelog-action@v1 with: token: ${{ steps.app-token.outputs.token }} - fromTag: ${{ needs.tag_release.outputs.tag }} - toTag: ${{ needs.tag_release.outputs.old_tag }} + fromTag: ${{ needs.bump.outputs.tag }} + toTag: ${{ needs.bump.outputs.old_tag }} - name: Create Release uses: ncipollo/release-action@v1.12.0 @@ -106,13 +126,13 @@ jobs: allowUpdates: true draft: false makeLatest: true - tag: ${{ needs.tag_release.outputs.tag }} - name: ${{ needs.tag_release.outputs.tag }} + tag: ${{ needs.bump.outputs.tag }} + name: ${{ needs.bump.outputs.tag }} body: ${{ steps.changelog.outputs.changes }} token: ${{ steps.app-token.outputs.token }} - name: Commit CHANGELOG.md - uses: stefanzweifel/git-auto-commit-action@v4 + uses: stefanzweifel/git-auto-commit-action@v5 with: branch: main commit_message: 'docs: update CHANGELOG.md for ${{ github.ref_name }} [skip ci]'