Skip to content

Commit a35a38c

Browse files
committed
feat: make it possible to re-attempt release
1 parent f905136 commit a35a38c

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

.github/workflows/release.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ jobs:
1919
runs-on: ubuntu-latest
2020
name: Release power-server
2121
if: ${{github.event.pull_request.merged == true}}
22+
outputs:
23+
already_released: ${{steps.released.outputs.already_released}}
2224

2325
steps:
2426
- uses: radcortez/project-metadata-action@main
@@ -28,9 +30,18 @@ jobs:
2830
github-token: ${{secrets.GITHUB_TOKEN}}
2931
metadata-file-path: '.github/project.yml'
3032

33+
- name: Check if already released
34+
id: released
35+
run: |
36+
if curl --output /dev/null --silent --head --fail "https://repo1.maven.org/maven2/net/laprun/sustainability/power-server/${{steps.metadata.outputs.current-version}}"; then
37+
echo "already_released=true" >> $GITHUB_OUTPUT
38+
fi
39+
3140
- uses: actions/checkout@v4
41+
if: steps.released.outputs.already_released != 'true'
3242

3343
- uses: actions/setup-java@v4
44+
if: steps.released.outputs.already_released != 'true'
3445
with:
3546
distribution: 'temurin'
3647
java-version: '21'
@@ -42,11 +53,13 @@ jobs:
4253
gpg-passphrase: MAVEN_GPG_PASSPHRASE
4354

4455
- name: Configure Git author
56+
if: steps.released.outputs.already_released != 'true'
4557
run: |
4658
git config --local user.email "[email protected]"
4759
git config --local user.name "GitHub Action"
4860
4961
- name: Maven release ${{steps.metadata.outputs.current-version}}
62+
if: steps.released.outputs.already_released != 'true'
5063
run: |
5164
mvn -B release:prepare -Prelease -Darguments="-DskipTests" -DreleaseVersion=${{steps.metadata.outputs.current-version}} -DdevelopmentVersion=${{steps.metadata.outputs.next-version}}
5265
mvn -B release:perform -Darguments="-DperformRelease -DskipTests" -DperformRelease -Prelease
@@ -56,12 +69,14 @@ jobs:
5669
MAVEN_GPG_PASSPHRASE: "${{ secrets.GPG_PASSPHRASE }}"
5770

5871
- name: Push changes to ${{github.base_ref}} branch
72+
if: steps.released.outputs.already_released != 'true'
5973
run: |
6074
git push
6175
git push origin ${{steps.metadata.outputs.current-version}}
6276
6377
# Build native executable per runner
6478
package:
79+
if: needs.maven-release.outputs.already_released != 'true'
6580
needs: [ maven-release ]
6681
name: 'Build with Graal on ${{ matrix.os }}'
6782
strategy:
@@ -109,6 +124,7 @@ jobs:
109124

110125
# Collect all executables and release
111126
release:
127+
if: needs.maven-release.outputs.already_released != 'true'
112128
needs: [ maven-release, package ]
113129
runs-on: ubuntu-latest
114130
steps:

0 commit comments

Comments
 (0)