09d30fef5b
* ci: include themselves in `on.push.paths` command: find .github/workflows -type f \( -name '*.yaml' -or -name '*.yml' \) | xargs -I {} yq_4.44.2-linux_x86-64 'select(.on.push.paths != null) | .[0] | map("{}")[0]' {} | xargs -I {} ~/.local/bin/yq_4.44.2-linux_x86-64 -i '.on.push.paths += ["{}"]' {} * ci: include themselves in `on.pull_request.paths` command: find .github/workflows -type f \( -name '*.yaml' -or -name '*.yml' \) | xargs -I {} yq_4.44.2-linux_x86-64 'select(.on.pull_request.paths != null) | .[0] | map("{}")[0]' {} | xargs -I {} ~/.local/bin/yq_4.44.2-linux_x86-64 -i '.on.pull_request.paths += ["{}"]' {}
90 lines
2.1 KiB
YAML
90 lines
2.1 KiB
YAML
name: Lint
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
- develop
|
|
paths:
|
|
- packages/backend/**
|
|
- packages/frontend/**
|
|
- packages/sw/**
|
|
- packages/misskey-js/**
|
|
- packages/shared/eslint.config.js
|
|
- .github/workflows/lint.yml
|
|
pull_request:
|
|
paths:
|
|
- packages/backend/**
|
|
- packages/frontend/**
|
|
- packages/sw/**
|
|
- packages/misskey-js/**
|
|
- packages/shared/eslint.config.js
|
|
- .github/workflows/lint.yml
|
|
jobs:
|
|
pnpm_install:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4.1.1
|
|
with:
|
|
fetch-depth: 0
|
|
submodules: true
|
|
- uses: pnpm/action-setup@v4
|
|
- uses: actions/setup-node@v4.0.2
|
|
with:
|
|
node-version-file: '.node-version'
|
|
cache: 'pnpm'
|
|
- run: corepack enable
|
|
- 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.1.1
|
|
with:
|
|
fetch-depth: 0
|
|
submodules: true
|
|
- uses: pnpm/action-setup@v4
|
|
- uses: actions/setup-node@v4.0.2
|
|
with:
|
|
node-version-file: '.node-version'
|
|
cache: 'pnpm'
|
|
- run: corepack enable
|
|
- 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.1.1
|
|
with:
|
|
fetch-depth: 0
|
|
submodules: true
|
|
- uses: pnpm/action-setup@v4
|
|
- uses: actions/setup-node@v4.0.2
|
|
with:
|
|
node-version-file: '.node-version'
|
|
cache: 'pnpm'
|
|
- run: corepack enable
|
|
- run: pnpm i --frozen-lockfile
|
|
- run: pnpm --filter misskey-js run build
|
|
if: ${{ matrix.workspace == 'backend' }}
|
|
- run: pnpm --filter misskey-reversi run build
|
|
if: ${{ matrix.workspace == 'backend' }}
|
|
- run: pnpm --filter ${{ matrix.workspace }} run typecheck
|