Build with crossPaths (#172) #399
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: | |
push: | |
branches: | |
- master | |
- main | |
- release-* | |
- 1.1.x | |
tags-ignore: [ v.* ] | |
jobs: | |
check-code-compilation: | |
name: Check Code Compilation | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
fetch-tags: true | |
- name: Checkout GitHub merge | |
if: github.event.pull_request | |
run: |- | |
git fetch origin pull/${{ github.event.pull_request.number }}/merge:scratch | |
git checkout scratch | |
- name: Setup Java 11 | |
uses: actions/setup-java@v4 | |
with: | |
distribution: temurin | |
java-version: 11 | |
- name: Cache Coursier cache | |
uses: coursier/cache-action@v6 | |
- name: Compile all code with default compiler | |
run: sbt "Test/compile" | |
test: | |
name: Build and Test | |
runs-on: ubuntu-20.04 | |
needs: [check-code-compilation] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- { java-version: 8, scala-version: 2.12, sbt-opts: '' } | |
- { java-version: 8, scala-version: 2.13, sbt-opts: '' } | |
- { java-version: 8, scala-version: 3.3, sbt-opts: '' } | |
- { java-version: 11, scala-version: 2.12, sbt-opts: '-J-XX:+UnlockExperimentalVMOptions -J-XX:+UseJVMCICompiler' } | |
- { java-version: 11, scala-version: 2.13, sbt-opts: '-J-XX:+UnlockExperimentalVMOptions -J-XX:+UseJVMCICompiler' } | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
fetch-tags: true | |
- name: Checkout GitHub merge | |
if: github.event.pull_request | |
run: |- | |
git fetch origin pull/${{ github.event.pull_request.number }}/merge:scratch | |
git checkout scratch | |
- name: Setup Java ${{ matrix.java-version }} | |
uses: actions/setup-java@v4 | |
with: | |
distribution: temurin | |
java-version: ${{ matrix.java-version }} | |
- name: Cache Coursier cache | |
uses: coursier/cache-action@v6 | |
- name: Run tests with Scala ${{ matrix.scala-version }} and Java ${{ matrix.java-version }} | |
run: sbt "++${{ matrix.scala-version }} test" ${{ matrix.sbt-opts }} | |
- name: Print logs on failure | |
if: ${{ failure() }} | |
run: find . -name "*.log" -exec ./scripts/cat-log.sh {} \; |