Skip to content

Commit 3f3e2c6

Browse files
committed
Use spring-scheduled-milestone-for-branch action in the spring-merge-dependabot-pr.yml
* Simplify the logic of the `spring-merge-dependabot-pr.yml` to do something only if `!autoMergeSnapshots` and not `new-version` metadata as `-SNAPSHOT` * Make `Merge Dependabot pull request` step to relly on the `cancelled()` status
1 parent 61103f1 commit 3f3e2c6

File tree

1 file changed

+17
-23
lines changed

1 file changed

+17
-23
lines changed

.github/workflows/spring-merge-dependabot-pr.yml

Lines changed: 17 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ on:
3030

3131
env:
3232
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
33+
WORKFLOWS_REF: main
3334

3435
jobs:
3536
merge-dependabot-pr:
@@ -41,10 +42,13 @@ jobs:
4142
with:
4243
show-progress: false
4344

44-
- uses: actions/setup-java@v4
45+
- name: Checkout Common Repo
46+
uses: actions/checkout@v4
4547
with:
46-
distribution: temurin
47-
java-version: 17
48+
repository: spring-io/spring-github-workflows
49+
path: spring-github-workflows
50+
show-progress: false
51+
ref: ${{ env.WORKFLOWS_REF }}
4852

4953
- name: Dependabot metadata
5054
id: metadata
@@ -58,34 +62,24 @@ jobs:
5862
gh pr edit ${{ github.event.pull_request.number }} --add-label "${{ inputs.developmentLabel }}"
5963
gh pr edit ${{ github.event.pull_request.number }} --remove-label "${{ inputs.dependenciesLabel }}"
6064
61-
- name: Set Milestone to Dependabot pull request or upgrade to SNAPSHOT
62-
id: set-milestone
65+
- name: Find Scheduled Milestone
66+
id: find-milestone
67+
if: ${{ inputs.autoMergeSnapshots != 'true' || !endsWith(steps.metadata.outputs.new-version, '-SNAPSHOT') }}
68+
uses: ./spring-github-workflows/.github/actions/spring-scheduled-milestone-for-branch
69+
70+
- name: Set Milestone to Dependabot pull request
71+
if: ${{ inputs.autoMergeSnapshots != 'true' || !endsWith(steps.metadata.outputs.new-version, '-SNAPSHOT') }}
6372
run: |
64-
65-
if [[ '${{ inputs.autoMergeSnapshots }}' == 'true' && '${{ steps.metadata.outputs.new-version }}' == *-SNAPSHOT ]]
66-
then
67-
echo mergeEnabled=true >> $GITHUB_OUTPUT
68-
exit 0
69-
fi
70-
71-
if test -f pom.xml
72-
then
73-
CURRENT_VERSION=$(mvn help:evaluate -Dexpression="project.version" -q -DforceStdout)
74-
else
75-
CURRENT_VERSION=$(cat gradle.properties | sed -n '/^version=/ { s/^version=//;p }')
76-
fi
77-
export CANDIDATE_VERSION=${CURRENT_VERSION/-SNAPSHOT}
78-
MILESTONE=$(gh api repos/$GITHUB_REPOSITORY/milestones --jq 'map(select(.due_on != null and (.title | startswith(env.CANDIDATE_VERSION)))) | .[0] | .title')
73+
MILESTONE=${{ steps.find-milestone.outputs.milestone }}
7974
8075
if [ -z $MILESTONE ]
8176
then
8277
gh run cancel ${{ github.run_id }}
83-
echo "::warning title=Cannot merge::No scheduled milestone for $CURRENT_VERSION version"
78+
echo "::warning title=Cannot merge::No scheduled milestone for ${{ steps.find-milestone.outputs.currentVersion }} version"
8479
else
8580
gh pr edit ${{ github.event.pull_request.number }} --milestone $MILESTONE
86-
echo mergeEnabled=true >> $GITHUB_OUTPUT
8781
fi
8882
8983
- name: Merge Dependabot pull request
90-
if: steps.set-milestone.outputs.mergeEnabled
84+
if: ${{ !cancelled() }}
9185
run: gh pr merge ${{ github.event.pull_request.number }} ${{ inputs.mergeArguments }}

0 commit comments

Comments
 (0)