Skip to content

chore: syntax in GH workflow (#1076) #231

chore: syntax in GH workflow (#1076)

chore: syntax in GH workflow (#1076) #231

name: CI
on:
pull_request:
push:
branches:
- main
tags-ignore:
- v*
permissions:
contents: read
jobs:
style-compile:
name: Compile, Code Style
if: github.event.repository.fork == false
runs-on: ubuntu-22.04
env:
JAVA_OPTS: -Xms2G -Xmx2G -Xss2M -XX:ReservedCodeCacheSize=256M -Dfile.encoding=UTF-8
steps:
- name: Checkout
# https://github.com/actions/checkout/releases
# v3.3.0
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c
with: # https://github.com/olafurpg/setup-scala#faster-checkout-of-big-repos
fetch-depth: 0
- name: Fetch tags
run: git fetch --depth=100 origin +refs/tags/*:refs/tags/*
- name: Set up JDK 11
# https://github.com/coursier/setup-action/releases
# v1.3.0
uses: coursier/setup-action@70323223454ac2a9eb2de46f389b4d045cbcdea5
with:
jvm: temurin:1.11
- name: Cache Coursier cache
uses: coursier/[email protected]
- name: "Code style, compile tests"
run: sbt "verifyCodeStyle; +Test/compile"
documentation:
name: ScalaDoc, Documentation with Paradox
if: github.event.repository.fork == false
runs-on: ubuntu-22.04
env:
JAVA_OPTS: -Xms2G -Xmx2G -Xss2M -XX:ReservedCodeCacheSize=256M -Dfile.encoding=UTF-8
steps:
- name: Checkout
# https://github.com/actions/checkout/releases
# v3.3.0
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c
with: # https://github.com/olafurpg/setup-scala#faster-checkout-of-big-repos
fetch-depth: 100
- name: Fetch tags
run: git fetch --depth=100 origin +refs/tags/*:refs/tags/*
- name: Set up JDK 11
# https://github.com/coursier/setup-action/releases
# v1.3.0
uses: coursier/setup-action@70323223454ac2a9eb2de46f389b4d045cbcdea5
with:
jvm: temurin:1.11
- name: Cache Coursier cache
# https://github.com/coursier/cache-action/releases/
# v6.4.3
uses: coursier/cache-action@d1039466d0812d6370649b9afb02bbf5f646bacf
- name: "Create all API docs and create site with Paradox"
run: sbt "unidoc; docs/makeSite"
- name: Run Link Validator
run: cs launch net.runne::site-link-validator:0.2.3 -- project/link-validator.conf
test:
name: Test
if: github.event.repository.fork == false
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
include:
- { jdk: 'temurin:1.11.0.17', container: "cassandra-latest", test: "test" }
- { jdk: 'temurin:1.11.0.17', container: "cassandra2", test: "'testOnly -- -l RequiresCassandraThree'"}
- { jdk: 'temurin:1.11.0.17', container: "cassandra3", test: "test" }
- { jdk: 'temurin:1.21', container: "cassandra3", test: "test" }
env:
JAVA_OPTS: -Xms2G -Xmx2G -Xss2M -XX:ReservedCodeCacheSize=256M -Dfile.encoding=UTF-8
steps:
- name: Checkout
# https://github.com/actions/checkout/releases
# v3.3.0
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c
with:
fetch-depth: 0
- 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: Set up JDK ${{ matrix.jdkVersion }}
uses: coursier/[email protected]
with:
jvm: ${{ matrix.jvmName }}
# FIXME default index not giving us access to JDK 21 (yet)
jvm-index: https://raw.githubusercontent.com/coursier/jvm-index/32d659500e6c65efb9eee91718a0fb0e797ad4ee/index.json
- name: Cache Coursier cache
# https://github.com/coursier/cache-action/releases/
# v6.4.3
uses: coursier/cache-action@d1039466d0812d6370649b9afb02bbf5f646bacf
- name: Test against ${{ matrix.container }}
run: |-
docker-compose up -d ${{ matrix.container }} && sbt ${{matrix.test}}