From f933b2f21e3e35eaad8329a4460b16e8b18828ef Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Wed, 4 Jun 2025 14:26:16 +0100 Subject: [PATCH 01/14] Create maven-publish.yml --- .github/workflows/maven-publish.yml | 36 +++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 .github/workflows/maven-publish.yml diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml new file mode 100644 index 0000000..1943ebe --- /dev/null +++ b/.github/workflows/maven-publish.yml @@ -0,0 +1,36 @@ +# This workflow will build a package using Maven and then publish it to GitHub packages when a release is created +# For more information see: https://github.com/actions/setup-java/blob/main/docs/advanced-usage.md#apache-maven-with-a-settings-path + +name: Maven Package + +on: + release: + types: [created] + +jobs: + build: + + runs-on: ubuntu-latest + permissions: + contents: read + packages: write + + steps: + - uses: actions/checkout@v4 + - name: Set up JDK 11 + uses: actions/setup-java@v4 + with: + java-version: '11' + distribution: 'temurin' + server-id: github # Value of the distributionManagement/repository/id field of the pom.xml + settings-path: ${{ github.workspace }} # location for the settings.xml file + + - name: Build with Maven + run: mvn clean package -Dmaven.javadoc.skip=false + + - name: Publish to Maven Central + run: mvn -X -s "$MAVEN_SETTINGS" deploy -DskipTests -Dmaven.javadoc.skip=false + env: + GITHUB_TOKEN: ${{ github.token }} + MAVEN_USERNAME: ${{ secrets.MAVEN_CENTRAL_USERNAME }} + MAVEN_PASSWORD: ${{ secrets.MAVEN_CENTRAL_TOKEN }} From 4d283bd5652880499e92e6926385641ca1b22ccb Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Thu, 5 Jun 2025 12:49:24 +0100 Subject: [PATCH 02/14] Update maven-publish.yml --- .github/workflows/maven-publish.yml | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml index 1943ebe..448d93e 100644 --- a/.github/workflows/maven-publish.yml +++ b/.github/workflows/maven-publish.yml @@ -1,7 +1,4 @@ -# This workflow will build a package using Maven and then publish it to GitHub packages when a release is created -# For more information see: https://github.com/actions/setup-java/blob/main/docs/advanced-usage.md#apache-maven-with-a-settings-path - -name: Maven Package +name: Maven Publish on: release: @@ -22,15 +19,17 @@ jobs: with: java-version: '11' distribution: 'temurin' - server-id: github # Value of the distributionManagement/repository/id field of the pom.xml - settings-path: ${{ github.workspace }} # location for the settings.xml file + server-id: central + server-username: ${{ secrets.MAVEN_CENTRAL_USERNAME }} + server-password: ${{ secrets.MAVEN_CENTRAL_TOKEN }} + gpg-private-key: ${{ secrets.GPG_SECRET_KEY }} + gpg-passphrase: ${{ secrets.GPG_PASSPHRASE }} - name: Build with Maven run: mvn clean package -Dmaven.javadoc.skip=false + - name: Import signing key + run: gpg --batch --import ${{ secrets.GPG_SECRET_KEY }} + - name: Publish to Maven Central - run: mvn -X -s "$MAVEN_SETTINGS" deploy -DskipTests -Dmaven.javadoc.skip=false - env: - GITHUB_TOKEN: ${{ github.token }} - MAVEN_USERNAME: ${{ secrets.MAVEN_CENTRAL_USERNAME }} - MAVEN_PASSWORD: ${{ secrets.MAVEN_CENTRAL_TOKEN }} + run: mvn -X -Dgpg.passphrase=${{ secrets.PGP_PASSPHRASE }} deploy -DskipTests -Dmaven.javadoc.skip=false From 9ec858a1511433609c80c8031bfe6f65236c1c85 Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Thu, 5 Jun 2025 13:01:48 +0100 Subject: [PATCH 03/14] Update maven-publish.yml --- .github/workflows/maven-publish.yml | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml index 448d93e..a61b5aa 100644 --- a/.github/workflows/maven-publish.yml +++ b/.github/workflows/maven-publish.yml @@ -1,8 +1,7 @@ name: Maven Publish on: - release: - types: [created] + pull_request: jobs: build: @@ -25,11 +24,8 @@ jobs: gpg-private-key: ${{ secrets.GPG_SECRET_KEY }} gpg-passphrase: ${{ secrets.GPG_PASSPHRASE }} - - name: Build with Maven + - name: Build and Test run: mvn clean package -Dmaven.javadoc.skip=false - - - name: Import signing key - run: gpg --batch --import ${{ secrets.GPG_SECRET_KEY }} - name: Publish to Maven Central - run: mvn -X -Dgpg.passphrase=${{ secrets.PGP_PASSPHRASE }} deploy -DskipTests -Dmaven.javadoc.skip=false + run: mvn -X deploy -DskipTests -Dmaven.javadoc.skip=false From 76ac50fe2270e0650773005edaccc2357cac4b46 Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Thu, 5 Jun 2025 13:54:24 +0100 Subject: [PATCH 04/14] Update maven-publish.yml --- .github/workflows/maven-publish.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml index a61b5aa..d813035 100644 --- a/.github/workflows/maven-publish.yml +++ b/.github/workflows/maven-publish.yml @@ -15,6 +15,8 @@ jobs: - uses: actions/checkout@v4 - name: Set up JDK 11 uses: actions/setup-java@v4 + env: + GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} with: java-version: '11' distribution: 'temurin' @@ -22,7 +24,6 @@ jobs: server-username: ${{ secrets.MAVEN_CENTRAL_USERNAME }} server-password: ${{ secrets.MAVEN_CENTRAL_TOKEN }} gpg-private-key: ${{ secrets.GPG_SECRET_KEY }} - gpg-passphrase: ${{ secrets.GPG_PASSPHRASE }} - name: Build and Test run: mvn clean package -Dmaven.javadoc.skip=false From 0c6c82907a31c1edeba10731d7312e0104be22d3 Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Tue, 10 Jun 2025 11:24:00 +0100 Subject: [PATCH 05/14] Update maven-publish.yml --- .github/workflows/maven-publish.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml index d813035..dd24c6c 100644 --- a/.github/workflows/maven-publish.yml +++ b/.github/workflows/maven-publish.yml @@ -24,6 +24,7 @@ jobs: server-username: ${{ secrets.MAVEN_CENTRAL_USERNAME }} server-password: ${{ secrets.MAVEN_CENTRAL_TOKEN }} gpg-private-key: ${{ secrets.GPG_SECRET_KEY }} + gpg-passphrase: GPG_PASSPHRASE - name: Build and Test run: mvn clean package -Dmaven.javadoc.skip=false From a5650f304ee2fd3cebdda4c9b95822f947b38caa Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Tue, 10 Jun 2025 11:28:41 +0100 Subject: [PATCH 06/14] Update maven-publish.yml --- .github/workflows/maven-publish.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml index dd24c6c..c0b9f16 100644 --- a/.github/workflows/maven-publish.yml +++ b/.github/workflows/maven-publish.yml @@ -15,8 +15,6 @@ jobs: - uses: actions/checkout@v4 - name: Set up JDK 11 uses: actions/setup-java@v4 - env: - GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} with: java-version: '11' distribution: 'temurin' @@ -27,7 +25,11 @@ jobs: gpg-passphrase: GPG_PASSPHRASE - name: Build and Test + env: + GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} run: mvn clean package -Dmaven.javadoc.skip=false - name: Publish to Maven Central + env: + GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} run: mvn -X deploy -DskipTests -Dmaven.javadoc.skip=false From 98675aaadde4b087862dc447fb9c8864689221aa Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Tue, 10 Jun 2025 15:23:36 +0100 Subject: [PATCH 07/14] Update pom.xml --- pom.xml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/pom.xml b/pom.xml index 36184b4..1e6f3fd 100644 --- a/pom.xml +++ b/pom.xml @@ -40,13 +40,6 @@ - - - ossrh - https://oss.sonatype.org/service/local/staging/deploy/maven2/ - - - com.jayway.jsonpath @@ -266,6 +259,15 @@ + + org.sonatype.central + central-publishing-maven-plugin + 0.7.0 + true + + central + + From 852fda655c341643a6bbb6662da80b01ad08fdd5 Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Tue, 10 Jun 2025 15:32:47 +0100 Subject: [PATCH 08/14] Update maven-publish.yml --- .github/workflows/maven-publish.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml index c0b9f16..ea1f17c 100644 --- a/.github/workflows/maven-publish.yml +++ b/.github/workflows/maven-publish.yml @@ -27,9 +27,13 @@ jobs: - name: Build and Test env: GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} - run: mvn clean package -Dmaven.javadoc.skip=false + run: | + gpg- --list-keys + mvn clean package -Dmaven.javadoc.skip=false - name: Publish to Maven Central env: GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} - run: mvn -X deploy -DskipTests -Dmaven.javadoc.skip=false + run: | + gpg --list-keys + mvn -X deploy -DskipTests -Dmaven.javadoc.skip=false From 431a95aa5818f50f2be9370639d9cceaec4fa620 Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Tue, 10 Jun 2025 15:33:34 +0100 Subject: [PATCH 09/14] Update maven-publish.yml --- .github/workflows/maven-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml index ea1f17c..7c2ece5 100644 --- a/.github/workflows/maven-publish.yml +++ b/.github/workflows/maven-publish.yml @@ -28,7 +28,7 @@ jobs: env: GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} run: | - gpg- --list-keys + gpg --list-keys mvn clean package -Dmaven.javadoc.skip=false - name: Publish to Maven Central From 19eb08e52584817b7cbfd51ea3fe2a420f90c13a Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Tue, 10 Jun 2025 15:46:10 +0100 Subject: [PATCH 10/14] Update maven-publish.yml --- .github/workflows/maven-publish.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml index 7c2ece5..40eaa0e 100644 --- a/.github/workflows/maven-publish.yml +++ b/.github/workflows/maven-publish.yml @@ -25,11 +25,7 @@ jobs: gpg-passphrase: GPG_PASSPHRASE - name: Build and Test - env: - GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} - run: | - gpg --list-keys - mvn clean package -Dmaven.javadoc.skip=false + run: mvn clean package -Dmaven.javadoc.skip=false - name: Publish to Maven Central env: From 413a59974a47f85f85f2006b0ebf073788bc46cb Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Tue, 10 Jun 2025 16:41:08 +0100 Subject: [PATCH 11/14] Update maven-publish.yml --- .github/workflows/maven-publish.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml index 40eaa0e..85105bf 100644 --- a/.github/workflows/maven-publish.yml +++ b/.github/workflows/maven-publish.yml @@ -19,8 +19,8 @@ jobs: java-version: '11' distribution: 'temurin' server-id: central - server-username: ${{ secrets.MAVEN_CENTRAL_USERNAME }} - server-password: ${{ secrets.MAVEN_CENTRAL_TOKEN }} + server-username: MAVEN_CENTRAL_USERNAME + server-password: MAVEN_CENTRAL_TOKEN gpg-private-key: ${{ secrets.GPG_SECRET_KEY }} gpg-passphrase: GPG_PASSPHRASE @@ -30,6 +30,6 @@ jobs: - name: Publish to Maven Central env: GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} - run: | - gpg --list-keys - mvn -X deploy -DskipTests -Dmaven.javadoc.skip=false + MAVEN_CENTRAL_USERNAME: ${{ secrets.MAVEN_CENTRAL_USERNAME }} + MAVEN_CENTRAL_TOKEN: ${{ secrets.MAVEN_CENTRAL_TOKEN }} + run: mvn -X deploy -DskipTests -Dmaven.javadoc.skip=false From fdf6356f4297d9ca66090fc7e7411596dceb3dca Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Wed, 11 Jun 2025 09:40:47 +0100 Subject: [PATCH 12/14] Update maven-publish.yml --- .github/workflows/maven-publish.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml index 85105bf..5404892 100644 --- a/.github/workflows/maven-publish.yml +++ b/.github/workflows/maven-publish.yml @@ -1,7 +1,8 @@ name: Maven Publish on: - pull_request: + release: + types: [published] jobs: build: From 86a1554239c72f93f4e04c320de352b753aadabb Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Wed, 11 Jun 2025 13:09:44 +0100 Subject: [PATCH 13/14] Update maven-publish.yml --- .github/workflows/maven-publish.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml index 5404892..fe87b3d 100644 --- a/.github/workflows/maven-publish.yml +++ b/.github/workflows/maven-publish.yml @@ -1,8 +1,7 @@ name: Maven Publish on: - release: - types: [published] + pull_request: jobs: build: @@ -33,4 +32,4 @@ jobs: GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} MAVEN_CENTRAL_USERNAME: ${{ secrets.MAVEN_CENTRAL_USERNAME }} MAVEN_CENTRAL_TOKEN: ${{ secrets.MAVEN_CENTRAL_TOKEN }} - run: mvn -X deploy -DskipTests -Dmaven.javadoc.skip=false + run: mvn -X deploy -Dmaven.javadoc.skip=false From 7e02283a11df939254c765089d815cbe71ca88fc Mon Sep 17 00:00:00 2001 From: cormacdalton <145557886+cormacdalton@users.noreply.github.com> Date: Wed, 11 Jun 2025 13:13:17 +0100 Subject: [PATCH 14/14] Update maven-publish.yml --- .github/workflows/maven-publish.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml index fe87b3d..0557e27 100644 --- a/.github/workflows/maven-publish.yml +++ b/.github/workflows/maven-publish.yml @@ -1,7 +1,8 @@ name: Maven Publish on: - pull_request: + release: + types: [published] jobs: build: