Skip to content

[maven-release-plugin] prepare for next development iteration #347

[maven-release-plugin] prepare for next development iteration

[maven-release-plugin] prepare for next development iteration #347

Workflow file for this run

name: maven-release
on:
push:
branches:
- master
paths-ignore:
- '*.md'
- '.gitignore'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
java-version: 11
distribution: corretto
cache: maven
server-id: ossrh # Value of distributionManagement.repository.id field of pom.xml
server-username: MAVEN_USERNAME
server-password: MAVEN_PASSWORD
settings-path: ${{ github.workspace }} # Location for settings.xml file
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
gpg-passphrase: GPG_PASSPHRASE
- name: Publish with Maven deploy
run: >
mvn
--batch-mode
--activate-profiles deploy
--settings $GITHUB_WORKSPACE/settings.xml
-Pcoverage
clean deploy
env:
MAVEN_USERNAME: ${{ secrets.NEXUS_USERNAME }}
MAVEN_PASSWORD: ${{ secrets.NEXUS_PASSWORD }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
get-tag-of-current-sha:
needs: build
runs-on: ubuntu-latest
outputs:
tag: ${{ steps.tag-retriever.outputs.tag }}
# Var is empty if command to retrieve tag fails (e.g. if current SHA has no tag associated)
steps:
- name: Clone repo with complete history and tags
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Store tag of SHA if present
id: tag-retriever
run: |
echo "tag=$(git describe --exact-match ${{ github.sha }})" >> "$GITHUB_OUTPUT"
trigger-github-release:
needs: get-tag-of-current-sha
name: Trigger GitHub release workflow
if: needs.get-tag-of-current-sha.outputs.tag
# Runs job only if tag is present.
uses: ./.github/workflows/release-on-github.yml
with:
tag: ${{ needs.get-tag-of-current-sha.outputs.tag }}