1616 default : false
1717 type : boolean
1818
19+ # Manual Trigger
20+ workflow_dispatch :
1921env :
20- MODULE_ID : cbjavaloader
22+ MODULE_ID : ${{ github.event.repository.name }}
23+ JDK : 21
2124 SNAPSHOT : ${{ inputs.snapshot || false }}
25+ BUILD_ID : ${{ github.run_number }}
2226
2327jobs :
2428 # #########################################################################################
@@ -27,15 +31,26 @@ jobs:
2731 build :
2832 name : Build & Publish
2933 runs-on : ubuntu-24.04
34+ permissions :
35+ checks : write
36+ pull-requests : write
37+ contents : write
38+ issues : write
3039 steps :
3140 - name : Checkout Repository
32- uses : actions/checkout@v3
41+ uses : actions/checkout@v4
3342
3443 - name : Setup CommandBox
3544 uses :
Ortus-Solutions/[email protected] 3645 with :
3746 forgeboxAPIKey : ${{ secrets.FORGEBOX_TOKEN }}
3847
48+ - name : Setup Java
49+ uses : actions/setup-java@v4
50+ with :
51+ distribution : " temurin"
52+ java-version : ${{ env.JDK }}
53+
3954 - name : " Setup Environment Variables For Build Process"
4055 id : current_version
4156 run : |
5065 fi
5166
5267 - name : Update changelog [unreleased] with latest version
53- uses : thomaseizinger/keep-a-changelog-new-release@1.3 .0
68+ uses : thomaseizinger/keep-a-changelog-new-release@3.1 .0
5469 if : env.SNAPSHOT == 'false'
5570 with :
5671 changelogPath : ./changelog.md
@@ -61,10 +76,10 @@ jobs:
6176 npm install -g markdownlint-cli
6277 markdownlint changelog.md --fix
6378 box install commandbox-docbox
64- box task run taskfile=build/Build target=run :version=${{ env.VERSION }} :projectName=${{ env.MODULE_ID }} :buildID=${{ github.run_number }} :branch=${{ env.BRANCH }}
79+ box task run taskfile=build/Build target=run :version=${{ env.VERSION }} :projectName=${{ env.MODULE_ID }} :buildID=${{ env.BUILD_ID }} :branch=${{ env.BRANCH }}
6580
66- - name : Commit Changelog To Master
67- 81+ - name : Commit Changelog [unreleased] with latest version
82+ 6883 if : env.SNAPSHOT == 'false'
6984 with :
7085 author_name : Github Actions
7388 add : changelog.md
7489
7590 - name : Tag Version
76- uses : rickstaa/action-create-tag@v1.6.1
91+ uses : rickstaa/action-create-tag@v1.7.2
7792 if : env.SNAPSHOT == 'false'
7893 with :
7994 tag : " v${{ env.VERSION }}"
8297
8398 - name : Upload Build Artifacts
8499 if : success()
85- uses : actions/upload-artifact@v3
100+ uses : actions/upload-artifact@v4
86101 with :
87102 name : ${{ env.MODULE_ID }}
88103 path : |
@@ -118,7 +133,7 @@ jobs:
118133 box forgebox publish --force
119134
120135 - name : Create Github Release
121- uses : taiki-e/create-gh-release-action@v1.6 .2
136+ uses : taiki-e/create-gh-release-action@v1.8 .2
122137 continue-on-error : true
123138 if : env.SNAPSHOT == 'false'
124139 with :
@@ -127,6 +142,18 @@ jobs:
127142 token : ${{ secrets.GITHUB_TOKEN }}
128143 ref : refs/tags/v${{ env.VERSION }}
129144
145+ - name : Inform Slack
146+ if : ${{ always() }}
147+ uses : rtCamp/action-slack-notify@v2
148+ env :
149+ SLACK_CHANNEL : coding
150+ SLACK_COLOR : ${{ job.status }} # or a specific color like 'green' or '#ff00ff'
151+ SLACK_ICON_EMOJI : " :bell:"
152+ SLACK_MESSAGE : " Module ${{ env.MODULE_ID }} v${{ env.VERSION }} Built with ${{ job.status }}!"
153+ SLACK_TITLE : " ColdBox Module ${{ env.MODULE_ID }}"
154+ SLACK_USERNAME : CI
155+ SLACK_WEBHOOK : ${{ secrets.SLACK_WEBHOOK_URL }}
156+
130157 # #########################################################################################
131158 # Prep Next Release
132159 # #########################################################################################
@@ -135,10 +162,15 @@ jobs:
135162 if : github.ref == 'refs/heads/master' || github.ref == 'refs/heads/main'
136163 runs-on : ubuntu-24.04
137164 needs : [ build ]
165+ permissions :
166+ checks : write
167+ pull-requests : write
168+ contents : write
169+ issues : write
138170 steps :
139171 # Checkout development
140172 - name : Checkout Repository
141- uses : actions/checkout@v3
173+ uses : actions/checkout@v4
142174 with :
143175 ref : development
144176
@@ -148,7 +180,7 @@ jobs:
148180 forgeboxAPIKey : ${{ secrets.FORGEBOX_TOKEN }}
149181
150182 - name : Download build artifacts
151- uses : actions/download-artifact@v2
183+ uses : actions/download-artifact@v4
152184 with :
153185 name : ${{ env.MODULE_ID }}
154186 path : .tmp
@@ -165,7 +197,7 @@ jobs:
165197
166198 # Commit it back to development
167199 - name : Commit Version Bump
168- 200+ 169201 with :
170202 author_name : Github Actions
171203
0 commit comments