mirror of https://github.com/openwrt/luci.git
ci: lint JSON files using ESLint
Add GitHub Actions CI which lints json files using official ESLint json plugin. Signed-off-by: Yanase Yuki <dev@zpc.st>pull/7813/head
parent
a6d5ffd6df
commit
98e71acd06
|
@ -0,0 +1,33 @@
|
|||
---
|
||||
name: "LuCI repo ESLint JSON Analysis"
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
path:
|
||||
- '**/*.json'
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
path:
|
||||
- '**/*.json'
|
||||
permissions: {}
|
||||
|
||||
jobs:
|
||||
eslint:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: latest
|
||||
|
||||
- name: Install ESLint
|
||||
run: npm install --no-audit --no-fund --save-dev eslint@latest @eslint/json@latest
|
||||
|
||||
# Currently, we lint JSON only.
|
||||
- name: Run ESLint
|
||||
run: npx eslint **/*.json
|
||||
|
|
@ -17,4 +17,5 @@ modules/luci-compat/src/plural_formula.c
|
|||
modules/luci-compat/src/plural_formula.h
|
||||
docs/jsapi/*
|
||||
!docs/jsapi/README.md
|
||||
**eslint.config**
|
||||
**eslint.config**
|
||||
!eslint.config.mjs
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
import { defineConfig } from "eslint/config";
|
||||
import json from "@eslint/json";
|
||||
|
||||
export default defineConfig([
|
||||
{
|
||||
files: ["**/*.json"],
|
||||
ignores: ["package-lock.json"],
|
||||
plugins: { json },
|
||||
language: "json/json",
|
||||
extends: ["json/recommended"],
|
||||
},
|
||||
]);
|
||||
|
Loading…
Reference in New Issue