Skip to content

feature/Add core models and access control for resource documentation #15

feature/Add core models and access control for resource documentation

feature/Add core models and access control for resource documentation #15

Workflow file for this run

name: CI
on:
pull_request:
branches: [ main, develop ]
push:
branches: [ main, develop ]
jobs:
test:
name: Test (${{ matrix.scala }}, JDK ${{ matrix.java }})
runs-on: ubuntu-latest
strategy:
matrix:
java: [17]
scala: [2.12.20, 2.13.14, 3.3.1]
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.java }}
distribution: 'temurin'
- name: Install sbt
uses: coursier/setup-action@v1
with:
apps: sbt
- name: Cache SBT
uses: actions/cache@v4
with:
path: |
~/.sbt
~/.ivy2/cache
~/.coursier/cache
key: sbt-${{ runner.os }}-${{ hashFiles('**/*.sbt', '**/build.properties', '**/plugins.sbt') }}
restore-keys: |
sbt-${{ runner.os }}-
- name: Compile
run: sbt "++${{ matrix.scala }}" compile
- name: Run tests
run: sbt "++${{ matrix.scala }}" test
- name: Check formatting
run: sbt scalafmtCheckAll
publish-snapshot:
name: Publish Snapshot
runs-on: ubuntu-latest
needs: test
if: github.ref == 'refs/heads/main' && github.event_name == 'push'
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Install sbt
uses: coursier/setup-action@v1
with:
apps: sbt
- name: Cache SBT
uses: actions/cache@v4
with:
path: |
~/.sbt
~/.ivy2/cache
~/.coursier/cache
key: sbt-${{ runner.os }}-${{ hashFiles('**/*.sbt', '**/build.properties', '**/plugins.sbt') }}
restore-keys: |
sbt-${{ runner.os }}-
- name: Publish Snapshot
run: sbt +publishSigned
env:
PGP_PASSPHRASE: ${{ secrets.PGP_PASSPHRASE }}
PGP_SECRET: ${{ secrets.PGP_SECRET }}
SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }}
SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }}