Switch to pnpm #857
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: Checks | |
on: | |
workflow_dispatch: | |
push: | |
branches: [ main, develop ] | |
pull_request: | |
jobs: | |
build: | |
name: Build and test | |
runs-on: ubuntu-latest | |
if: ${{ !github.event.pull_request.draft }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '17' | |
distribution: 'adopt' | |
- name: Build | |
run: ./gradlew clean build -x test -x ktlintMainSourceSetCheck | |
- name: Test | |
run: ./gradlew test --continue | |
lint-kt: | |
name: Lint Kotlin | |
runs-on: macos-latest | |
if: ${{ !github.event.pull_request.draft }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '17' | |
distribution: 'adopt' | |
- name: Lint | |
run: ./gradlew ktlintCheck | |
lint-js: | |
name: Lint JavaScript | |
runs-on: macos-latest | |
if: ${{ !github.event.pull_request.draft }} | |
defaults: | |
run: | |
working-directory: readium/navigator/src/main/assets/_scripts | |
env: | |
scripts: ${{ 'src/main/assets/_scripts' }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Setup Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 20 | |
- name: Install pnpm | |
run: corepack install --global --all | |
- name: Install dependencies | |
run: pnpm install --frozen-lockfile | |
- name: Lint | |
run: pnpm run lint | |
- name: Check formatting | |
run: pnpm run checkformat | |
# FIXME: This suddenly stopped working even though the toolchain versions seem identical. | |
# - name: Check if bundled scripts are up-to-date | |
# run: | | |
# make scripts | |
# git diff --exit-code --name-only src/main/assets/readium/scripts/*.js |