Skip to content

Maven Publish

Maven Publish #24

Workflow file for this run

name: Maven Publish
on:
workflow_dispatch:
inputs:
libraryVersion:
description: 'Library Version'
required: true
default: ''
packageVersion:
description: 'Package Version'
required: true
default: ''
jobs:
update-version:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Update Version
run: |
sed -i '/VERSION=/!b;cVERSION=\"v${{ github.event.inputs.libraryVersion }}";' ./download-libs.sh
- name: Commit, Tag and Push
run: |
git add ./download-libs.sh
git config user.name github-actions
git config user.email [email protected]
git commit -m "updated version" | exit 0
git tag ${{ github.event.inputs.packageVersion }}
git push & git push --tags
publish:
needs: update-version
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: git pull origin master --ff-only
- name: Assemble Resources
run: ./download-libs.sh
- name: Set up JDK 11 and Maven settings + GPG
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '11'
server-id: central
server-username: MAVEN_USERNAME
server-password: MAVEN_PASSWORD
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
gpg-passphrase: MAVEN_GPG_PASSPHRASE
- name: Check Maven version
run: mvn -version
- name: Update Version in pom.xml
run: mvn -B versions:set -DnewVersion=${{ github.event.inputs.packageVersion }} -DgenerateBackupPoms=false
- name: Publish to Central Portal
run: mvn -B -e clean deploy -Pdeploy -Drevision=${{ github.event.inputs.packageVersion }}
env:
MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }}
MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }} # Central Portal token
MAVEN_GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}