44 types : [published]
55permissions : {}
66jobs :
7- release :
7+ publish :
88 permissions :
99 contents : write # to create release
1010 issues : write # to modify milestones
1111 runs-on : ubuntu-latest
12+ outputs :
13+ release_version : ${{ steps.release_version.outputs.value }}
14+ target_branch : ${{ steps.extract_branch.outputs.value }}
1215 env :
1316 GIT_USER_NAME : puneetbehl
14- 15- GRADLE_OPTS : -Xmx1500m -Dfile.encoding=UTF-8
17+ 1618 steps :
1719 - name : Checkout repository
1820 uses : actions/checkout@v3
@@ -32,12 +34,13 @@ jobs:
3234 echo "value=${TARGET_BRANCH}" >> $GITHUB_OUTPUT
3335 - name : Set the current release version
3436 id : release_version
35- run : echo "release_version =${GITHUB_REF:11}" >> $GITHUB_OUTPUT
37+ run : echo "value =${GITHUB_REF:11}" >> $GITHUB_OUTPUT
3638 - name : Run pre-release
3739 uses : ./.github/actions/pre-release
3840 with :
3941 token : ${{ secrets.GITHUB_TOKEN }}
4042 - name : Run Assemble
43+ if : success()
4144 id : assemble
4245 uses : gradle/gradle-build-action@v2
4346 with :
@@ -46,13 +49,28 @@ jobs:
4649 GRADLE_ENTERPRISE_ACCESS_KEY : ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
4750 GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER : ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER }}
4851 GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY : ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY }}
52+ - name : Upload Distribution
53+ if : success()
54+ uses : actions/upload-artifact@v3
55+ with :
56+ name : grails-${{ steps.release_version.outputs.value }}.zip
57+ path : build/distributions/grails-${{ steps.release_version.outputs.value }}.zip
58+ - name : Upload artifacts to the Github release
59+ if : success()
60+ id : upload_artifact
61+ uses : Roang-zero1/github-upload-release-artifacts-action@master
62+ with :
63+ args : build/distributions/grails-${{ steps.release_version.outputs.value }}.zip
64+ env :
65+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
4966 - name : Generate secring file
67+ if : success()
5068 env :
5169 SECRING_FILE : ${{ secrets.SECRING_FILE }}
5270 run : echo $SECRING_FILE | base64 -d > ${{ github.workspace }}/secring.gpg
5371 - name : Publish to Sonatype OSSRH
5472 id : publish
55- if : steps.assemble.outcome == ' success'
73+ if : success()
5674 uses : gradle/gradle-build-action@v2
5775 env :
5876 GRADLE_ENTERPRISE_ACCESS_KEY : ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
@@ -68,60 +86,75 @@ jobs:
6886 with :
6987 arguments : -Psigning.secretKeyRingFile=${{ github.workspace }}/secring.gpg publishToSonatype closeAndReleaseSonatypeStagingRepository
7088 - name : Run post-release
71- if : steps.publish.outcome == ' success'
89+ if : success()
7290 uses : ./.github/actions/post-release
7391 with :
7492 token : ${{ secrets.GITHUB_TOKEN }}
7593 env :
7694 SNAPSHOT_SUFFIX : -SNAPSHOT
77- - name : Upload artifacts to the Github release
78- id : upload_artifact
79- if : steps.publish.outcome == 'success'
80- uses : Roang-zero1/github-upload-release-artifacts-action@master
95+ sdkman :
96+ needs : publish
97+ runs-on : ubuntu-latest
98+ permissions :
99+ contents : read
100+ steps :
101+ - name : Checkout repository
102+ uses : actions/checkout@v3
103+ with :
104+ token : ${{ secrets.GH_TOKEN }}
105+ ref : v${{ needs.publish.outputs.release_version }}
106+ - name : Set up JDK
107+ uses : actions/setup-java@v3
108+ with :
109+ distribution : ' adopt'
110+ java-version : ' 8'
111+ - name : Grails SDK Minor Release
112+ if : success()
113+ uses : gradle/gradle-build-action@v2
81114 with :
82- args : build/distributions/grails-${{ steps.release_version.outputs.release_version }}.zip
115+ arguments : sdkMinorRelease
83116 env :
84- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
85- - name : Create Message for the Grails Documentation Release
86- if : steps.publish.outcome == 'success'
87- id : grails_docs_release_message
117+ GVM_SDKVENDOR_KEY : ${{ secrets.GVM_SDKVENDOR_KEY }}
118+ GVM_SDKVENDOR_TOKEN : ${{ secrets.GVM_SDKVENDOR_TOKEN }}
119+ docs :
120+ needs : publish
121+ runs-on : ubuntu-latest
122+ permissions :
123+ contents : read
124+ steps :
125+ - name : Prepare Input
126+ id : prep_inputs
88127 run : |
89128 echo "value={\"grails_version\":\"$RELEASE_VERSION\"}" >> $GITHUB_OUTPUT
90129 env :
91- RELEASE_VERSION : ${{ steps.release_version .outputs.release_version }}
130+ RELEASE_VERSION : ${{ needs.publish .outputs.release_version }}
92131 - name : Invoke grails-doc release workflow
93- if : steps.publish.outcome == 'success'
94- id : grails_doc
9513296133 with :
97134 workflow : Release
98135 repo : grails/grails-doc
99- ref : ${{ steps.extract_branch .outputs.value }}
136+ ref : ${{ needs.publish .outputs.target_branch }}
100137 token : ${{ secrets.GH_TOKEN }}
101- inputs : ${{ steps.grails_docs_release_message.outputs.value }}
138+ inputs : ${{ steps.prep_inputs.outputs.value }}
139+ website :
140+ needs : publish
141+ runs-on : ubuntu-latest
142+ permissions :
143+ contents : read
144+ steps :
145+ - name : Prepare Input
146+ id : prep_inputs
147+ run : |
148+ echo "value={\"grails_version\":\"$RELEASE_VERSION\"}" >> $GITHUB_OUTPUT
149+ env :
150+ RELEASE_VERSION : ${{ needs.publish.outputs.release_version }}
102151 - name : Invoke grails-static-website release workflow
103- if : steps.publish.outcome == ' success'
152+ if : success()
104153 id : grails_static_website
105154106155 with :
107156 workflow : Release
108157 repo : grails/grails-static-website
109158 ref : master
110159 token : ${{ secrets.GH_TOKEN }}
111- inputs : ${{ steps.grails_docs_release_message.outputs.value }}
112- - name : Grails SDK Minor Release
113- if : steps.upload_artifact.outcome == 'success' && (startsWith(steps.release_version.outputs.release_version, '3.3') || startsWith(steps.release_version.outputs.release_version, '4.1.') || startsWith(steps.release_version.outputs.release_version, '5.3.'))
114- uses : gradle/gradle-build-action@v2
115- with :
116- arguments : sdkMinorRelease
117- env :
118- GVM_SDKVENDOR_KEY : ${{ secrets.GVM_SDKVENDOR_KEY }}
119- GVM_SDKVENDOR_TOKEN : ${{ secrets.GVM_SDKVENDOR_TOKEN }}
120- - name : Grails SDK Major Release
121- if : steps.upload_artifact.outcome == 'success' && !(startsWith(steps.release_version.outputs.release_version, '3.3') || startsWith(steps.release_version.outputs.release_version, '4.1.') || startsWith(steps.release_version.outputs.release_version, '5.3.') || contains(steps.release_version.outputs.release_version, 'M') || contains(steps.release_version.outputs.release_version, 'RC'))
122- uses : gradle/gradle-build-action@v2
123- with :
124- arguments : sdkMajorRelease
125- env :
126- GVM_SDKVENDOR_KEY : ${{ secrets.GVM_SDKVENDOR_KEY }}
127- GVM_SDKVENDOR_TOKEN : ${{ secrets.GVM_SDKVENDOR_TOKEN }}
160+ inputs : ${{ steps.prep_inputs.outputs.value }}
0 commit comments