11name : Publish libayatana-appindicator-java-full to Maven Central
2+
23on :
34 release :
45 types : [published]
@@ -11,25 +12,41 @@ jobs:
1112 publish :
1213 runs-on : ubuntu-latest
1314 if : startsWith(github.ref, 'refs/tags/') # only allow publishing tagged versions
15+
1416 steps :
1517 - uses : actions/checkout@v4
1618 with :
17- ref : ' libayatana-appindicator-full'
18- - uses : actions/setup-java@v4
19+ ref : ' libayatana-appindicator-full'
20+
21+ - name : Set up Java
22+ uses : actions/setup-java@v4
1923 with :
24+ java-version : ' 22'
2025 distribution : ' zulu'
21- java-version : 22
22- cache : ' maven'
23- server-id : ossrh
24- server-username : MAVEN_USERNAME
25- server-password : MAVEN_PASSWORD
26- gpg-private-key : ${{ secrets.RELEASES_GPG_PRIVATE_KEY }} # Value of the GPG private key to import
27- gpg-passphrase : MAVEN_GPG_PASSPHRASE # env variable for GPG private key passphrase
28- - name : Enforce project version ${{ github.event.release.tag_name }}
29- run : mvn versions:set -B -DnewVersion="${{ github.event.release.tag_name }}"
30- - name : Deploy
31- run : mvn deploy -B -DskipTests -Psign,deploy-central --no-transfer-progress
26+
27+ - name : Setup Gradle
28+ uses : gradle/actions/setup-gradle@v4
29+
30+ - name : Import GPG key
31+ run : |
32+ echo "$GPG_SIGNING_KEY_PW" | gpg --batch --import --yes --passphrase-fd 0 <(echo -n "$GPG_SIGNING_KEY_B64" | base64 --decode)
33+ env :
34+ GPG_SIGNING_KEY_B64 : ${{ secrets.GPG_PRIVATE_KEY_B64 }}
35+ GPG_SIGNING_KEY_PW : ${{ secrets.GPG_PASSPHRASE }}
36+
37+ - name : Setup GPG key information
38+ run : |
39+ mkdir -p ~/.gradle
40+ echo "signing.gnupg.passphrase=${GPG_SIGNING_KEY_PW}" >> ~/.gradle/gradle.properties
41+ env :
42+ GPG_SIGNING_KEY_PW : ${{ secrets.GPG_PASSPHRASE }}
43+
44+ - name : Build package
45+ run : ./gradlew clean build
46+ env :
47+
48+ - name : Publish package
49+ run : ./gradlew publishToSonatype closeSonatypeStagingRepository
3250 env :
33- MAVEN_USERNAME : ${{ secrets.NEXUS_USERNAME }}
34- MAVEN_PASSWORD : ${{ secrets.NEXUS_PASSWORD }}
35- MAVEN_GPG_PASSPHRASE : ${{ secrets.RELEASES_GPG_PASSPHRASE }}
51+ SONATYPE_USERNAME : ${{ secrets.NEXUS_USERNAME }}
52+ SONATYPE_PASSWORD : ${{ secrets.NEXUS_PASSWORD }}
0 commit comments