Skip to content

Commit 6c63d46

Browse files
committed
Use Actions-based linter
1 parent dbc5e4a commit 6c63d46

File tree

4 files changed

+95
-0
lines changed

4 files changed

+95
-0
lines changed

.github/workflows/lint.yml

+71
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
name: Lint
2+
3+
on:
4+
pull_request:
5+
branches: [main]
6+
7+
permissions: read-all
8+
9+
env:
10+
APPLY_FIXES: all
11+
APPLY_FIXES_EVENT: pull_request
12+
APPLY_FIXES_MODE: commit
13+
14+
concurrency:
15+
group: ${{ github.ref }}-${{ github.workflow }}
16+
cancel-in-progress: true
17+
18+
jobs:
19+
lint:
20+
name: Lint
21+
runs-on: ubuntu-22.04
22+
permissions:
23+
checks: write
24+
pull-requests: write
25+
26+
steps:
27+
- name: Checkout repo
28+
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
29+
with:
30+
fetch-depth: 0
31+
32+
- name: Lint
33+
id: ml
34+
uses: oxsecurity/megalinter@c1612a7969ca083ca64ea4d55fe174ec7ea54740
35+
env:
36+
VALIDATE_ALL_CODEBASE: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }}
37+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
38+
39+
- name: Upload report
40+
if: ${{ success() }} || ${{ failure() }}
41+
uses: actions/upload-artifact@6673cd052c4cd6fcf4b4e6e60ea986c889389535
42+
with:
43+
name: Lint Report
44+
path: |
45+
megalinter-reports
46+
mega-linter.log
47+
48+
- name: Create pull request with applied fixes
49+
id: cpr
50+
if: steps.ml.outputs.has_updated_sources == 1 && (env.APPLY_FIXES_EVENT == 'all' || env.APPLY_FIXES_EVENT == github.event_name) && env.APPLY_FIXES_MODE == 'pull_request' && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository) && !contains(github.event.head_commit.message, 'skip fix')
51+
uses: peter-evans/create-pull-request@2b011faafdcbc9ceb11414d64d0573f37c774b04
52+
with:
53+
token: ${{ secrets.GITHUB_TOKEN }}
54+
commit-message: "Apply lint fixes"
55+
title: "Apply lint fixes"
56+
labels: bot
57+
- name: Output pull request
58+
if: steps.ml.outputs.has_updated_sources == 1 && (env.APPLY_FIXES_EVENT == 'all' || env.APPLY_FIXES_EVENT == github.event_name) && env.APPLY_FIXES_MODE == 'pull_request' && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository) && !contains(github.event.head_commit.message, 'skip fix')
59+
run: |
60+
echo "PR: ${{ steps.cpr.outputs.pull-request-number }}"
61+
echo "PR URL: ${{ steps.cpr.outputs.pull-request-url }}"
62+
63+
- name: Prepare commit
64+
if: steps.ml.outputs.has_updated_sources == 1 && (env.APPLY_FIXES_EVENT == 'all' || env.APPLY_FIXES_EVENT == github.event_name) && env.APPLY_FIXES_MODE == 'commit' && github.ref != 'refs/heads/main' && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository) && !contains(github.event.head_commit.message, 'skip fix')
65+
run: sudo chown -Rc $UID .git/
66+
- name: Commit and push applied lint fixes
67+
if: steps.ml.outputs.has_updated_sources == 1 && (env.APPLY_FIXES_EVENT == 'all' || env.APPLY_FIXES_EVENT == github.event_name) && env.APPLY_FIXES_MODE == 'commit' && github.ref != 'refs/heads/main' && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository) && !contains(github.event.head_commit.message, 'skip fix')
68+
uses: stefanzweifel/git-auto-commit-action@3ea6ae190baf489ba007f7c92608f33ce20ef04a
69+
with:
70+
branch: ${{ github.event.pull_request.head.ref || github.head_ref || github.ref }}
71+
commit_message: "Apply lint fixes"

.gitignore

+3
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,6 @@ Thumbs.db
2222
# Node
2323
node_modules
2424
npm-debug.log
25+
26+
# Lint
27+
megalinter-reports/

.jscpd.json

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{
2+
"threshold": 0,
3+
"reporters": ["html", "markdown"],
4+
"ignore": [
5+
"**/node_modules/**",
6+
"**/.git/**",
7+
"**/.rbenv/**",
8+
"**/.venv/**",
9+
"**/*cache*/**",
10+
"**/.github/**",
11+
"**/.idea/**",
12+
"**/report/**",
13+
"**/*.svg"
14+
]
15+
}

.mega-linter.yml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
APPLY_FIXES: all
2+
DEFAULT_BRANCH: main
3+
SHOW_ELAPSED_TIME: false
4+
FILEIO_REPORTER: false
5+
DISABLE_LINTERS:
6+
- SPELL_CSPELL

0 commit comments

Comments
 (0)