Skip to content

Release

Release #2

Workflow file for this run

name: Release
on:
push:
tags:
- 'v*.*.*'
# See ci.yml for the rationale.
env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
jobs:
publish:
name: Publish to Maven Central
runs-on: ubuntu-latest
environment: maven-central
steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 17
cache: maven
server-id: central
server-username: CENTRAL_USERNAME
server-password: CENTRAL_PASSWORD
gpg-private-key: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }}
gpg-passphrase: MAVEN_GPG_PASSPHRASE
- name: Set version from tag
run: |
VERSION="${GITHUB_REF_NAME#v}"
echo "Releasing version $VERSION"
mvn -B -ntp versions:set -DnewVersion="$VERSION" -DgenerateBackupPoms=false
- name: Build, sign, and deploy
env:
CENTRAL_USERNAME: ${{ secrets.CENTRAL_USERNAME }}
CENTRAL_PASSWORD: ${{ secrets.CENTRAL_PASSWORD }}
MAVEN_GPG_PASSPHRASE: ${{ secrets.MAVEN_GPG_PASSPHRASE }}
run: mvn -B -ntp -Prelease deploy