Skip to content

Commit c3c1482

Browse files
committed
ci: Added workflow for build/test and release
1 parent aa51933 commit c3c1482

File tree

7 files changed

+116
-2
lines changed

7 files changed

+116
-2
lines changed

.github/workflows/main.yml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: Main
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
8+
concurrency: ${{ github.workflow }}-${{ github.ref }}
9+
10+
permissions:
11+
packages: write
12+
contents: write
13+
pull-requests: write
14+
issues: write
15+
16+
defaults:
17+
run:
18+
shell: bash
19+
20+
jobs:
21+
release:
22+
name: Main
23+
runs-on: ubuntu-latest
24+
25+
steps:
26+
- name: Checkout
27+
uses: actions/checkout@v4
28+
with:
29+
fetch-depth: 0
30+
31+
- name: Setup JDK
32+
uses: actions/setup-java@v4
33+
with:
34+
distribution: temurin
35+
java-version: 11
36+
37+
- name: Setup sbt launcher
38+
uses: sbt/setup-sbt@v1
39+
40+
- name: Build and Test
41+
env:
42+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
43+
run: sbt -v +test
44+

.github/workflows/release.yml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
8+
concurrency: ${{ github.workflow }}-${{ github.ref }}
9+
10+
permissions:
11+
packages: write
12+
contents: write
13+
pull-requests: write
14+
issues: write
15+
16+
defaults:
17+
run:
18+
shell: bash
19+
20+
jobs:
21+
release:
22+
name: Release
23+
runs-on: ubuntu-latest
24+
25+
steps:
26+
- uses: googleapis/release-please-action@v4
27+
id: release
28+
with:
29+
token: ${{ secrets.GITHUB_TOKEN }}
30+
31+
- name: Checkout
32+
if: steps.release.outputs.releases_created == 'true'
33+
uses: actions/checkout@v4
34+
35+
- name: Setup JDK
36+
if: steps.release.outputs.releases_created == 'true'
37+
uses: actions/setup-java@v4
38+
with:
39+
distribution: temurin
40+
java-version: 11
41+
42+
- name: Setup sbt launcher
43+
if: steps.release.outputs.releases_created == 'true'
44+
uses: sbt/setup-sbt@v1
45+
46+
- name: Publish
47+
if: steps.release.outputs.releases_created == 'true'
48+
env:
49+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
50+
REPOSITORY: ${{ github.repository }}
51+
VERSION: ${{ steps.release.outputs['major'] }}.${{ steps.release.outputs['minor'] }}.${{ steps.release.outputs['patch'] }}
52+
run: sbt publish

.release-please-manifest.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
".": "0.0.0"
3+
}

build.sbt

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
1-
1+
import scala.util.Properties.envOrElse
22

33

44
name := "validators"
55
ThisBuild / organization := "de.ekut.tbi"
66
ThisBuild / scalaVersion := "2.13.16"
7-
ThisBuild / version := "1.0-SNAPSHOT"
7+
ThisBuild / version := envOrElse("VERSION","1.0.0")
8+
9+
val ownerRepo = envOrElse("REPOSITORY","KohlbacherLab/scala-validators").split("/")
10+
ThisBuild / githubOwner := ownerRepo(0)
11+
ThisBuild / githubRepository := ownerRepo(1)
812

913

1014
//-----------------------------------------------------------------------------

project/plugins.sbt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
addSbtPlugin("com.codecommit" % "sbt-github-packages" % "0.5.3")

release-please-config.json

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"release-type": "simple",
3+
"bump-minor-pre-major": true,
4+
"bump-patch-for-minor-pre-major": true,
5+
"packages": {
6+
".": { }
7+
},
8+
"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json"
9+
}

version.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
0.0.0

0 commit comments

Comments
 (0)