Skip to content

Publish to Maven Central #90

Publish to Maven Central

Publish to Maven Central #90

name: Publish to Maven Central
on:
workflow_dispatch:
inputs:
tag:
description: 'Tag'
required: true
default: '0.0.0'
sonatypeUsername:
description: 'Sonatype username'
type: string
required: true
sonatypePassword:
description: 'Sonatype password'
type: string
required: true
jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup GPG key information
run: |
mkdir -p ~/.gradle
echo "signing.gnupg.homeDir=/home/runner/.gnupg" >> ~/.gradle/gradle.properties
echo "signing.gnupg.executable=gpg" >> ~/.gradle/gradle.properties
echo "signing.gnupg.keyName=ABC48776" >> ~/.gradle/gradle.properties
echo "signing.gnupg.passphrase=${GPG_SIGNING_KEY_PW}" >> ~/.gradle/gradle.properties
env:
GPG_SIGNING_KEY_PW: ${{ secrets.GPG_PASSPHRASE }}
- name: Set up Java
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
- name: Publish package
run: ./gradlew publishToSonatype closeSonatypeStagingRepository
env:
SONATYPE_USERNAME: ${{ inputs.sonatypeUsername }}
SONATYPE_PASSWORD: ${{ inputs.sonatypePassword }}
GPG_SIGNING_KEY: ${{ secrets.GPG_PRIVATE_KEY }}
GPG_SIGNING_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}