Files
donutbrowser/.github/workflows/lint-js.yml
T
2026-07-21 23:13:17 +04:00

63 lines
1.5 KiB
YAML

# Installs Node.js dependencies and pnpm, and checks formatting + linting
name: Lint Node.js
on:
workflow_call:
inputs:
checkout_ref:
description: Optional commit to check out instead of the triggering ref
required: false
type: string
default: ""
push:
branches:
- main
tags:
- "v*"
pull_request:
paths-ignore:
- "src-tauri/**"
- "README.md"
- ".github/workflows/lint-rs.yml"
- ".github/workflows/osv.yml"
permissions:
contents: read
jobs:
build:
strategy:
fail-fast: true
matrix:
os: [macos-latest]
runs-on: ${{ matrix.os }}
steps:
- name: Disable git core.autocrlf on Windows
if: matrix.os == 'windows-latest'
run: git config --global core.autocrlf false
- name: Checkout repository code
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 #v7.0.0
with:
ref: ${{ inputs.checkout_ref }}
- name: Set up pnpm package manager
uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 #v6.0.9
with:
run_install: false
- name: Set up Node.js
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 #v7.0.0
with:
node-version-file: .node-version
cache: "pnpm"
- name: Install dependencies from lockfile
run: pnpm install --frozen-lockfile
- name: Run lint step
run: pnpm run lint:js