Skip to content

Commit ec7d88c

Browse files
committed
build: Update github workflows
Cleanup and update after the move to GPC.
1 parent c0a82ec commit ec7d88c

File tree

4 files changed

+75
-116
lines changed

4 files changed

+75
-116
lines changed

.github/workflows/gradle.yml

+32-40
Original file line numberDiff line numberDiff line change
@@ -1,79 +1,71 @@
1-
name: Java CI
1+
name: "Java CI"
22
on:
33
push:
44
branches:
55
- '[4-9]+.[0-9]+.x'
66
pull_request:
77
branches:
88
- '[4-9]+.[0-9]+.x'
9-
env:
10-
GIT_USER_NAME: grails-build
11-
GIT_USER_EMAIL: grails-build@users.noreply.github.com
12-
139
jobs:
14-
1510
test_project:
16-
name: Test Project
11+
name: "Test Project"
1712
if: github.event_name == 'pull_request'
1813
runs-on: ubuntu-latest
1914
strategy:
2015
fail-fast: true
2116
matrix:
22-
java: [17]
23-
17+
java: [17, 21]
2418
steps:
25-
- uses: actions/checkout@v4
26-
- uses: gradle/wrapper-validation-action@v2
27-
- uses: actions/setup-java@v4
19+
- name: "📥 Checkout repository"
20+
uses: actions/checkout@v4
21+
- name: "☕️ Setup JDK"
22+
uses: actions/setup-java@v4
2823
with:
29-
distribution: temurin
24+
distribution: liberica
3025
java-version: ${{ matrix.java }}
31-
- uses: gradle/actions/setup-gradle@v3
32-
- name: Run tests
33-
env:
34-
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
26+
- name: "🐘 Setup Gradle"
27+
uses: gradle/actions/setup-gradle@v4
28+
with:
29+
develocity-access-key: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
30+
- name: "🏃 Run tests"
3531
run: ./gradlew check
36-
3732
publish_snapshot:
38-
name: Build Project and Publish Snapshot release
33+
name: "Build Project and Publish Snapshot release"
3934
runs-on: ubuntu-latest
4035
if: github.event_name == 'push'
41-
4236
steps:
43-
- uses: actions/checkout@v4
44-
- uses: gradle/wrapper-validation-action@v2
45-
- uses: actions/setup-java@v4
46-
with: { java-version: 17, distribution: temurin }
47-
- uses: gradle/actions/setup-gradle@v3
48-
49-
- name: Build Project
50-
env:
51-
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCEESS_KEY }}
37+
- name: "📥 Checkout repository"
38+
uses: actions/checkout@v4
39+
- name: "☕️ Setup JDK"
40+
uses: actions/setup-java@v4
41+
with: {
42+
java-version: 17,
43+
distribution: liberica
44+
}
45+
- name: "🐘 Setup Gradle"
46+
uses: gradle/actions/setup-gradle@v4
47+
with:
48+
develocity-access-key: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
49+
- name: "🔨 Build Project"
5250
run: ./gradlew build
53-
54-
- name: Publish Snapshot version to Artifactory (repo.grails.org)
51+
- name: "📤 Publish Snapshot version to Artifactory (repo.grails.org)"
5552
if: success()
5653
env:
57-
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
5854
ORG_GRADLE_PROJECT_artifactoryPublishUsername: ${{ secrets.ARTIFACTORY_USERNAME }}
5955
ORG_GRADLE_PROJECT_artifactoryPublishPassword: ${{ secrets.ARTIFACTORY_PASSWORD }}
6056
run: >
6157
./gradlew
6258
-Dorg.gradle.internal.publish.checksums.insecure=true
6359
publish
64-
65-
- name: Generate Snapshot Documentation
60+
- name: "📖 Generate Snapshot Documentation"
6661
if: success()
67-
env:
68-
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
6962
run: ./gradlew docs
70-
71-
- name: Publish Snapshot Documentation to Github Pages
63+
- name: "📤 Publish Snapshot Documentation to Github Pages"
7264
if: success()
7365
uses: micronaut-projects/github-pages-deploy-action@grails
7466
env:
7567
BRANCH: gh-pages
76-
COMMIT_EMAIL: ${{ env.GIT_USER_EMAIL }}
77-
COMMIT_NAME: ${{ env.GIT_USER_NAME }}
68+
COMMIT_EMAIL: ${{ vars.GIT_USER_EMAIL }}
69+
COMMIT_NAME: ${{ vars.GIT_USER_NAME }}
7870
FOLDER: build/docs/manual
7971
GH_TOKEN: ${{ secrets.GH_TOKEN }}

.github/workflows/release-notes.yml

+9-38
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,22 @@
1-
name: Changelog
1+
name: "Release Drafter"
22
on:
33
issues:
44
types: [closed,reopened]
55
push:
66
branches:
77
- '[4-9]+.[0-9]+.x'
88
pull_request:
9-
types: [opened, reopened, synchronize, labeled]
9+
types: [opened, reopened, synchronize]
1010
pull_request_target:
11-
types: [opened, reopened, synchronize, labeled]
11+
types: [opened, reopened, synchronize]
1212
workflow_dispatch:
1313
jobs:
14-
release_notes:
14+
update_release_draft:
15+
permissions:
16+
contents: read # limit to read access
1517
runs-on: ubuntu-latest
1618
steps:
17-
- uses: actions/checkout@v3
18-
- name: Check if it has release drafter config file
19-
id: check_release_drafter
20-
run: |
21-
has_release_drafter=$([ -f .github/release-drafter.yml ] && echo "true" || echo "false")
22-
echo "has_release_drafter=${has_release_drafter}" >> $GITHUB_OUTPUT
23-
- name: Extract branch name
24-
id: extract_branch
25-
run: echo "value=${GITHUB_REF:11}" >> $GITHUB_OUTPUT
26-
# If it has release drafter:
27-
- uses: release-drafter/release-drafter@v5
28-
if: steps.check_release_drafter.outputs.has_release_drafter == 'true'
19+
- name: "📝 Update Release Draft"
20+
uses: release-drafter/release-drafter@v6
2921
env:
30-
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
31-
with:
32-
commitish: ${{ steps.extract_branch.outputs.value }}
33-
# Otherwise:
34-
- name: Export Gradle Properties
35-
if: steps.check_release_drafter.outputs.has_release_drafter == 'false'
36-
uses: micronaut-projects/github-actions/export-gradle-properties@master
37-
- uses: micronaut-projects/github-actions/release-notes@master
38-
if: steps.check_release_drafter.outputs.has_release_drafter == 'false'
39-
id: release_notes
40-
with:
41-
token: ${{ secrets.GH_TOKEN }}
42-
- uses: ncipollo/release-action@v1
43-
if: steps.check_release_drafter.outputs.has_release_drafter == 'false' && steps.release_notes.outputs.generated_changelog == 'true'
44-
with:
45-
allowUpdates: true
46-
commit: ${{ steps.release_notes.outputs.current_branch }}
47-
draft: true
48-
name: "${{ env.title }} ${{ steps.release_notes.outputs.next_version }}"
49-
tag: v${{ steps.release_notes.outputs.next_version }}
50-
bodyFile: CHANGELOG.md
51-
token: ${{ secrets.GH_TOKEN }}
22+
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}

.github/workflows/release.yml

+25-31
Original file line numberDiff line numberDiff line change
@@ -1,66 +1,60 @@
1-
name: Release
1+
name: "Release"
22
on:
33
release:
44
types: [published]
5-
env:
6-
GIT_USER_NAME: puneetbehl
7-
GIT_USER_EMAIL: behlp@unityfoundation.io
8-
95
jobs:
106
release:
117
runs-on: ubuntu-latest
12-
138
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
9+
- name: "📥 Checkout repository"
10+
uses: actions/checkout@v4
11+
- name: "☕️ Setup JDK"
12+
uses: actions/setup-java@v4
13+
with:
14+
distribution: liberica
15+
java-version: 17
16+
- name: "🐘 Setup Gradle"
17+
uses: gradle/actions/setup-gradle@v4
18+
with:
19+
develocity-access-key: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
20+
- name: "📝 Store the current release version"
2121
id: release_version
2222
run: echo "release_version=${GITHUB_REF:11}" >> $GITHUB_OUTPUT
23-
24-
- name: Run pre-release
23+
- name: "⚙ Run pre-release"
2524
uses: micronaut-projects/github-actions/pre-release@master
26-
27-
- name: Generate secring file
25+
- name: "🔐 Generate key file for artifact signing"
2826
env:
2927
SECRING_FILE: ${{ secrets.SECRING_FILE }}
3028
run: echo $SECRING_FILE | base64 -d > ${{ github.workspace }}/secring.gpg
3129

32-
- name: Publish artifacts to Sonatype
30+
- name: "📤 Publish artifacts to Sonatype"
3331
id: publish_to_sonatype
3432
env:
35-
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
3633
ORG_GRADLE_PROJECT_sonatypeUsername: ${{ secrets.SONATYPE_USERNAME }}
3734
ORG_GRADLE_PROJECT_sonatypePassword: ${{ secrets.SONATYPE_PASSWORD }}
3835
ORG_GRADLE_PROJECT_sonatypeStagingProfileId: ${{ secrets.SONATYPE_STAGING_PROFILE_ID }}
39-
SIGNING_KEY: ${{ secrets.SIGNING_KEY }}
36+
SIGNING_KEY: ${{ secrets.SIGNING_KEY_ID }}
4037
SIGNING_PASSPHRASE: ${{ secrets.SIGNING_PASSPHRASE }}
4138
run: >
4239
./gradlew
4340
-Psigning.secretKeyRingFile=${{ github.workspace }}/secring.gpg
4441
publishToSonatype
4542
closeAndReleaseSonatypeStagingRepository
46-
47-
- name: Generate Documentation
43+
- name: "📖 Generate Documentation"
4844
if: success()
49-
env:
50-
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
5145
run: ./gradlew docs
52-
53-
- name: Publish Documentation to Github Pages
46+
- name: "📤 Publish Documentation to Github Pages"
5447
if: success()
5548
uses: micronaut-projects/github-pages-deploy-action@grails
5649
env:
5750
BRANCH: gh-pages
58-
COMMIT_EMAIL: ${{ env.GIT_USER_EMAIL }}
59-
COMMIT_NAME: ${{ env.GIT_USER_NAME }}
51+
COMMIT_EMAIL: ${{ vars.GIT_USER_EMAIL }}
52+
COMMIT_NAME: ${{ vars.GIT_USER_NAME }}
6053
FOLDER: build/docs/manual
6154
GH_TOKEN: ${{ secrets.GH_TOKEN }}
6255
VERSION: ${{ steps.release_version.outputs.release_version }}
63-
64-
- name: Run post-release
56+
- name: "⚙️ Run post-release"
6557
if: steps.publish_to_sonatype.outcome == 'success'
66-
uses: micronaut-projects/github-actions/post-release@master
58+
uses: micronaut-projects/github-actions/post-release@master
59+
with:
60+
token: ${{ secrets.GITHUB_TOKEN }}

settings.gradle

+9-7
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,25 @@
11
plugins {
2-
id 'com.gradle.develocity' version '3.17.1'
3-
id 'com.gradle.common-custom-user-data-gradle-plugin' version '2.0'
2+
id 'com.gradle.develocity' version '3.18.1'
3+
id 'com.gradle.common-custom-user-data-gradle-plugin' version '2.0.2'
44
}
55

6-
def isCI = System.getenv('CI') == 'true'
6+
def isCI = System.getenv('CI') != null
7+
def isLocal = !isCI
8+
def isAuthenticated = System.getenv('DEVELOCITY_ACCESS_KEY') != null
79

810
develocity {
911
server = 'https://ge.grails.org'
1012
buildScan {
11-
publishing.onlyIf { isCI }
12-
uploadInBackground = !isCI
13+
publishing.onlyIf { isAuthenticated }
14+
uploadInBackground = isLocal
1315
}
1416
}
1517

1618
buildCache {
17-
local { enabled = !isCI }
19+
local { enabled = isLocal }
1820
remote(develocity.buildCache) {
21+
push = isCI && isAuthenticated
1922
enabled = true
20-
push = isCI && System.getenv('DEVELOCITY_ACCESS_KEY')
2123
}
2224
}
2325

0 commit comments

Comments
 (0)