forkey/.forgejo/workflows/lint.yml
sugar 41a9904932
All checks were successful
Test (production install and build) / production (22.x) (pull_request) Successful in 2m21s
avoid cloning entire repo for actions/checkout
`fetch-depth: 0` is saying to fetch all commits, which we don't really
need test for testing a single commit
2025-01-19 19:43:34 +01:00

87 lines
2 KiB
YAML

name: Lint
on:
push:
branches:
- main
paths:
- packages/backend/**
- packages/frontend/**
- packages/sw/**
- packages/misskey-js/**
- packages/shared/.eslintrc.js
pull_request:
paths:
- packages/backend/**
- packages/frontend/**
- packages/sw/**
- packages/misskey-js/**
- packages/shared/.eslintrc.js
jobs:
pnpm_install:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: true
- uses: pnpm/action-setup@v4.0.0
with:
run_install: false
- uses: actions/setup-node@v4.1.0
with:
node-version-file: '.node-version'
cache: 'pnpm'
- run: pnpm i --frozen-lockfile
lint:
needs: [pnpm_install]
runs-on: ubuntu-latest
continue-on-error: true
strategy:
matrix:
workspace:
- backend
- frontend
- sw
- misskey-js
steps:
- uses: actions/checkout@v4
with:
submodules: true
- uses: pnpm/action-setup@v4.0.0
with:
run_install: false
- uses: actions/setup-node@v4.1.0
with:
node-version-file: '.node-version'
cache: 'pnpm'
- run: pnpm i --frozen-lockfile
- run: pnpm --filter ${{ matrix.workspace }} run eslint
typecheck:
needs: [pnpm_install]
runs-on: ubuntu-latest
continue-on-error: true
strategy:
matrix:
workspace:
- backend
- misskey-js
steps:
- uses: actions/checkout@v4
with:
submodules: true
- uses: pnpm/action-setup@v4.0.0
with:
run_install: false
- uses: actions/setup-node@v4.1.0
with:
node-version-file: '.node-version'
cache: 'pnpm'
- run: pnpm i --frozen-lockfile
- run: pnpm -r run build:tsc
if: ${{ matrix.workspace == 'backend' }}
- run: pnpm --filter misskey-js run build
if: ${{ matrix.workspace == 'backend' }}
- run: pnpm --filter ${{ matrix.workspace }} run typecheck