Skip to content

Docs

Docs #1494

Workflow file for this run

name: CI
on:
pull_request:
branches: [ master ]
push:
branches: [ master ]
tags: [ v* ]
permissions:
contents: write # release-drafter, auto-merge requirement
pull-requests: write # labeler, auto-merge requirement
jobs:
ci:
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
java: [ "21", "24" ]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up JDK
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
cache: 'sbt'
- uses: sbt/setup-sbt@3e125ece5c3e5248e18da9ed8d2cce3d335ec8dd # v1, specifically v1.1.14
- name: Check formatting
run: sbt -v scalafmtCheckAll
- name: Compile
run: sbt -v compile
- name: Compile documentation
run: sbt -v compileDocumentation
- name: Test
run: sbt -v test
- uses: actions/upload-artifact@v4 # upload test results
if: success() || failure() # run this step even if previous step failed
with:
name: 'tests-results-java-${{ matrix.java }}'
path: '**/test-reports/TEST*.xml'
# identify binary incompatibilities (check build.sbt for details)
mima:
uses: softwaremill/github-actions-workflows/.github/workflows/mima.yml@main
with:
java-version: '21'
java-opts: '-Xms4g -Xmx4g' # SBT_JAVA_OPTS env parameter adapted for JVM
publish:
uses: softwaremill/github-actions-workflows/.github/workflows/publish-release.yml@main
needs: [ci]
if: github.event_name != 'pull_request' && (startsWith(github.ref, 'refs/tags/v'))
secrets: inherit
with:
java-version: '21'
label:
# only for PRs by softwaremill-ci
if: github.event.pull_request.user.login == 'softwaremill-ci'
uses: softwaremill/github-actions-workflows/.github/workflows/label.yml@main
secrets: inherit
auto-merge:
# only for PRs by softwaremill-ci
if: github.event.pull_request.user.login == 'softwaremill-ci'
needs: [ ci, label, mima ]
uses: softwaremill/github-actions-workflows/.github/workflows/auto-merge.yml@main
secrets: inherit