Skip to content

bump scala to scala3 #3989

bump scala to scala3

bump scala to scala3 #3989

Workflow file for this run

name: Scala CI
on:
pull_request:
push:
branches:
- main
- 'develop_**'
jobs:
scala-ci:
runs-on: ${{ matrix.config.os }}
if: "!contains(github.event.head_commit.message, 'ci skip')"
strategy:
fail-fast: false
matrix:
config:
- { name: 'ubuntu_latest', os: ubuntu-latest }
- { name: 'macos_latest', os: macos-latest }
java:
- { ver: '11', run_nextflow: true, run_coverage: false, nxf_ver: "22.04.5" }
- { ver: '17', run_nextflow: true, run_coverage: true, nxf_ver: latest }
- { ver: '21', run_nextflow: true, run_coverage: false, nxf_ver: latest-edge }
steps:
- uses: actions/checkout@v6
- uses: viash-io/viash-actions/project/update-docker-engine@v6
if: runner.os == 'Linux'
- name: Set up R
uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true
- name: Set up R dependencies
uses: r-lib/actions/setup-r-dependencies@v2
with:
packages: |
processx
testthat
- name: Set up java
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: ${{ matrix.java.ver }}
- name: Set up sbt
uses: sbt/setup-sbt@v1
- name: Set up Scala (via Coursier)
uses: coursier/setup-action@v2
with:
apps: scala@3.6.2
- name: Warm up scala
run: |
scala -version
scala -e 'println("Hello, Scala!")'
- name: Set up .NET SDK
if: ${{ runner.os == 'Linux' }}
uses: actions/setup-dotnet@v4
with:
dotnet-version: '9.0.x'
- name: Set up dotnet-script
if: ${{ runner.os == 'Linux' }}
run: dotnet tool install -g dotnet-script
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: '3.x'
# - name: Set up Nextflow
# if: ${{ runner.os == 'Linux' && matrix.java.run_nextflow }}
# uses: nf-core/setup-nextflow@v2
# with:
# version: ${{ matrix.java.nxf_ver }}
- name: Run tests
env:
NXF_SYNTAX_PARSER: v1
run: |
# if [[ "${{ matrix.config.name }}" =~ ^ubuntu.*$ ]] && [[ "${{ matrix.java.run_coverage }}" == "true" ]]; then
# # only run coverage on main runner
# sbt clean coverage test coverageReport
# elif [[ "${{ matrix.config.name }}" =~ ^ubuntu.*$ ]] && [[ "${{ matrix.java.run_nextflow }}" == "false" ]]; then
# sbt 'testOnly -- -l io.viash.NextflowTest'
# elif [[ "${{ matrix.config.os }}" =~ ^macos.*$ ]]; then
# # macOS on github actions does not have Docker, so skip those
# sbt 'testOnly -- -l io.viash.DockerTest -l io.viash.NextflowTest'
# else
# sbt test
# fi
sbt "testOnly *JsonParserTest"
# - name: Upload coverage on success
# run: bash <(curl -s https://codecov.io/bash)
- name: Upload check results on fail
if: failure()
uses: actions/upload-artifact@v6
with:
name: ${{ matrix.config.name }}_results
path: check