From 2f89c2391db8d0a82f94bdb82150e21821138eb2 Mon Sep 17 00:00:00 2001 From: Pat Garrity Date: Fri, 22 Mar 2024 22:20:11 -0500 Subject: [PATCH 1/8] (patch) Update to SemVer plugin 0.2.2 and update build scripts. --- .forgejo/workflows/pull_request.yaml | 26 +++++++++---------- .forgejo/workflows/release.yaml | 37 +++++++++++++--------------- project/plugins.sbt | 2 +- 3 files changed, 30 insertions(+), 35 deletions(-) diff --git a/.forgejo/workflows/pull_request.yaml b/.forgejo/workflows/pull_request.yaml index 32d54a4..5dbb6af 100644 --- a/.forgejo/workflows/pull_request.yaml +++ b/.forgejo/workflows/pull_request.yaml @@ -18,24 +18,22 @@ jobs: run: | pre-commit install pre-commit run --all-files - - name: 'Unit Tests and Code Coverage' + - name: 'Prepare Versioned Build' 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*) + if [[ "$latest_commit_message" == *"(major)"* ]]; then export GS_RELEASE_TYPE="major" - ;; - *) + elif [[ "$latest_commit_message" == *"(minor)"* ]]; then + export GS_RELEASE_TYPE="minor" + elif [[ "$latest_commit_message" == *"(patch)"* ]]; then export GS_RELEASE_TYPE="patch" - ;; - esac - echo "Latest Commit: $latest_commit_message ($GS_RELEASE_TYPE)" + else + export GS_RELEASE_TYPE="patch" + fi + echo "Latest Commit: $latest_commit_message ($GS_RELEASE_TYPE) (SNAPSHOT)" + sbtn -Drelease="$GS_RELEASE_TYPE" semVerInfo + - name: 'Unit Tests and Code Coverage' + run: | sbtn clean sbtn coverage sbtn test diff --git a/.forgejo/workflows/release.yaml b/.forgejo/workflows/release.yaml index a1ab790..cc20434 100644 --- a/.forgejo/workflows/release.yaml +++ b/.forgejo/workflows/release.yaml @@ -19,6 +19,21 @@ jobs: run: | pre-commit install pre-commit run --all-files + - name: 'Prepare Versioned Build' + run: | + latest_commit_message="$(git show -s --format=%s HEAD)" + if [[ "$latest_commit_message" == *"(major)"* ]]; then + export GS_RELEASE_TYPE="major" + elif [[ "$latest_commit_message" == *"(minor)"* ]]; then + export GS_RELEASE_TYPE="minor" + elif [[ "$latest_commit_message" == *"(patch)"* ]]; then + export GS_RELEASE_TYPE="patch" + else + export GS_RELEASE_TYPE="patch" + fi + echo "Latest Commit: $latest_commit_message" + echo "Selected Release Type: '$GS_RELEASE_TYPE'" + sbtn -Drelease="$GS_RELEASE_TYPE" semVerInfo - name: 'Unit Tests and Code Coverage' run: | sbtn clean @@ -27,27 +42,9 @@ 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 - sbtn "-Drelease=$GS_RELEASE_TYPE" publish + sbtn semVerWriteVersionToFile + sbtn publish - name: 'Create Git Tag' run: | selected_version="$(cat .version)" diff --git a/project/plugins.sbt b/project/plugins.sbt index 5a7d19d..78b59cb 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -30,4 +30,4 @@ externalResolvers := Seq( addSbtPlugin("org.scoverage" % "sbt-scoverage" % "2.0.11") addSbtPlugin("gs" % "sbt-garrity-software" % "0.2.0") -addSbtPlugin("gs" % "sbt-gs-semver" % "0.2.1") +addSbtPlugin("gs" % "sbt-gs-semver" % "0.2.2") -- 2.43.0 From 406bce88702115c96f235b11b69c0e4929d1a0ef Mon Sep 17 00:00:00 2001 From: Pat Garrity Date: Fri, 22 Mar 2024 22:29:06 -0500 Subject: [PATCH 2/8] Attempting to force BASH to get used. --- .forgejo/workflows/pull_request.yaml | 4 ++++ .forgejo/workflows/release.yaml | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/.forgejo/workflows/pull_request.yaml b/.forgejo/workflows/pull_request.yaml index 5dbb6af..d60cbf1 100644 --- a/.forgejo/workflows/pull_request.yaml +++ b/.forgejo/workflows/pull_request.yaml @@ -2,6 +2,10 @@ on: pull_request: types: [opened, synchronize, reopened] +defaults: + run: + shell: bash + jobs: library_snapshot: runs-on: docker diff --git a/.forgejo/workflows/release.yaml b/.forgejo/workflows/release.yaml index cc20434..53e9055 100644 --- a/.forgejo/workflows/release.yaml +++ b/.forgejo/workflows/release.yaml @@ -3,6 +3,10 @@ on: branches: - main +defaults: + run: + shell: bash + jobs: library_release: runs-on: docker -- 2.43.0 From bff0ba69696081d7d854279899feb061f2122ac4 Mon Sep 17 00:00:00 2001 From: Pat Garrity Date: Fri, 22 Mar 2024 22:31:04 -0500 Subject: [PATCH 3/8] fixing an oops --- .forgejo/workflows/pull_request.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.forgejo/workflows/pull_request.yaml b/.forgejo/workflows/pull_request.yaml index d60cbf1..d33d3c7 100644 --- a/.forgejo/workflows/pull_request.yaml +++ b/.forgejo/workflows/pull_request.yaml @@ -35,7 +35,6 @@ jobs: export GS_RELEASE_TYPE="patch" fi echo "Latest Commit: $latest_commit_message ($GS_RELEASE_TYPE) (SNAPSHOT)" - sbtn -Drelease="$GS_RELEASE_TYPE" semVerInfo - name: 'Unit Tests and Code Coverage' run: | sbtn clean -- 2.43.0 From 52b285fccf8c4c34dcdad9ab26bb71acc46868b0 Mon Sep 17 00:00:00 2001 From: Pat Garrity Date: Fri, 22 Mar 2024 22:32:56 -0500 Subject: [PATCH 4/8] allowing for snapshot version calculation --- .forgejo/workflows/pull_request.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.forgejo/workflows/pull_request.yaml b/.forgejo/workflows/pull_request.yaml index d33d3c7..8445a88 100644 --- a/.forgejo/workflows/pull_request.yaml +++ b/.forgejo/workflows/pull_request.yaml @@ -35,6 +35,7 @@ jobs: export GS_RELEASE_TYPE="patch" fi echo "Latest Commit: $latest_commit_message ($GS_RELEASE_TYPE) (SNAPSHOT)" + sbtn -Dsnapshot=true -Drelease="$GS_RELEASE_TYPE" semVerInfo - name: 'Unit Tests and Code Coverage' run: | sbtn clean -- 2.43.0 From 58565c752355fc61391024a70654cf6585788db1 Mon Sep 17 00:00:00 2001 From: Pat Garrity Date: Fri, 22 Mar 2024 22:38:04 -0500 Subject: [PATCH 5/8] debugging --- .forgejo/workflows/pull_request.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.forgejo/workflows/pull_request.yaml b/.forgejo/workflows/pull_request.yaml index 8445a88..b395b14 100644 --- a/.forgejo/workflows/pull_request.yaml +++ b/.forgejo/workflows/pull_request.yaml @@ -24,6 +24,7 @@ jobs: pre-commit run --all-files - name: 'Prepare Versioned Build' run: | + latest_git_tag="$(git describe --tags --abbrev=0)" latest_commit_message="$(git show -s --format=%s HEAD)" if [[ "$latest_commit_message" == *"(major)"* ]]; then export GS_RELEASE_TYPE="major" @@ -34,6 +35,7 @@ jobs: else export GS_RELEASE_TYPE="patch" fi + echo "Latest Git Tag: $latest_git_tag" echo "Latest Commit: $latest_commit_message ($GS_RELEASE_TYPE) (SNAPSHOT)" sbtn -Dsnapshot=true -Drelease="$GS_RELEASE_TYPE" semVerInfo - name: 'Unit Tests and Code Coverage' -- 2.43.0 From 41000b0bf74a05442722afc7c75bd00e8d2163b6 Mon Sep 17 00:00:00 2001 From: Pat Garrity Date: Fri, 22 Mar 2024 22:42:48 -0500 Subject: [PATCH 6/8] checkout with tags helps --- .forgejo/workflows/pull_request.yaml | 4 +++- .forgejo/workflows/release.yaml | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/.forgejo/workflows/pull_request.yaml b/.forgejo/workflows/pull_request.yaml index b395b14..45c98f9 100644 --- a/.forgejo/workflows/pull_request.yaml +++ b/.forgejo/workflows/pull_request.yaml @@ -18,6 +18,8 @@ jobs: steps: - uses: actions/checkout@v4 name: 'Checkout Repository' + with: + fetch-tags: true - name: 'Pre-Commit' run: | pre-commit install @@ -35,7 +37,7 @@ jobs: else export GS_RELEASE_TYPE="patch" fi - echo "Latest Git Tag: $latest_git_tag" + echo "Previous Git Tag: $latest_git_tag" echo "Latest Commit: $latest_commit_message ($GS_RELEASE_TYPE) (SNAPSHOT)" sbtn -Dsnapshot=true -Drelease="$GS_RELEASE_TYPE" semVerInfo - name: 'Unit Tests and Code Coverage' diff --git a/.forgejo/workflows/release.yaml b/.forgejo/workflows/release.yaml index 53e9055..52b483d 100644 --- a/.forgejo/workflows/release.yaml +++ b/.forgejo/workflows/release.yaml @@ -19,12 +19,15 @@ jobs: steps: - uses: actions/checkout@v4 name: 'Checkout Repository' + with: + fetch-tags: true - name: 'Pre-Commit' run: | pre-commit install pre-commit run --all-files - name: 'Prepare Versioned Build' run: | + latest_git_tag="$(git describe --tags --abbrev=0)" latest_commit_message="$(git show -s --format=%s HEAD)" if [[ "$latest_commit_message" == *"(major)"* ]]; then export GS_RELEASE_TYPE="major" @@ -35,6 +38,7 @@ jobs: else export GS_RELEASE_TYPE="patch" fi + echo "Previous Git Tag: $latest_git_tag" echo "Latest Commit: $latest_commit_message" echo "Selected Release Type: '$GS_RELEASE_TYPE'" sbtn -Drelease="$GS_RELEASE_TYPE" semVerInfo -- 2.43.0 From 9b85ec47666c5872ae9b23e43de35e7bdf1ed931 Mon Sep 17 00:00:00 2001 From: Pat Garrity Date: Fri, 22 Mar 2024 22:47:03 -0500 Subject: [PATCH 7/8] debuggggggg --- .forgejo/workflows/pull_request.yaml | 6 +++++- .forgejo/workflows/release.yaml | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.forgejo/workflows/pull_request.yaml b/.forgejo/workflows/pull_request.yaml index 45c98f9..9b2c440 100644 --- a/.forgejo/workflows/pull_request.yaml +++ b/.forgejo/workflows/pull_request.yaml @@ -19,7 +19,11 @@ jobs: - uses: actions/checkout@v4 name: 'Checkout Repository' with: - fetch-tags: true + fetch-depth: 0 + - name: 'Debugging' + run: | + latest_git_tag="$(git describe --tags --abbrev=0)" + echo "Previous Git Tag: $latest_git_tag" - name: 'Pre-Commit' run: | pre-commit install diff --git a/.forgejo/workflows/release.yaml b/.forgejo/workflows/release.yaml index 52b483d..9c76938 100644 --- a/.forgejo/workflows/release.yaml +++ b/.forgejo/workflows/release.yaml @@ -20,7 +20,7 @@ jobs: - uses: actions/checkout@v4 name: 'Checkout Repository' with: - fetch-tags: true + fetch-depth: 0 - name: 'Pre-Commit' run: | pre-commit install -- 2.43.0 From 6adb31bc89a961fa94143123e85237da1812932b Mon Sep 17 00:00:00 2001 From: Pat Garrity Date: Fri, 22 Mar 2024 22:48:35 -0500 Subject: [PATCH 8/8] Remove extra debugging output to prepare to merge. --- .forgejo/workflows/pull_request.yaml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.forgejo/workflows/pull_request.yaml b/.forgejo/workflows/pull_request.yaml index 9b2c440..700fa3d 100644 --- a/.forgejo/workflows/pull_request.yaml +++ b/.forgejo/workflows/pull_request.yaml @@ -20,10 +20,6 @@ jobs: name: 'Checkout Repository' with: fetch-depth: 0 - - name: 'Debugging' - run: | - latest_git_tag="$(git describe --tags --abbrev=0)" - echo "Previous Git Tag: $latest_git_tag" - name: 'Pre-Commit' run: | pre-commit install -- 2.43.0