Skip to content

chore(ci): checkoutの調整, releaseの修正, lint localesの強化など #41

chore(ci): checkoutの調整, releaseの修正, lint localesの強化など

chore(ci): checkoutの調整, releaseの修正, lint localesの強化など #41

Workflow file for this run

name: Lint
on:
push:
branches:
- taiyme
paths:
- .github/workflows/lint.yaml
- packages/backend/**/*
- packages/frontend/**/*
- packages/sw/**/*
- packages/misskey-js/**/*
- packages/shared/eslint.config.js
pull_request:
paths:
- .github/workflows/lint.yaml
- packages/backend/**/*
- packages/frontend/**/*
- packages/sw/**/*
- packages/misskey-js/**/*
- packages/shared/eslint.config.js
jobs:
run_pnpm_install:
name: Run pnpm install
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4.2.0
with:
persist-credentials: false
fetch-depth: 1
submodules: true
- name: Enable corepack
run: |
corepack enable
- name: Setup Node.js
uses: actions/setup-node@v4.0.4
with:
node-version-file: .node-version
cache: pnpm
- name: Install dependencies
run: |
pnpm i --frozen-lockfile
lint:
name: Lint
runs-on: ubuntu-22.04
needs:
- run_pnpm_install
continue-on-error: true
strategy:
matrix:
workspace:
- backend
- frontend
- sw
- misskey-js
env:
eslint-cache-version: v1
eslint-cache-path: ${{ github.workspace }}/node_modules/.cache/eslint-${{ matrix.workspace }}
steps:
- name: Checkout
uses: actions/checkout@v4.2.0
with:
persist-credentials: false
fetch-depth: 1
submodules: true
- name: Enable corepack
run: |
corepack enable
- name: Setup Node.js
uses: actions/setup-node@v4.0.4
with:
node-version-file: .node-version
cache: pnpm
- name: Install dependencies
run: |
pnpm i --frozen-lockfile
- name: Restore eslint cache
uses: actions/cache@v4.0.2
with:
path: ${{ env.eslint-cache-path }}
key: eslint-${{ env.eslint-cache-version }}-${{ matrix.workspace }}-${{ hashFiles('**/pnpm-lock.yaml') }}-${{ github.ref_name }}-${{ github.sha }}
restore-keys: eslint-${{ env.eslint-cache-version }}-${{ matrix.workspace }}-${{ hashFiles('**/pnpm-lock.yaml') }}-
- name: Run eslint
run: |
pnpm --filter ${{ matrix.workspace }} run eslint --cache --cache-location ${{ env.eslint-cache-path }} --cache-strategy content
typecheck:
name: Typecheck
runs-on: ubuntu-22.04
needs:
- run_pnpm_install
continue-on-error: true
strategy:
matrix:
workspace:
- backend
- misskey-js
steps:
- name: Checkout
uses: actions/checkout@v4.2.0
with:
persist-credentials: false
fetch-depth: 1
submodules: true
- name: Enable corepack
run: |
corepack enable
- name: Setup Node.js
uses: actions/setup-node@v4.0.4
with:
node-version-file: .node-version
cache: pnpm
- name: Install dependencies
run: |
pnpm i --frozen-lockfile
- name: Build (misskey-js)
if: matrix.workspace == 'backend'
run: |
pnpm --filter misskey-js run build
- name: Build (misskey-reversi)
if: matrix.workspace == 'backend'
run: |
pnpm --filter misskey-reversi run build
- name: Run typecheck
run: |
pnpm --filter ${{ matrix.workspace }} run typecheck