Skip to content

Release

Release #23

Workflow file for this run

name: Release
on:
workflow_dispatch:
inputs:
version:
description: 'Release version'
required: true
nextVersion:
description: 'Next version after release (-SNAPSHOT will be added automatically)'
required: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: 'Checkout from Git'
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: 'Set up JDK'
uses: actions/setup-java@v4
with:
java-version: 21
distribution: temurin
cache: maven
- name: 'Set release version'
run: mvn versions:set --no-transfer-progress --batch-mode -DnewVersion=${{ github.event.inputs.version }}
- name: 'Update version in documentation'
run: |
sed -i "s/<version>.*<\/version>/<version>${{ github.event.inputs.version }}<\/version>/g" README.md
sed -i "s/<version>.*<\/version>/<version>${{ github.event.inputs.version }}<\/version>/g" docs/_includes/maven
- name: 'Commit & push changes'
uses: actions-js/push@master
with:
github_token: ${{ secrets.JRELEASER_GITHUB_TOKEN }}
message: Bumps version to ${{ github.event.inputs.version }}
- name: 'Stage release'
run: mvn clean deploy --no-transfer-progress --batch-mode -DaltDeploymentRepository=local::default::file://`pwd`/target/staging-deploy
- name: 'Run JReleaser'
uses: jreleaser/release-action@v2
with:
setup-java: false
version: 1.9.0
env:
JRELEASER_PROJECT_VERSION: ${{ github.event.inputs.version }}
JRELEASER_GITHUB_TOKEN: ${{ secrets.JRELEASER_GITHUB_TOKEN }}
JRELEASER_GPG_PASSPHRASE: ${{ secrets.JRELEASER_GPG_PASSPHRASE }}
JRELEASER_GPG_PUBLIC_KEY: ${{ secrets.JRELEASER_GPG_PUBLIC_KEY }}
JRELEASER_GPG_SECRET_KEY: ${{ secrets.JRELEASER_GPG_SECRET_KEY }}
JRELEASER_NEXUS2_MAVEN_CENTRAL_USERNAME: ${{ secrets.JRELEASER_NEXUS2_MAVEN_CENTRAL_USERNAME }}
JRELEASER_NEXUS2_MAVEN_CENTRAL_PASSWORD: ${{ secrets.JRELEASER_NEXUS2_MAVEN_CENTRAL_PASSWORD }}
- name: 'Set release version'
run: mvn versions:set --no-transfer-progress --batch-mode -DnewVersion=${{ github.event.inputs.nextVersion }}-SNAPSHOT
- name: 'Commit & push changes'
uses: actions-js/push@master
with:
github_token: ${{ secrets.JRELEASER_GITHUB_TOKEN }}
message: "Prepares for next development iteration: ${{ github.event.inputs.nextVersion }}-SNAPSHOT"
tags: false
- name: 'Print diagnostic information'
run: |
echo ">>> output.properties"
cat out/jreleaser/output.properties
echo ""
echo ">>> trace.log"
cat out/jreleaser/trace.log