Play 2.8.19, Play JSON 2.9.4, Twirl 1.5.2, Play file watch 1.1.16 #56
Workflow file for this run
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: Build and tests | |
on: | |
pull_request: | |
push: | |
branches: | |
- main | |
concurrency: | |
# Only run once for latest commit per ref and cancel other (previous) runs. | |
group: ci-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
check-code-style: | |
name: Check Code Style | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
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 | |
uses: coursier/setup-action@v1.1.2 | |
with: | |
jvm: adopt:11 | |
- name: Cache Coursier cache | |
uses: coursier/cache-action@v6.3 | |
- name: Code style check, headers and Akka versions | |
# Run locally with: sbt 'verifyCodeStyle ; mimaReportBinaryIssues' | |
# TODO: add versionSyncCheck when running CRON jobs | |
run: | | |
sbt +headerCheckAll \ | |
+scalafmtCheckAll \ | |
scalafmtSbtCheck \ | |
javafmtCheckAll \ | |
+headerCheck \ | |
+test:headerCheck \ | |
multi-jvm:headerCheck \ | |
checkAkkaModuleVersions | |
documentation-docs: | |
name: Check Docs | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
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 8 | |
uses: coursier/setup-action@v1.1.2 | |
with: | |
jvm: adopt:8 # need jdk8 to build docs | |
- name: Cache Coursier cache | |
uses: coursier/cache-action@v6.3 | |
- name: Create all API docs for artifacts/website and all reference docs | |
run: ./bin/test-documentation | |
# documentation-tests: | |
# name: Run documentation tests | |
# runs-on: ubuntu-20.04 | |
# steps: | |
# - name: Checkout | |
# uses: actions/checkout@v2 | |
# 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 8 | |
# uses: coursier/setup-action@v1.1.2 | |
# with: | |
# jvm: adopt:8 # need jdk8 to build docs | |
# - name: Cache Coursier cache | |
# uses: coursier/cache-action@v6.3 | |
# - name: Create all API docs for artifacts/website and all reference docs | |
# run: ./bin/test-docs-code-only | |
check-code-compilation: | |
name: Check Code Compilation | |
runs-on: ubuntu-20.04 | |
needs: # Waiting more lightweight checks | |
- "check-code-style" | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
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 | |
uses: coursier/setup-action@v1.1.2 | |
with: | |
jvm: adopt:11 | |
- name: Cache Coursier cache | |
uses: coursier/cache-action@v6.3 | |
- name: Compile all code with Java 11 and check binary compatibility | |
run: sbt "+Test/compile;mimaReportBinaryIssues" | |
tests: | |
runs-on: ubuntu-20.04 | |
needs: # only run after code compilation | |
- "check-code-compilation" | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- { jdk: 8, scala: 2.12 } | |
- { jdk: 8, scala: 2.13 } | |
- { jdk: 11, scala: 2.12 } | |
- { jdk: 11, scala: 2.13 } | |
name: Build and Test (Scala ${{ matrix.scala }} & JDK ${{ matrix.jdk }}) | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
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 ${{ matrix.jdk }} | |
uses: coursier/setup-action@v1.1.2 | |
with: | |
jvm: adopt:${{ matrix.jdk }} | |
- name: Cache Coursier cache | |
uses: coursier/cache-action@v6.3 | |
- name: Run tests with Scala ${{ matrix.scala }} and Java ${{ matrix.jdk }} | |
env: | |
SCALA_VERSION: ${{ matrix.scala }} | |
run: ./bin/test-2.1x | |
- name: Print logs on failure | |
if: ${{ failure() }} | |
run: find . -name "*.log" -exec ./scripts/cat-log.sh {} \; | |
multi-jvm-tests: | |
runs-on: ubuntu-20.04 | |
needs: # only run after code compilation | |
- "check-code-compilation" | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- { jdk: 8, scala: 2.12 } | |
- { jdk: 8, scala: 2.13 } | |
- { jdk: 11, scala: 2.12 } | |
- { jdk: 11, scala: 2.13 } | |
name: MultiJvm Test (Scala ${{ matrix.scala }} & JDK ${{ matrix.jdk }}) | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
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 ${{ matrix.jdk }} | |
uses: coursier/setup-action@v1.1.2 | |
with: | |
jvm: adopt:${{ matrix.jdk }} | |
- name: Cache Coursier cache | |
uses: coursier/cache-action@v6.3 | |
- name: Run multi-jvm tests with Scala ${{ matrix.scala }} and Java ${{ matrix.jdk }} | |
env: | |
SCALA_VERSION: ${{ matrix.scala }} | |
run: ./bin/test-multi-jvm-2.1x | |
- name: Print logs on failure | |
if: ${{ failure() }} | |
run: find . -name "*.log" -exec ./scripts/cat-log.sh {} \; | |
sbt-scripted-test: | |
runs-on: ubuntu-20.04 | |
needs: # only run after code compilation | |
- "check-code-compilation" | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- { jdk: 8, scala: 2.10 } | |
- { jdk: 8, scala: 2.12 } | |
- { jdk: 11, scala: 2.12 } | |
name: sbt Scripted Tests (Scala ${{ matrix.scala }} & JDK ${{ matrix.jdk }}) | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
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 ${{ matrix.jdk }} | |
uses: coursier/setup-action@v1.1.2 | |
with: | |
jvm: adopt:${{ matrix.jdk }} | |
- name: Cache Coursier cache | |
uses: coursier/cache-action@v6.3 | |
- name: Run sbt-scripted tests with Scala ${{ matrix.scala }} and JDK ${{ matrix.jdk }} | |
env: | |
SCALA_VERSION: ${{ matrix.scala }} | |
run: ./bin/test-sbt | |
- name: Print logs on failure | |
if: ${{ failure() }} | |
run: find . -name "*.log" -exec ./scripts/cat-log.sh {} \; | |
maven-tests: | |
runs-on: ubuntu-20.04 | |
needs: # only run after code compilation | |
- "check-code-compilation" | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- { jdk: 8 } | |
- { jdk: 11 } | |
name: Maven Tests (JDK ${{ matrix.jdk }}) | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
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 ${{ matrix.jdk }} | |
uses: coursier/setup-action@v1.1.2 | |
with: | |
jvm: adopt:${{ matrix.jdk }} | |
- name: Cache Coursier cache | |
uses: coursier/cache-action@v6.3 | |
- name: Run Maven tests with Java ${{ matrix.jdk }} | |
run: sbt "publishM2; mavenTest" | |
- name: Install xmllint | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y libxml2-utils | |
- name: Install xmlstarlet | |
run: sudo apt-get install -y xmlstarlet | |
- name: validate pom files | |
run: ./bin/test-maven | |
- name: Print logs on failure | |
if: ${{ failure() }} | |
run: find . -name "*.log" -exec ./scripts/cat-log.sh {} \; |