Files
test-repo/.github/workflows/lint.yml
T
renovate[bot] 5dc0e5c3ab chore(deps): update actions/setup-node action to v6 (#18074)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-15 02:29:44 +08:00

109 lines
2.8 KiB
YAML

name: Lint
on:
push:
branches:
- main
- patch-release
- next
pull_request:
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Setup Node.js
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with:
cache: "yarn"
- name: Install Dependencies
run: yarn install --immutable
- name: Check Dependencies
run: yarn lint:deps
- name: Check JSDoc Types
run: yarn lint:typecheck
- name: Lint ESLint
run: yarn lint:eslint
- name: Lint Prettier
run: yarn lint:prettier
- name: Spellcheck
run: yarn lint:spellcheck
- name: Lint Changelog
run: yarn lint:changelog
- name: Lint "format test"
run: yarn lint:format-test
- name: Lint docs code block
run: yarn prettier "{docs,website/versioned_docs/version-stable}/**/*.md" --check
env:
# Make Prettier throws on embedded format
PRETTIER_DEBUG: true
- name: Lint workflow files
run: |
bash <(curl https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash)
./actionlint -color
shell: bash
- name: Dependency Review
# Doesn't support push event https://github.com/actions/dependency-review-action/issues/826
if: github.event_name == 'pull_request'
uses: actions/dependency-review-action@56339e523c0409420f6c2c9a2f4292bbb3c07dd3 # v4.8.0
- name: Validate renovate config
run: yarn dlx --package renovate@latest renovate-config-validator
- name: Run yarn (/)
run: |
yarn
yarn dedupe --check
- name: Run yarn (/website)
run: |
yarn
yarn dedupe --check
working-directory: website
- name: Run yarn (/scripts/release)
run: |
yarn
yarn dedupe --check
working-directory: scripts/release
- name: Run yarn (/scripts/tools/bundle-test)
run: |
yarn
yarn dedupe --check
working-directory: scripts/tools/bundle-test
- name: Run yarn (/scripts/tools/eslint-plugin-prettier-internal-rules)
run: |
yarn
yarn dedupe --check
working-directory: scripts/tools/eslint-plugin-prettier-internal-rules
- name: Knip
run: yarn lint:knip
- name: Check File Changes
run: echo "Listing changed files:" && git diff --name-only --exit-code && echo "No files changed during lint."