40 lines
1.2 KiB
YAML
40 lines
1.2 KiB
YAML
# 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 25
|
|
uses: actions/setup-java@v4
|
|
with:
|
|
java-version: '25'
|
|
distribution: 'temurin'
|
|
server-id: central
|
|
server-username: MAVEN_USERNAME
|
|
server-password: MAVEN_PASSWORD
|
|
gpg-private-key: ${{ secrets.GPG_SIGNING_KEY }}
|
|
gpg-passphrase: MAVEN_GPG_PASSPHRASE
|
|
- name: Set version
|
|
run: mvn versions:set -DnewVersion=${{ github.event.release.tag_name }}
|
|
- name: Build with Maven
|
|
run: mvn -B package --file pom.xml
|
|
- name: Publish package
|
|
run: mvn -P release --batch-mode deploy -DskipTests
|
|
env:
|
|
MAVEN_USERNAME: ${{ secrets.CENTRAL_TOKEN_USERNAME }}
|
|
MAVEN_PASSWORD: ${{ secrets.CENTRAL_TOKEN_PASSWORD }}
|
|
MAVEN_GPG_PASSPHRASE: ${{ secrets.GPG_SIGNING_KEY_PASSWORD }}
|