Skip to content

Commit 41680e0

Browse files
committed
#initial-commit
1 parent 28fde9f commit 41680e0

File tree

2 files changed

+22
-59
lines changed

2 files changed

+22
-59
lines changed
Lines changed: 16 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,30 @@
1-
name: Release to Maven Central
2-
1+
name: Publish package to the Maven Central Repository
32
on:
43
release:
54
types: [created]
6-
75
jobs:
86
publish:
97
runs-on: ubuntu-latest
10-
118
steps:
12-
- name: Checkout source code
13-
uses: actions/checkout@v3
9+
- uses: actions/checkout@v4
1410

15-
- name: Set up Java
16-
uses: actions/setup-java@v3
11+
- name: Set up Maven Central Repository
12+
uses: actions/setup-java@v4
1713
with:
14+
java-version: '21'
1815
distribution: 'temurin'
19-
java-version: '17'
2016
server-id: central
21-
server-username: MAVEN_CENTRAL_USERNAME
22-
server-password: MAVEN_CENTRAL_TOKEN
23-
24-
- name: Install GPG
25-
run: |
26-
sudo apt-get update
27-
sudo apt-get install -y gnupg
28-
29-
- name: Configure GPG agent
30-
run: |
31-
mkdir -p ~/.gnupg
32-
chmod 700 ~/.gnupg
33-
echo "allow-loopback-pinentry" > ~/.gnupg/gpg-agent.conf
34-
chmod 600 ~/.gnupg/gpg-agent.conf
35-
gpgconf --kill gpg-agent
36-
gpgconf --launch gpg-agent
37-
shell: bash
38-
39-
- name: Import GPG key
40-
run: |
41-
echo "${{ secrets.GPG_PRIVATE_KEY }}" | gpg --batch --yes --import || { echo "GPG key import failed"; exit 1; }
42-
env:
43-
GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }}
44-
45-
- name: Preload GPG passphrase
46-
run: |
47-
echo "${{ secrets.GPG_PRIVATE_KEY_PASSPHRASE }}" | gpg --batch --yes --pinentry-mode loopback --passphrase-fd 0 -o /dev/null --sign
48-
env:
49-
GPG_PRIVATE_KEY_PASSPHRASE: ${{ secrets.GPG_PRIVATE_KEY_PASSPHRASE }}
50-
51-
- name: Verify GPG keys
52-
run: |
53-
gpg --list-secret-keys --keyid-format LONG
54-
echo "Checking for key: ${{ secrets.GPG_KEYNAME }}"
55-
gpg --list-secret-keys --keyid-format LONG | grep "${{ secrets.GPG_KEYNAME }}" || { echo "Key not found"; exit 1; }
17+
server-username: MAVEN_USERNAME
18+
server-password: MAVEN_PASSWORD
19+
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
20+
gpg-passphrase: MAVEN_GPG_PASSPHRASE
5621

57-
- name: Set GPG keyname
58-
run: echo "GPG_KEYNAME=${{ secrets.GPG_KEYNAME }}" >> $GITHUB_ENV
22+
- name: Set version
23+
run: mvn versions:set -DnewVersion=${{ github.event.release.tag_name }}
5924

60-
- name: Publish to Maven Central
61-
run: mvn --batch-mode deploy -P release -Dgpg.keyname=${{ env.GPG_KEYNAME }}
25+
- name: Publish package
26+
run: mvn -P release --batch-mode deploy
6227
env:
63-
MAVEN_CENTRAL_USERNAME: ${{ secrets.MAVEN_CENTRAL_USERNAME }}
64-
MAVEN_CENTRAL_TOKEN: ${{ secrets.MAVEN_CENTRAL_TOKEN }}
28+
MAVEN_USERNAME: ${{ secrets.MAVEN_CENTRAL_USERNAME }}
29+
MAVEN_PASSWORD: ${{ secrets.MAVEN_CENTRAL_TOKEN }}
30+
MAVEN_GPG_PASSPHRASE: ${{ secrets.GPG_PRIVATE_KEY_PASSPHRASE }}

pom.xml

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -147,17 +147,14 @@
147147
<goals>
148148
<goal>sign</goal>
149149
</goals>
150-
<configuration>
151-
<keyname>${env.GPG_KEYNAME}</keyname>
152-
<gpgArguments>
153-
<arg>--batch</arg>
154-
<arg>--yes</arg>
155-
<arg>--pinentry-mode</arg>
156-
<arg>loopback</arg>
157-
</gpgArguments>
158-
</configuration>
159150
</execution>
160151
</executions>
152+
<configuration>
153+
<gpgArguments>
154+
<arg>--pinentry-mode</arg>
155+
<arg>loopback</arg>
156+
</gpgArguments>
157+
</configuration>
161158
</plugin>
162159
<plugin>
163160
<groupId>org.sonatype.central</groupId>

0 commit comments

Comments
 (0)