diff --git a/.github/workflows/release-maven-central.yml b/.github/workflows/release-maven-central.yml new file mode 100644 index 0000000..c6f4019 --- /dev/null +++ b/.github/workflows/release-maven-central.yml @@ -0,0 +1,58 @@ +name: Publish package to Maven Central +on: + pull_request: + branches: + - master + types: [closed] + +jobs: + publish: + if: github.event.pull_request.merged == true + runs-on: ubuntu-latest + steps: + - name: Step 1 - Checkout code + uses: actions/checkout@v3 + + - name: Step 2 - Import GPG key + run: | + echo "${{ secrets.GPG_PUBLIC_KEY }}" | gpg --import + echo "${{ secrets.GPG_SECRET_KEY }}" | gpg --import --no-tty --batch --yes + + - name: Step 3 - Set up Maven Central Repository + uses: actions/setup-java@v3 + with: + java-version: "8" + distribution: "adopt" + server-id: ossrh + server-username: ${{ secrets.OSSRH_USERNAME }} + server-password: ${{ secrets.OSSRH_TOKEN }} + + - name: Step 4 - Install GitVersion + uses: gittools/actions/gitversion/setup@v0 + with: + versionSpec: '5.x' + - name: Step 5 - Determine Version + id: gitversion + uses: gittools/actions/gitversion/execute@v0 + with: + useConfigFile: true + + - name: Step 6 - Create Release + id: create_release + uses: actions/create-release@latest + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + TITLE: ${{ github.event.pull_request.title }} + BODY: ${{ github.event.pull_request.body }} + VERSION: "v${{ steps.gitversion.outputs.semVer }}" + with: + tag_name: $VERSION + release_name: $VERSION $TITLE + body: $BODY + draft: false + prerelease: false + + - name: Step 7 - Publish package + run: | + mvn -P release -Dgpg.passphrase=${{ secrets.GPG_PASSPHRASE }} \ + -Drevision=${{ steps.gitversion.outputs.semVer }} deploy diff --git a/GitVersion.yml b/GitVersion.yml new file mode 100644 index 0000000..3396b04 --- /dev/null +++ b/GitVersion.yml @@ -0,0 +1,5 @@ +mode: Mainline +increment: Inherit +branches: {} +ignore: + sha: [] \ No newline at end of file diff --git a/pom.xml b/pom.xml index 77c01a0..fbfa923 100644 --- a/pom.xml +++ b/pom.xml @@ -246,6 +246,12 @@ sign + + + --pinentry-mode + loopback + +