Added release build support with an updated SemVer plugin. #3

Merged
pfm merged 3 commits from add-release-builds into main 2024-03-21 02:57:21 +00:00
4 changed files with 57 additions and 3 deletions

View file

@ -19,6 +19,12 @@ jobs:
pre-commit install
pre-commit run --all-files
- name: 'Unit Tests and Code Coverage'
run: sbt clean coverage test coverageReport
run: |
sbtn clean
sbtn coverage
sbtn test
sbtn coverageReport
- name: 'Publish Snapshot'
run: sbt clean publish
run: |
sbtn clean
sbtn publish

View file

@ -0,0 +1,47 @@
on:
workflow_dispatch:
inputs:
releaseType:
description: 'Release Type'
required: true
default: 'patch'
type: choice
options:
- major
- minor
- patch
jobs:
library_release:
runs-on: docker
container:
image: registry.garrity.co:8443/gs/ci-scala:latest
name: 'Build and Release Library'
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'
- name: 'Pre-Commit'
run: |
pre-commit install
pre-commit run --all-files
- name: 'Unit Tests and Code Coverage'
run: |
sbtn clean
sbtn coverage
sbtn test
sbtn coverageReport
- name: 'Publish Release'
run: |
sbtn clean
sbtn "-Drelease=$GS_RELEASE_TYPE" semVerInfo
sbtn "-Drelease=$GS_RELEASE_TYPE" semVerWriteVersionToFile
sbtn "-Drelease=$GS_RELEASE_TYPE" publish
- name: 'Create Git Tag'
run: |
selected_version="$(cat .version)"
git tag "$selected_version"
git push origin "$selected_version"

1
.gitignore vendored
View file

@ -2,3 +2,4 @@ target/
project/target/
project/project/
modules/core/target/
.version

View file

@ -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.0")
addSbtPlugin("gs" % "sbt-gs-semver" % "0.2.1")