1- name : Release
1+ name : " Release"
22on :
33 release :
44 types : [published]
55env :
66 GIT_USER_NAME : ${{ secrets.GIT_USER_NAME }}
77 GIT_USER_EMAIL : ${{ secrets.GIT_USER_EMAIL }}
8-
98jobs :
109 release :
11- runs-on : ubuntu-latest
12-
10+ runs-on : ubuntu-24.04
11+ permissions :
12+ packages : read # for pre-release workflow
13+ contents : write # to commit changes related to the release and publish documentation to gh-pages
14+ issues : write # to modify milestones
1315 steps :
14- - uses : actions/checkout@v4
15- - uses : gradle/wrapper-validation-action@v2
16- - uses : actions/setup-java@v4
17- with : { java-version: 11, distribution: temurin }
18- - uses : gradle/actions/setup-gradle@v3
19-
20- - name : Get the current release version
21- id : release_version
22- run : echo "release_version=${GITHUB_REF:11}" >> $GITHUB_OUTPUT
23-
24- - name : Run pre-release
25- uses : micronaut-projects/github-actions/pre-release@master
26-
27- - name : Generate secring file
16+ - name : " 📥 Checkout repository"
17+ uses : actions/checkout@v4
18+ - name : " ☕️ Setup JDK"
19+ uses : actions/setup-java@v4
20+ with :
21+ java-version : 11
22+ distribution : liberica
23+ - name : " 🐘 Setup Gradle"
24+ uses : gradle/actions/setup-gradle@v4
25+ with :
26+ develocity-access-key : ${{ secrets.DEVELOCITY_ACCESS_KEY }}
27+ - name : " 📝 Store the current release version"
28+ run : |
29+ echo "Release version: ${GITHUB_REF:11}"
30+ echo "RELEASE_VERSION=${GITHUB_REF:11}" >> $GITHUB_ENV
31+ - name : " ⚙️ Run pre-release"
32+ uses : apache/grails-github-actions/pre-release@asf
33+ - name : " 🔐 Generate key file for artifact signing"
2834 env :
2935 SECRING_FILE : ${{ secrets.SECRING_FILE }}
3036 run : echo $SECRING_FILE | base64 -d > ${{ github.workspace }}/secring.gpg
31-
32- - name : Publish artifacts to Sonatype
33- id : publish_to_sonatype
37+ - name : " 📤 Publish artifacts to Sonatype"
3438 env :
35- DEVELOCITY_ACCESS_KEY : ${{ secrets.DEVELOCITY_ACCESS_KEY }}
36- ORG_GRADLE_PROJECT_sonatypeUsername : ${{ secrets.SONATYPE_USERNAME }}
37- ORG_GRADLE_PROJECT_sonatypePassword : ${{ secrets.SONATYPE_PASSWORD }}
38- ORG_GRADLE_PROJECT_sonatypeStagingProfileId : ${{ secrets.SONATYPE_STAGING_PROFILE_ID }}
39+ GRAILS_PUBLISH_RELEASE : ' true'
40+ NEXUS_PUBLISH_USERNAME : ${{ secrets.NEXUS_PUBLISH_USERNAME }}
41+ NEXUS_PUBLISH_PASSWORD : ${{ secrets.NEXUS_PUBLISH_PASSWORD }}
42+ NEXUS_PUBLISH_URL : ${{ secrets.NEXUS_PUBLISH_RELEASE_URL }}
43+ NEXUS_PUBLISH_STAGING_PROFILE_ID : ${{ secrets.NEXUS_PUBLISH_STAGING_PROFILE_ID }}
3944 SIGNING_KEY : ${{ secrets.SIGNING_KEY }}
4045 SIGNING_PASSPHRASE : ${{ secrets.SIGNING_PASSPHRASE }}
4146 run : >
4247 ./gradlew
4348 -Psigning.secretKeyRingFile=${{ github.workspace }}/secring.gpg
4449 publishToSonatype
4550 closeAndReleaseSonatypeStagingRepository
46-
47- - name : Generate Documentation
48- if : success()
49- env :
50- DEVELOCITY_ACCESS_KEY : ${{ secrets.DEVELOCITY_ACCESS_KEY }}
51+ - name : " 📖 Generate Documentation"
5152 run : ./gradlew docs
52-
53- - name : Publish Documentation to Github Pages
54- if : success()
55- uses : micronaut-projects/github-pages-deploy-action@grails
53+ - name : " 📤 Publish Documentation to Github Pages"
54+ uses : apache/grails-github-actions/deploy-github-pages@asf
5655 env :
57- BRANCH : gh-pages
58- COMMIT_EMAIL : ${{ env.GIT_USER_EMAIL }}
59- COMMIT_NAME : ${{ env.GIT_USER_NAME }}
60- FOLDER : build/docs/manual
61- GH_TOKEN : ${{ secrets.GH_TOKEN }}
62- VERSION : ${{ steps.release_version.outputs.release_version }}
63-
64- - name : Run post-release
65- if : steps.publish_to_sonatype.outcome == 'success'
66- uses : micronaut-projects/github-actions/post-release@master
56+ GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
57+ GRADLE_PUBLISH_RELEASE : ' true'
58+ SOURCE_FOLDER : build/docs
59+ VERSION : ${{ env.RELEASE_VERSION }}
60+ - name : " ⚙️ Run post-release"
61+ uses : apache/grails-github-actions/post-release@asf
0 commit comments