Experiment with Jinja/SQL #1594
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 | |
jobs: | |
build-custom-deps: | |
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 17.0.5-amzn || true | |
sdk use java 17.0.5-amzn | |
echo "$SDKMAN_DIR/candidates/java/current/bin" >> $GITHUB_PATH | |
- name: build custom deps | |
run: ./build.sh | |
working-directory: deps | |
- name: upload ivy build artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ivy | |
path: /home/sbtuser/.ivy2/local | |
retention-days: 1 | |
- name: upload m2 build artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: m2 | |
path: /home/sbtuser/.m2/repository | |
retention-days: 1 | |
code-checks: | |
needs: build-custom-deps | |
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: download ivy build artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: ivy | |
path: /home/sbtuser/.ivy2/local | |
- name: download m2 build artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: m2 | |
path: /home/sbtuser/.m2/repository | |
- 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: sbt doc | |
tests: | |
needs: build-custom-deps | |
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 | |
- name: download ivy build artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: ivy | |
path: /home/sbtuser/.ivy2/local | |
- name: download m2 build artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: m2 | |
path: /home/sbtuser/.m2/repository | |
- 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 | |
- uses: oNaiPs/secrets-to-env-action@v1.5 | |
with: | |
secrets: ${{ toJSON(secrets) }} | |
- name: test | |
run: sbt ${{ matrix.component }}/test | |
- uses: mikepenz/action-junit-report@v4 | |
if: success() || failure() | |
with: | |
report_paths: ./**/test-reports/*.xml | |
detailed_summary: true |