33 push :
44 tags :
55 - v*
6+ # jobs:
7+ # publish:
8+ # runs-on: ubuntu-latest
9+ # steps:
10+ # - uses: actions/checkout@v4
11+ # - name: Set up Java
12+ # uses: actions/setup-java@v4
13+ # with:
14+ # java-version: '17'
15+ # distribution: 'temurin'
16+ # - name: Publish package
17+ # env:
18+ # JRELEASER_NEXUS2_USERNAME: ${{ secrets.JRELEASER_NEXUS2_USERNAME }}
19+ # JRELEASER_NEXUS2_PASSWORD: ${{ secrets.JRELEASER_NEXUS2_PASSWORD }}
20+ # JRELEASER_GPG_PASSPHRASE: ${{ secrets.JRELEASER_GPG_PASSPHRASE }}
21+ # JRELEASER_GPG_SECRET_KEY: ${{ secrets.JRELEASER_GPG_SECRET_KEY }}
22+ # JRELEASER_GPG_PUBLIC_KEY: ${{ secrets.JRELEASER_GPG_PUBLIC_KEY }}
23+ # JRELEASER_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
24+ # run: mvn -Prelease deploy jreleaser:deploy -DaltDeploymentRepository=local::file:./target/staging-deploy
25+
626jobs :
7- publish :
27+ release :
28+ name : Release
829 runs-on : ubuntu-latest
30+
931 steps :
10- - uses : actions/checkout@v4
11- - name : Set up Java
32+ - name : Checkout
33+ uses : actions/checkout@v4
34+ with :
35+ fetch-depth : 0
36+
37+ # Configure build steps as you'd normally do
38+
39+ - name : Setup Java
1240 uses : actions/setup-java@v4
1341 with :
14- java-version : ' 17 '
42+ java-version : 17
1543 distribution : ' temurin'
16- - name : Publish package
44+ server-id : central
45+ server-username : MAVEN_USERNAME
46+ server-password : MAVEN_CENTRAL_TOKEN
47+ gpg-private-key : ${{ secrets.JRELEASER_GPG_SECRET_KEY }}
48+ gpg-passphrase : MAVEN_GPG_PASSPHRASE
49+ cache : maven
50+
51+ # Post JARs to Maven Central
52+
53+ - name : Release to Maven Central
54+ env :
55+ MAVEN_USERNAME : ${{ secrets.JRELEASER_NEXUS2_USERNAME }}
56+ MAVEN_CENTRAL_TOKEN : ${{ secrets.JRELEASER_NEXUS2_PASSWORD }}
57+ MAVEN_GPG_PASSPHRASE : ${{ secrets.JRELEASER_GPG_PASSPHRASE }}
58+ run : |
59+ export GPG_TTY=$(tty)
60+ git config user.name "${{ github.event.head_commit.committer.name }}"
61+ git config user.email "${{ github.event.head_commit.committer.email }}"
62+ mvn -B --file pom.xml release:prepare release:perform
63+
64+ # Create a release
65+
66+ - name : Run JReleaser
67+ uses : jreleaser/release-action@v2
1768 env :
18- JRELEASER_NEXUS2_USERNAME : ${{ secrets.JRELEASER_NEXUS2_USERNAME }}
19- JRELEASER_NEXUS2_PASSWORD : ${{ secrets.JRELEASER_NEXUS2_PASSWORD }}
20- JRELEASER_GPG_PASSPHRASE : ${{ secrets.JRELEASER_GPG_PASSPHRASE }}
21- JRELEASER_GPG_SECRET_KEY : ${{ secrets.JRELEASER_GPG_SECRET_KEY }}
22- JRELEASER_GPG_PUBLIC_KEY : ${{ secrets.JRELEASER_GPG_PUBLIC_KEY }}
2369 JRELEASER_GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
24- run : mvn -Prelease deploy jreleaser:deploy -DaltDeploymentRepository=local::file:./target/staging-deploy
70+
71+ # Persist logs
72+
73+ - name : JReleaser release output
74+ if : always()
75+ uses : actions/upload-artifact@v4
76+ with :
77+ name : jreleaser-release
78+ path : |
79+ out/jreleaser/trace.log
80+ out/jreleaser/output.properties
0 commit comments