luci: minor edits to CONTRIBUTING.md and PR template #2523
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- | |
| name: "LuCI repo ESLint JS/ON and MD Analysis" | |
| on: | |
| push: | |
| branches: [ "master" ] | |
| path: | |
| - '**/*.json' | |
| - '**/*.js' | |
| - '**/*.md' | |
| pull_request: | |
| branches: [ "master" ] | |
| path: | |
| - '**/*.json' | |
| - '**/*.js' | |
| - '**/*.md' | |
| permissions: {} | |
| jobs: | |
| eslint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 2 | |
| - name: Set up Node.js | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: latest | |
| # eslint/json requires eslint@9 - 10 is coming. | |
| - name: Install ESLint | |
| run: | | |
| npm install --no-audit --no-fund --save-dev \ | |
| eslint@9 \ | |
| @eslint/json@latest \ | |
| @eslint/js \ | |
| @eslint/markdown \ | |
| eslint-formatter-gha | |
| # - name: Run ESLint (on whole repo) | |
| # run: npx eslint . | |
| - name: Run ESLint on changed files | |
| run: | | |
| if [ "${{ github.event_name }}" = "pull_request" ]; then | |
| BASE="${{ github.event.pull_request.base.sha }}" | |
| HEAD="${{ github.event.pull_request.head.sha }}" | |
| else | |
| # push event: always diff last commit | |
| BASE="$(git rev-parse HEAD~1 2>/dev/null || true)" | |
| HEAD="$(git rev-parse HEAD)" | |
| fi | |
| if [ -z "$BASE" ]; then | |
| FILES=$(git ls-files '*.js' '*.json' '*.md') | |
| else | |
| FILES=$(git diff --diff-filter=ACM --name-only "$BASE" "$HEAD" \ | |
| | grep -E '\.(js|json|md)$' || true) | |
| fi | |
| if [ -z "$FILES" ]; then | |
| echo "No JS/JSON or MD files changed" | |
| exit 0 | |
| fi | |
| echo "Linting files:" | |
| echo "$FILES" | |
| # One day we might need xargs with huge lists | |
| # echo "$FILES" | xargs npx eslint -f gha | |
| # Until then, do it simply so we can see which error relates to which file | |
| npx eslint $FILES | |