mirror of
https://git.tt-rss.org/fox/tt-rss.git
synced 2025-12-25 23:01:26 +01:00
61 lines
1.3 KiB
YAML
61 lines
1.3 KiB
YAML
name: JavaScript Code Quality
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- 'js/**.js'
|
|
- 'plugins/**.js'
|
|
- 'eslint.config.js'
|
|
- 'package.json'
|
|
- 'package-lock.json'
|
|
# Allow manual triggering
|
|
workflow_dispatch:
|
|
# Allow other workflows (e.g. Publish) to invoke this one.
|
|
workflow_call:
|
|
|
|
|
|
env:
|
|
fail-fast: true
|
|
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
|
|
jobs:
|
|
eslint:
|
|
name: ESLint
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Check out code
|
|
uses: actions/checkout@v5
|
|
|
|
- name: Set up Node.js
|
|
uses: actions/setup-node@v6
|
|
with:
|
|
node-version: lts/*
|
|
|
|
- name: Restore Node.js dependencies cache
|
|
uses: actions/cache/restore@v4
|
|
id: cache-restore
|
|
with:
|
|
path: node_modules
|
|
key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-node-
|
|
|
|
- name: Install dependencies
|
|
if: steps.cache-restore.outputs.cache-hit != 'true'
|
|
run: npm install
|
|
|
|
- name: Save Node.js dependencies cache
|
|
if: steps.cache-restore.outputs.cache-hit != 'true'
|
|
uses: actions/cache/save@v4
|
|
with:
|
|
path: node_modules
|
|
key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }}
|
|
|
|
- name: Run ESLint
|
|
run: npm run lint:js
|