diff --git a/.github/workflows/5_bumper_repository.yml b/.github/workflows/5_bumper_repository.yml index 281b4775..43241783 100644 --- a/.github/workflows/5_bumper_repository.yml +++ b/.github/workflows/5_bumper_repository.yml @@ -144,10 +144,17 @@ jobs: bash ${{ env.BUMP_SCRIPT_PATH }} ${{ steps.vars.outputs.script_params }} - name: Commit changes (Bump) + id: bump_commit if: inputs.revert != true run: | git add . - git commit -m "feat: bump ${{ github.ref_name }}" + if git diff --staged --quiet; then + echo "Nothing to bump: the repository is already at the requested version/stage. Skipping commit." + echo "has_changes=false" >> $GITHUB_OUTPUT + else + git commit -m "feat: bump ${{ github.ref_name }}" + echo "has_changes=true" >> $GITHUB_OUTPUT + fi - name: Fetch full history (Revert) if: inputs.revert == true @@ -198,13 +205,13 @@ jobs: fi - name: Push changes - if: inputs.revert != true || (inputs.revert == true && steps.revert_step.outputs.has_changes == 'true') + if: (inputs.revert != true && steps.bump_commit.outputs.has_changes == 'true') || (inputs.revert == true && steps.revert_step.outputs.has_changes == 'true') run: | git push origin ${{ steps.vars.outputs.branch_name }} - name: Create pull request id: create_pr - if: inputs.revert != true || (inputs.revert == true && steps.revert_step.outputs.has_changes == 'true') + if: (inputs.revert != true && steps.bump_commit.outputs.has_changes == 'true') || (inputs.revert == true && steps.revert_step.outputs.has_changes == 'true') run: | gh auth setup-git PR_URL=$(gh pr create \ @@ -217,7 +224,7 @@ jobs: echo "pull_request_url=${PR_URL}" >> $GITHUB_OUTPUT - name: Merge pull request - if: inputs.revert != true || (inputs.revert == true && steps.revert_step.outputs.has_changes == 'true') + if: (inputs.revert != true && steps.bump_commit.outputs.has_changes == 'true') || (inputs.revert == true && steps.revert_step.outputs.has_changes == 'true') run: | # Any checks for the PR are bypassed since the branch is expected to be functional gh pr merge "${{ steps.create_pr.outputs.pull_request_url }}" --merge --admin @@ -225,9 +232,13 @@ jobs: - name: Show logs if: inputs.revert != true run: | - echo "Bump complete." - echo "Branch: ${{ steps.vars.outputs.branch_name }}" - echo "PR: ${{ steps.create_pr.outputs.pull_request_url }}" + if [[ "${{ steps.bump_commit.outputs.has_changes }}" == "true" ]]; then + echo "Bump complete." + echo "Branch: ${{ steps.vars.outputs.branch_name }}" + echo "PR: ${{ steps.create_pr.outputs.pull_request_url }}" + else + echo "Bump skipped: the repository is already at the requested version/stage." + fi echo "Bumper scripts logs:" cat ${BUMP_LOG_PATH}/repository_bumper*log