4 on: |
4 on: |
5 workflow_dispatch: |
5 workflow_dispatch: |
6 release: |
6 release: |
7 types: [released, prereleased] |
7 types: [released, prereleased] |
8 jobs: |
8 jobs: |
9 publish: |
9 build: |
10 name: Release build and publish |
10 name: Build release |
11 runs-on: macOS-latest |
11 runs-on: macOS-latest |
12 steps: |
12 steps: |
13 - name: Check out code |
13 - name: Check out code |
14 uses: actions/checkout@v4 |
14 uses: actions/checkout@v4 |
15 - name: Set up JDK 21 |
15 - name: Set up JDK 21 |
16 uses: actions/setup-java@v4 |
16 uses: actions/setup-java@v4 |
17 with: |
17 with: |
18 distribution: 'zulu' |
18 distribution: 'zulu' |
19 java-version: 21 |
19 java-version: 21 |
|
20 - name: Setup Gradle |
|
21 uses: gradle/actions/setup-gradle@v4 |
|
22 - name: Build release |
|
23 run: ./gradlew build |
|
24 |
|
25 publish: |
|
26 name: Publish release |
|
27 needs: build |
|
28 runs-on: macOS-latest |
|
29 steps: |
|
30 - name: Check out code |
|
31 uses: actions/checkout@v4 |
|
32 - name: Set up JDK 21 |
|
33 uses: actions/setup-java@v4 |
|
34 with: |
|
35 distribution: 'zulu' |
|
36 java-version: 21 |
|
37 - name: Setup Gradle |
|
38 uses: gradle/actions/setup-gradle@v4 |
20 - name: Publish to MavenCentral |
39 - name: Publish to MavenCentral |
21 run: ./gradlew publishToMavenCentral --no-configuration-cache |
40 run: ./gradlew publishToMavenCentral --no-configuration-cache |
22 env: |
41 env: |
23 ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.MAVEN_CENTRAL_USERNAME }} |
42 ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.MAVEN_CENTRAL_USERNAME }} |
24 ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.MAVEN_CENTRAL_PASSWORD }} |
43 ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.MAVEN_CENTRAL_PASSWORD }} |
25 ORG_GRADLE_PROJECT_signingInMemoryKeyId: ${{ secrets.SIGNING_KEY_ID }} |
44 ORG_GRADLE_PROJECT_signingInMemoryKeyId: ${{ secrets.SIGNING_KEY_ID }} |
26 ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{ secrets.SIGNING_PASSWORD }} |
45 ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{ secrets.SIGNING_PASSWORD }} |
27 ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.GPG_KEY_CONTENTS }} |
46 ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.GPG_KEY_CONTENTS }} |
|
47 |