-
Notifications
You must be signed in to change notification settings - Fork 4
95 lines (93 loc) · 2.78 KB
/
ci.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
name: CI
on:
pull_request:
paths:
- .sbtopts
- build.sbt
- project/**
- deps/**
- utils/**
- client/**
- snapi-client/**
- snapi-frontend/**
- parsers/**
- snapi-truffle/**
- python-client/**
- sql-client/**
- .github/workflows/ci.yaml
workflow_dispatch:
env:
SBT_OPTS : -Dsbt.log.noformat=true -Xss2m -Xms1g
GITHUB_TOKEN: ${{ secrets.READ_PACKAGES }}
jobs:
code-checks:
runs-on: self-hosted
container:
image: ghcr.io/raw-labs/raw-scala-runner:21.0.0-ol9-20230919_scala2.12.18_sbt1.9.6
options: --user 1001
credentials:
username: ${{ github.actor }}
password: ${{ secrets.READ_PACKAGES }}
steps:
- uses: actions/checkout@v4
- name: sdkman java setup
id: sdkman
run: |
export HOME="/home/sbtuser"
export SDKMAN_DIR="$HOME/.sdkman"
source $SDKMAN_DIR/bin/sdkman-init.sh
yes n | sdk install java 21.0.1-graalce || true
sdk use java 21.0.1-graalce
echo "$SDKMAN_DIR/candidates/java/current/bin" >> $GITHUB_PATH
- name: headers
run: sbt headerCheckAll
- name: scala fmt
run: sbt scalafmtCheckAll
- name: java fmt
run: sbt javafmtCheckAll
- name: doc
run: |
export HOME="/home/sbtuser"
export SDKMAN_DIR="$HOME/.sdkman"
source $SDKMAN_DIR/bin/sdkman-init.sh
yes n | sdk install java 21.0.1-graalce || true
sdk use java 21.0.1-graalce
sbt doc
tests:
strategy:
fail-fast: false
matrix:
component:
- snapiFrontend
- snapiClient
- sqlClient
- pythonClient
runs-on: self-hosted
env:
SBT_FORK_OUTPUT_DIR : test-results
COURSIER_PROGRESS : false
container:
image: ghcr.io/raw-labs/raw-scala-runner:21.0.0-ol9-20230919_scala2.12.18_sbt1.9.6
options: --user 1001 --cpus 6 --memory 32g -e HOME=/home/sbtuser
credentials:
username: ${{ github.actor }}
password: ${{ secrets.READ_PACKAGES }}
steps:
- uses: actions/checkout@v4
- uses: oNaiPs/secrets-to-env-action@v1.5
with:
secrets: ${{ toJSON(secrets) }}
- name: test
run: |
export HOME="/home/sbtuser"
export SDKMAN_DIR="$HOME/.sdkman"
source $SDKMAN_DIR/bin/sdkman-init.sh
yes n | sdk install java 21.0.1-graalce || true
sdk use java 21.0.1-graalce
echo "$SDKMAN_DIR/candidates/java/current/bin" >> $GITHUB_PATH
sbt ${{ matrix.component }}/test
- uses: mikepenz/action-junit-report@v4
if: success() || failure()
with:
report_paths: ./**/test-reports/*.xml
detailed_summary: true