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
|
modules/luci-compat/src/plural_formula.h
|
||||||
docs/jsapi/*
|
docs/jsapi/*
|
||||||
!docs/jsapi/README.md
|
!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