Skip to content

Commit dee32bb

Browse files
committed
Refactor release process
1 parent 2a414e5 commit dee32bb

2 files changed

Lines changed: 21 additions & 62 deletions

File tree

.github/workflows/build.yml

Lines changed: 3 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ jobs:
3434
- name: Build with Gradle
3535
run: ./gradlew build
3636
deploy:
37-
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
37+
# if: github.event_name == 'push' && github.ref == 'refs/heads/master'
3838
name: Deploy SNAPSHOT
3939
runs-on: ubuntu-latest
4040
steps:
@@ -46,20 +46,5 @@ jobs:
4646
java-version: 17
4747
- name: Grant execute permission for gradlew
4848
run: chmod +x gradlew
49-
- name: Jar
50-
run: ./gradlew shadowJar
51-
- name: Generate tag version
52-
uses: anothrNick/github-tag-action@v1
53-
id: tag_version_dry_run
54-
env:
55-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
56-
WITH_V: false
57-
DRY_RUN: true
58-
- name: publish
59-
env:
60-
SNAPSHOT_VERSION: ${{ steps.tag_version_dry_run.outputs.tag }}-SNAPSHOT
61-
ORG_GRADLE_PROJECT_signingKey: ${{ secrets.GPG_PRIVATE_KEY_ASCII_ARMOR }}
62-
ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.GPG_KEY_PASSPHRASE }}
63-
MAVEN_CENTRAL_TOKEN_USERNAME: ${{ secrets.MAVEN_CENTRAL_TOKEN_USERNAME }}
64-
MAVEN_CENTRAL_TOKEN_PASSWORD: ${{ secrets.MAVEN_CENTRAL_TOKEN_PASSWORD }}
65-
run: ./gradlew publish -Pversion=$SNAPSHOT_VERSION -PossrhUsername=${MAVEN_CENTRAL_TOKEN_USERNAME} -PossrhPassword=${MAVEN_CENTRAL_TOKEN_PASSWORD} -Psign=true
49+
- name: Build and publish SNAPSHOT to Maven Local
50+
run: ./gradlew clean build publishToMavenLocal -x test

.github/workflows/release.yml

Lines changed: 18 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -5,56 +5,30 @@ on:
55

66
jobs:
77
release:
8-
name: Release to Maven Central, Tag & Release
8+
name: Release with JReleaser
99
runs-on: ubuntu-latest
1010
steps:
11-
- uses: actions/checkout@v2
12-
- name: Generate tag version
13-
uses: anothrNick/github-tag-action@v1
14-
id: tag_version_dry_run
15-
env:
16-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
17-
WITH_V: false
18-
DRY_RUN: true
19-
- name: Set up JDKs
11+
- uses: actions/checkout@v4
12+
with:
13+
fetch-depth: 0
14+
15+
- name: Set up JDK 17
2016
uses: actions/setup-java@v5
2117
with:
2218
distribution: 'temurin'
2319
java-version: 17
20+
2421
- name: Grant execute permission for gradlew
2522
run: chmod +x gradlew
26-
- name: Jar
27-
env:
28-
RELEASE_VERSION: ${{ steps.tag_version_dry_run.outputs.tag }}
29-
run: ./gradlew shadowJar -Pversion=$RELEASE_VERSION
30-
- name: Publish to Maven Central
31-
env:
32-
ORG_GRADLE_PROJECT_signingKey: ${{ secrets.GPG_PRIVATE_KEY_ASCII_ARMOR }}
33-
ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.GPG_KEY_PASSPHRASE }}
34-
MAVEN_CENTRAL_TOKEN_USERNAME: ${{ secrets.MAVEN_CENTRAL_TOKEN_USERNAME }}
35-
MAVEN_CENTRAL_TOKEN_PASSWORD: ${{ secrets.MAVEN_CENTRAL_TOKEN_PASSWORD }}
36-
RELEASE_VERSION: ${{ steps.tag_version_dry_run.outputs.tag }}
37-
run: ./gradlew -Pversion=$RELEASE_VERSION publish -PossrhUsername=${MAVEN_CENTRAL_TOKEN_USERNAME} -PossrhPassword=${MAVEN_CENTRAL_TOKEN_PASSWORD} -Psign=true
38-
- name: Close & Release Staging Repository
23+
24+
- name: Build artifacts
25+
run: ./gradlew clean build -x test
26+
27+
- name: Publish to Maven Central with JReleaser
3928
env:
40-
MAVEN_CENTRAL_TOKEN_USERNAME: ${{ secrets.MAVEN_CENTRAL_TOKEN_USERNAME }}
41-
MAVEN_CENTRAL_TOKEN_PASSWORD: ${{ secrets.MAVEN_CENTRAL_TOKEN_PASSWORD }}
42-
run: ./gradlew closeAndReleaseRepository -PossrhUsername=${MAVEN_CENTRAL_TOKEN_USERNAME} -PossrhPassword=${MAVEN_CENTRAL_TOKEN_PASSWORD}
43-
- name: Push new tag
44-
uses: anothrNick/github-tag-action@v1
45-
id: tag_version
46-
env:
47-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
48-
WITH_V: false
49-
DRY_RUN: false
50-
- name: Build Changelog
51-
id: github_release
52-
uses: mikepenz/release-changelog-builder-action@v3
53-
env:
54-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
55-
- name: Create Github Release
56-
uses: softprops/action-gh-release@v1
57-
with:
58-
body: ${{steps.github_release.outputs.changelog}}
59-
tag_name: ${{ steps.tag_version.outputs.tag }}
60-
files: java-snapshot-testing-*/build/libs/*.jar
29+
JRELEASER_MAVENCENTRAL_USERNAME: ${{ secrets.MAVEN_CENTRAL_TOKEN_USERNAME }}
30+
JRELEASER_MAVENCENTRAL_PASSWORD: ${{ secrets.MAVEN_CENTRAL_TOKEN_PASSWORD }}
31+
JRELEASER_GPG_SECRET_KEY: ${{ secrets.GPG_PRIVATE_KEY_ASCII_ARMOR }}
32+
JRELEASER_GPG_PASSPHRASE: ${{ secrets.GPG_KEY_PASSPHRASE }}
33+
JRELEASER_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
34+
run: ./gradlew jreleaserFullRelease

0 commit comments

Comments
 (0)