From f6a6b25fbc51037d063409ba3298fd3d53ef92e1 Mon Sep 17 00:00:00 2001 From: Pat Garrity Date: Wed, 20 Mar 2024 22:10:50 -0500 Subject: [PATCH] (patch) Automating release builds. --- .forgejo/workflows/release.yaml | 32 ++++++++++++++++++++------------ 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/.forgejo/workflows/release.yaml b/.forgejo/workflows/release.yaml index edab4af..658a7d5 100644 --- a/.forgejo/workflows/release.yaml +++ b/.forgejo/workflows/release.yaml @@ -1,15 +1,7 @@ on: - workflow_dispatch: - inputs: - releaseType: - description: 'Release Type' - required: true - default: 'patch' - type: choice - options: - - major - - minor - - patch + push: + branches: + - main jobs: library_release: @@ -20,7 +12,6 @@ jobs: env: GS_MAVEN_USER: ${{ vars.GS_MAVEN_USER }} GS_MAVEN_TOKEN: ${{ secrets.GS_MAVEN_TOKEN }} - GS_RELEASE_TYPE: ${{ inputs.releaseType }} steps: - uses: actions/checkout@v4 name: 'Checkout Repository' @@ -36,6 +27,23 @@ jobs: sbtn coverageReport - name: 'Publish Release' run: | + latest_commit_message="$(git show -s --format=%s HEAD)" + case "$latest_commit_message" in + *(patch)*) + export GS_RELEASE_TYPE="patch" + ;; + *(minor)*) + export GS_RELEASE_TYPE="minor" + ;; + *(major)*) + export GS_RELEASE_TYPE="major" + ;; + *) + export GS_RELEASE_TYPE="patch" + ;; + esac + echo "Latest Commit: $latest_commit_message" + echo "Selected Release Type: '$GS_RELEASE_TYPE'" sbtn clean sbtn "-Drelease=$GS_RELEASE_TYPE" semVerInfo sbtn "-Drelease=$GS_RELEASE_TYPE" semVerWriteVersionToFile