mirror of
https://github.com/super-linter/super-linter.git
synced 2024-11-25 02:01:02 -05:00
chore: fix formatting issues (#6028)
This commit is contained in:
parent
2f0ac20566
commit
2664cb3b19
42 changed files with 565 additions and 581 deletions
|
@ -29,8 +29,5 @@
|
||||||
"type": "bind"
|
"type": "bind"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"runArgs": [
|
"runArgs": ["--env-file", ".devcontainer/devcontainer.env"]
|
||||||
"--env-file",
|
|
||||||
".devcontainer/devcontainer.env"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,3 +33,9 @@ indent_size = 4
|
||||||
# Disable the filename rule because our test case logic requires that files used in test cases
|
# Disable the filename rule because our test case logic requires that files used in test cases
|
||||||
# follow a certain syntax which is not compatible with what ktlint currently mandates (PascalCase)
|
# follow a certain syntax which is not compatible with what ktlint currently mandates (PascalCase)
|
||||||
disabled_rules = filename
|
disabled_rules = filename
|
||||||
|
|
||||||
|
[*.md]
|
||||||
|
|
||||||
|
# Indentation in Markdown files might not be constant, or a multiple of 2.
|
||||||
|
# Prettier takes care of formatting Markdown files.
|
||||||
|
indent_size = unset
|
||||||
|
|
2
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
2
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
|
@ -59,7 +59,7 @@ body:
|
||||||
description: |
|
description: |
|
||||||
Super-Linter version where you observed this issue
|
Super-Linter version where you observed this issue
|
||||||
placeholder: |
|
placeholder: |
|
||||||
vX.Y.Z
|
vX.Y.Z
|
||||||
render: markdown
|
render: markdown
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
|
1
.github/ISSUE_TEMPLATE/config.yml
vendored
1
.github/ISSUE_TEMPLATE/config.yml
vendored
|
@ -1,3 +1,2 @@
|
||||||
---
|
---
|
||||||
blank_issues_enabled: false
|
blank_issues_enabled: false
|
||||||
...
|
|
||||||
|
|
6
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
6
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
|
@ -16,8 +16,8 @@ body:
|
||||||
label: Is there an existing issue for this?
|
label: Is there an existing issue for this?
|
||||||
description: Search to see if an issue already exists for the bug you encountered.
|
description: Search to see if an issue already exists for the bug you encountered.
|
||||||
options:
|
options:
|
||||||
- label: I have searched the existing issues
|
- label: I have searched the existing issues
|
||||||
required: true
|
required: true
|
||||||
- type: textarea
|
- type: textarea
|
||||||
attributes:
|
attributes:
|
||||||
label: Current Behavior
|
label: Current Behavior
|
||||||
|
@ -37,5 +37,3 @@ body:
|
||||||
Links? References? Anything that will give us more context about the issue you are encountering.
|
Links? References? Anything that will give us more context about the issue you are encountering.
|
||||||
validations:
|
validations:
|
||||||
required: false
|
required: false
|
||||||
|
|
||||||
---
|
|
||||||
|
|
1
.github/dependabot.yml
vendored
1
.github/dependabot.yml
vendored
|
@ -4,7 +4,6 @@
|
||||||
#################################
|
#################################
|
||||||
version: 2
|
version: 2
|
||||||
updates:
|
updates:
|
||||||
|
|
||||||
- package-ecosystem: "devcontainers"
|
- package-ecosystem: "devcontainers"
|
||||||
commit-message:
|
commit-message:
|
||||||
prefix: "chore(devcontainer)"
|
prefix: "chore(devcontainer)"
|
||||||
|
|
|
@ -5,5 +5,3 @@ directory:
|
||||||
- test/linters/checkov/bad
|
- test/linters/checkov/bad
|
||||||
|
|
||||||
quiet: false
|
quiet: false
|
||||||
|
|
||||||
...
|
|
||||||
|
|
|
@ -19,4 +19,3 @@ skip-framework:
|
||||||
# we have to do that as part of the test Helm chart or the test Kustomize
|
# we have to do that as part of the test Helm chart or the test Kustomize
|
||||||
# "package".
|
# "package".
|
||||||
- kubernetes
|
- kubernetes
|
||||||
...
|
|
||||||
|
|
1
.github/linters/.checkov.yaml
vendored
1
.github/linters/.checkov.yaml
vendored
|
@ -28,4 +28,3 @@ skip-path:
|
||||||
- test/linters/terraform_fmt
|
- test/linters/terraform_fmt
|
||||||
- test/linters/terraform_tflint
|
- test/linters/terraform_tflint
|
||||||
- test/linters/terraform_terrascan
|
- test/linters/terraform_terrascan
|
||||||
...
|
|
||||||
|
|
5
.github/linters/.eslintrc.yml
vendored
5
.github/linters/.eslintrc.yml
vendored
|
@ -12,10 +12,10 @@ ignorePatterns:
|
||||||
- "!.*"
|
- "!.*"
|
||||||
- "**/node_modules/.*"
|
- "**/node_modules/.*"
|
||||||
|
|
||||||
parser: '@typescript-eslint/parser'
|
parser: "@typescript-eslint/parser"
|
||||||
|
|
||||||
plugins:
|
plugins:
|
||||||
- '@typescript-eslint'
|
- "@typescript-eslint"
|
||||||
|
|
||||||
# Don't set the jsonSyntax parser option for JSON, JSON5, and JSONC
|
# Don't set the jsonSyntax parser option for JSON, JSON5, and JSONC
|
||||||
# so we can use eslint-plugin-jsonc to automatically fix issues
|
# so we can use eslint-plugin-jsonc to automatically fix issues
|
||||||
|
@ -41,4 +41,3 @@ overrides:
|
||||||
- "*.tsx"
|
- "*.tsx"
|
||||||
extends:
|
extends:
|
||||||
- plugin:react/recommended
|
- plugin:react/recommended
|
||||||
...
|
|
||||||
|
|
1
.github/linters/.golangci.yml
vendored
1
.github/linters/.golangci.yml
vendored
|
@ -4,4 +4,3 @@
|
||||||
linters:
|
linters:
|
||||||
enable:
|
enable:
|
||||||
- gofmt
|
- gofmt
|
||||||
...
|
|
||||||
|
|
16
.github/linters/.hadolint.yaml
vendored
16
.github/linters/.hadolint.yaml
vendored
|
@ -3,11 +3,11 @@
|
||||||
## Hadolint config file ##
|
## Hadolint config file ##
|
||||||
##########################
|
##########################
|
||||||
ignored:
|
ignored:
|
||||||
- DL4001 # Ignore wget and curl in same file
|
- DL4001 # Ignore wget and curl in same file
|
||||||
- DL4006 # ignore pipefail as we don't want to add layers
|
- DL4006 # ignore pipefail as we don't want to add layers
|
||||||
- DL3018 # We do pin version in pipfile.lock
|
- DL3018 # We do pin version in pipfile.lock
|
||||||
- DL3013 # We do pin version in pipfile.lock
|
- DL3013 # We do pin version in pipfile.lock
|
||||||
- DL3003 # Ignore workdir so we don't add layers
|
- DL3003 # Ignore workdir so we don't add layers
|
||||||
- SC2016 # ignore as its interpreted later
|
- SC2016 # ignore as its interpreted later
|
||||||
- DL3044 # Ignore using env in env
|
- DL3044 # Ignore using env in env
|
||||||
- DL3008 # Ignore pinned versions check for APT
|
- DL3008 # Ignore pinned versions check for APT
|
||||||
|
|
8
.github/linters/.jscpd-test-linters.json
vendored
8
.github/linters/.jscpd-test-linters.json
vendored
|
@ -1,10 +1,6 @@
|
||||||
{
|
{
|
||||||
"absolute": true,
|
"absolute": true,
|
||||||
"ignore": [
|
"ignore": ["**/node_modules/**"],
|
||||||
"**/node_modules/**"
|
"reporters": ["consoleFull"],
|
||||||
],
|
|
||||||
"reporters": [
|
|
||||||
"consoleFull"
|
|
||||||
],
|
|
||||||
"threshold": 0
|
"threshold": 0
|
||||||
}
|
}
|
||||||
|
|
4
.github/linters/.jscpd.json
vendored
4
.github/linters/.jscpd.json
vendored
|
@ -43,8 +43,6 @@
|
||||||
"**/workflows/cd.yml",
|
"**/workflows/cd.yml",
|
||||||
"**/workflows/ci.yml"
|
"**/workflows/ci.yml"
|
||||||
],
|
],
|
||||||
"reporters": [
|
"reporters": ["consoleFull"],
|
||||||
"consoleFull"
|
|
||||||
],
|
|
||||||
"threshold": 0
|
"threshold": 0
|
||||||
}
|
}
|
||||||
|
|
16
.github/linters/.markdown-lint.yml
vendored
16
.github/linters/.markdown-lint.yml
vendored
|
@ -18,18 +18,18 @@
|
||||||
###############
|
###############
|
||||||
# Rules by id #
|
# Rules by id #
|
||||||
###############
|
###############
|
||||||
MD004: false # Unordered list style
|
MD004: false # Unordered list style
|
||||||
MD007:
|
MD007:
|
||||||
indent: 2 # Unordered list indentation
|
indent: 2 # Unordered list indentation
|
||||||
MD013:
|
MD013:
|
||||||
line_length: 808 # Line length
|
line_length: 808 # Line length
|
||||||
MD026:
|
MD026:
|
||||||
punctuation: ".,;:!。,;:" # List of not allowed
|
punctuation: ".,;:!。,;:" # List of not allowed
|
||||||
MD029: false # Ordered list item prefix
|
MD029: false # Ordered list item prefix
|
||||||
MD033: false # Allow inline HTML
|
MD033: false # Allow inline HTML
|
||||||
MD036: false # Emphasis used instead of a heading
|
MD036: false # Emphasis used instead of a heading
|
||||||
|
|
||||||
#################
|
#################
|
||||||
# Rules by tags #
|
# Rules by tags #
|
||||||
#################
|
#################
|
||||||
blank_lines: false # Error on blank lines
|
blank_lines: false # Error on blank lines
|
||||||
|
|
15
.github/linters/tsconfig.json
vendored
15
.github/linters/tsconfig.json
vendored
|
@ -2,20 +2,11 @@
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"strictNullChecks": true
|
"strictNullChecks": true
|
||||||
},
|
},
|
||||||
"include": [
|
"include": ["src", "tests", "tools", "/tmp/lint/test/linters"],
|
||||||
"src",
|
|
||||||
"tests",
|
|
||||||
"tools",
|
|
||||||
"/tmp/lint/test/linters"
|
|
||||||
],
|
|
||||||
"overrides": [
|
"overrides": [
|
||||||
{
|
{
|
||||||
"extends": [
|
"extends": ["plugin:@typescript-eslint/disable-type-checked"],
|
||||||
"plugin:@typescript-eslint/disable-type-checked"
|
"files": ["./**/*.{ts,tsx}"]
|
||||||
],
|
|
||||||
"files": [
|
|
||||||
"./**/*.{ts,tsx}"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
10
.github/pull_request-template.md
vendored
10
.github/pull_request-template.md
vendored
|
@ -1,7 +1,13 @@
|
||||||
<!-- Start with an H2 because GitHub automatically adds the commit description before the template, -->
|
<!-- Start with an H2 because GitHub automatically adds the commit description before the template, -->
|
||||||
<!-- so contributors don't have to manually cut-paste the description after the H1. -->
|
<!-- so contributors don't have to manually cut-paste the description after the H1. -->
|
||||||
|
<!-- Also, include the header in a "prettier ignore" block because it adds a blank line -->
|
||||||
|
<!-- after the markdownlint-disable-next-line directive, making it useless. -->
|
||||||
|
<!-- Ref: https://github.com/prettier/prettier/issues/14350 -->
|
||||||
|
<!-- Ref: https://github.com/prettier/prettier/issues/10128 -->
|
||||||
|
<!-- prettier-ignore-start -->
|
||||||
<!-- markdownlint-disable-next-line MD041 -->
|
<!-- markdownlint-disable-next-line MD041 -->
|
||||||
## Readiness checklist
|
## Readiness checklist
|
||||||
|
<!-- prettier-ignore-end -->
|
||||||
|
|
||||||
In order to have this pull request merged, complete the following tasks.
|
In order to have this pull request merged, complete the following tasks.
|
||||||
|
|
||||||
|
@ -14,11 +20,11 @@ In order to have this pull request merged, complete the following tasks.
|
||||||
- [ ] I followed the [Conventional Commit v1.0.0 spec](https://www.conventionalcommits.org/en/v1.0.0/).
|
- [ ] I followed the [Conventional Commit v1.0.0 spec](https://www.conventionalcommits.org/en/v1.0.0/).
|
||||||
- [ ] I wrote the necessary upgrade instructions in the [upgrade guide](../docs/upgrade-guide.md).
|
- [ ] I wrote the necessary upgrade instructions in the [upgrade guide](../docs/upgrade-guide.md).
|
||||||
- [ ] If this pull request is about and existing issue,
|
- [ ] If this pull request is about and existing issue,
|
||||||
I added the `Fix #ISSUE_NUMBER` or `Close #ISSUE_NUMBER` text to the description of the pull request.
|
I added the `Fix #ISSUE_NUMBER` or `Close #ISSUE_NUMBER` text to the description of the pull request.
|
||||||
|
|
||||||
### Super-linter maintainer tasks
|
### Super-linter maintainer tasks
|
||||||
|
|
||||||
- [ ] Label as `breaking` if this change breaks compatibility with the previous released version.
|
- [ ] Label as `breaking` if this change breaks compatibility with the previous released version.
|
||||||
- [ ] Label as either: `automation`, `bug`, `documentation`, `enhancement`, `infrastructure`.
|
- [ ] Label as either: `automation`, `bug`, `documentation`, `enhancement`, `infrastructure`.
|
||||||
- [ ] Add the pull request to a milestone, eventually creating one, that matches
|
- [ ] Add the pull request to a milestone, eventually creating one, that matches
|
||||||
with the version that release-please proposes in the `preview-release-notes` CI job.
|
with the version that release-please proposes in the `preview-release-notes` CI job.
|
||||||
|
|
|
@ -34,11 +34,7 @@
|
||||||
".": {
|
".": {
|
||||||
"changelog-path": "CHANGELOG.md",
|
"changelog-path": "CHANGELOG.md",
|
||||||
"release-type": "simple",
|
"release-type": "simple",
|
||||||
"extra-files": [
|
"extra-files": ["action.yml", "README.md", "slim/action.yml"]
|
||||||
"action.yml",
|
|
||||||
"README.md",
|
|
||||||
"slim/action.yml"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
3
.github/workflows/dependabot-automation.yaml
vendored
3
.github/workflows/dependabot-automation.yaml
vendored
|
@ -1,7 +1,7 @@
|
||||||
---
|
---
|
||||||
name: Dependabot automation
|
name: Dependabot automation
|
||||||
|
|
||||||
on: # yamllint disable-line rule:truthy
|
on: # yamllint disable-line rule:truthy
|
||||||
pull_request:
|
pull_request:
|
||||||
types:
|
types:
|
||||||
- opened
|
- opened
|
||||||
|
@ -27,4 +27,3 @@ jobs:
|
||||||
# This doesn't trigger an automated merge because we require at approvals
|
# This doesn't trigger an automated merge because we require at approvals
|
||||||
- name: Enable auto-merge
|
- name: Enable auto-merge
|
||||||
run: gh pr merge --auto --squash --delete-branch "${PR_URL}"
|
run: gh pr merge --auto --squash --delete-branch "${PR_URL}"
|
||||||
...
|
|
||||||
|
|
3
.github/workflows/lint-commit.yaml
vendored
3
.github/workflows/lint-commit.yaml
vendored
|
@ -13,7 +13,7 @@ jobs:
|
||||||
commitlint:
|
commitlint:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
|
@ -72,4 +72,3 @@ jobs:
|
||||||
- name: Validate commits
|
- name: Validate commits
|
||||||
run: |
|
run: |
|
||||||
make lint-commits
|
make lint-commits
|
||||||
...
|
|
||||||
|
|
8
.github/workflows/stale.yml
vendored
8
.github/workflows/stale.yml
vendored
|
@ -14,8 +14,8 @@ permissions: {}
|
||||||
jobs:
|
jobs:
|
||||||
markstale:
|
markstale:
|
||||||
permissions:
|
permissions:
|
||||||
issues: write # for actions/stale to close stale issues
|
issues: write # for actions/stale to close stale issues
|
||||||
pull-requests: write # for actions/stale to close stale PRs
|
pull-requests: write # for actions/stale to close stale PRs
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
# only run on schedule
|
# only run on schedule
|
||||||
if: ${{ github.event_name == 'schedule' }}
|
if: ${{ github.event_name == 'schedule' }}
|
||||||
|
@ -36,8 +36,8 @@ jobs:
|
||||||
|
|
||||||
marknotstale:
|
marknotstale:
|
||||||
permissions:
|
permissions:
|
||||||
issues: write # for actions/stale to close stale issues
|
issues: write # for actions/stale to close stale issues
|
||||||
pull-requests: write # for actions/stale to close stale PRs
|
pull-requests: write # for actions/stale to close stale PRs
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
# do not run on schedule
|
# do not run on schedule
|
||||||
if: "${{ github.event_name == 'issue_comment' && contains(github.event.issue.labels.*.name, 'O: stale 🤖') && github.event.issue.user.type != 'Bot' }}"
|
if: "${{ github.event_name == 'issue_comment' && contains(github.event.issue.labels.*.name, 'O: stale 🤖') && github.event.issue.user.type != 'Bot' }}"
|
||||||
|
|
49
.github/workflows/thank_contributors.yaml
vendored
49
.github/workflows/thank_contributors.yaml
vendored
|
@ -2,7 +2,7 @@ name: Monthly contributor report
|
||||||
on:
|
on:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
schedule:
|
schedule:
|
||||||
- cron: '3 2 1 * *'
|
- cron: "3 2 1 * *"
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
issues: write
|
issues: write
|
||||||
|
@ -13,31 +13,30 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
- name: Get dates for last month
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
# Calculate the first day of the previous month
|
||||||
|
start_date=$(date -d "last month" +%Y-%m-01)
|
||||||
|
|
||||||
- name: Get dates for last month
|
# Calculate the last day of the previous month
|
||||||
shell: bash
|
end_date=$(date -d "$start_date +1 month -1 day" +%Y-%m-%d)
|
||||||
run: |
|
|
||||||
# Calculate the first day of the previous month
|
|
||||||
start_date=$(date -d "last month" +%Y-%m-01)
|
|
||||||
|
|
||||||
# Calculate the last day of the previous month
|
#Set an environment variable with the date range
|
||||||
end_date=$(date -d "$start_date +1 month -1 day" +%Y-%m-%d)
|
echo "START_DATE=$start_date" >> "$GITHUB_ENV"
|
||||||
|
echo "END_DATE=$end_date" >> "$GITHUB_ENV"
|
||||||
|
|
||||||
#Set an environment variable with the date range
|
- name: Run contributor action
|
||||||
echo "START_DATE=$start_date" >> "$GITHUB_ENV"
|
uses: github/contributors@v1
|
||||||
echo "END_DATE=$end_date" >> "$GITHUB_ENV"
|
env:
|
||||||
|
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
START_DATE: ${{ env.START_DATE }}
|
||||||
|
END_DATE: ${{ env.END_DATE }}
|
||||||
|
REPOSITORY: super-linter/super-linter
|
||||||
|
|
||||||
- name: Run contributor action
|
- name: Create issue
|
||||||
uses: github/contributors@v1
|
uses: peter-evans/create-issue-from-file@v5
|
||||||
env:
|
with:
|
||||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
title: Thank you super-linter contributors (${{ env.START_DATE }}..${{ env.END_DATE }})
|
||||||
START_DATE: ${{ env.START_DATE }}
|
token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
END_DATE: ${{ env.END_DATE }}
|
content-filepath: ./contributors.md
|
||||||
REPOSITORY: super-linter/super-linter
|
|
||||||
|
|
||||||
- name: Create issue
|
|
||||||
uses: peter-evans/create-issue-from-file@v5
|
|
||||||
with:
|
|
||||||
title: Thank you super-linter contributors (${{ env.START_DATE }}..${{ env.END_DATE }})
|
|
||||||
token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
content-filepath: ./contributors.md
|
|
||||||
|
|
4
.prettierignore
Normal file
4
.prettierignore
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
# Don't format Markdown files to verify tests
|
||||||
|
# because we don't yet generate formatted Markdown
|
||||||
|
# tables when creating the summary file
|
||||||
|
test/data/super-linter-summary/markdown/table/**/*.md
|
|
@ -14,22 +14,22 @@ appearance, race, religion, or sexual identity and orientation.
|
||||||
Examples of behavior that contributes to creating a positive environment
|
Examples of behavior that contributes to creating a positive environment
|
||||||
include:
|
include:
|
||||||
|
|
||||||
* Using welcoming and inclusive language
|
- Using welcoming and inclusive language
|
||||||
* Being respectful of differing viewpoints and experiences
|
- Being respectful of differing viewpoints and experiences
|
||||||
* Gracefully accepting constructive criticism
|
- Gracefully accepting constructive criticism
|
||||||
* Focusing on what is best for the community
|
- Focusing on what is best for the community
|
||||||
* Showing empathy towards other community members
|
- Showing empathy towards other community members
|
||||||
|
|
||||||
Examples of unacceptable behavior by participants include:
|
Examples of unacceptable behavior by participants include:
|
||||||
|
|
||||||
* The use of sexualized language or imagery and unwelcome sexual attention or
|
- The use of sexualized language or imagery and unwelcome sexual attention or
|
||||||
advances
|
advances
|
||||||
* Trolling, insulting/derogatory comments, and personal or political attacks
|
- Trolling, insulting/derogatory comments, and personal or political attacks
|
||||||
* Public or private harassment
|
- Public or private harassment
|
||||||
* Publishing others' private information, such as a physical or electronic
|
- Publishing others' private information, such as a physical or electronic
|
||||||
address, without explicit permission
|
address, without explicit permission
|
||||||
* Other conduct which could reasonably be considered inappropriate in a
|
- Other conduct which could reasonably be considered inappropriate in a
|
||||||
professional setting
|
professional setting
|
||||||
|
|
||||||
## Our Responsibilities
|
## Our Responsibilities
|
||||||
|
|
||||||
|
@ -68,8 +68,11 @@ members of the project's leadership.
|
||||||
## Attribution
|
## Attribution
|
||||||
|
|
||||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
|
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
|
||||||
|
|
||||||
<!-- textlint-disable -->
|
<!-- textlint-disable -->
|
||||||
|
|
||||||
available at [https://www.contributor-covenant.org/version/1/4/code-of-conduct.html](https://www.contributor-covenant.org/version/1/4/code-of-conduct/)
|
available at [https://www.contributor-covenant.org/version/1/4/code-of-conduct.html](https://www.contributor-covenant.org/version/1/4/code-of-conduct/)
|
||||||
|
|
||||||
<!-- textlint-enable -->
|
<!-- textlint-enable -->
|
||||||
|
|
||||||
[homepage]: https://www.contributor-covenant.org
|
[homepage]: https://www.contributor-covenant.org
|
||||||
|
|
572
README.md
572
README.md
|
@ -51,60 +51,60 @@ Here are some notable Super-linter features:
|
||||||
|
|
||||||
Super-linter supports the following tools:
|
Super-linter supports the following tools:
|
||||||
|
|
||||||
| _Language_ | _Linter_ |
|
| _Language_ | _Linter_ |
|
||||||
|----------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
| -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
| **Ansible** | [ansible-lint](https://github.com/ansible/ansible-lint) |
|
| **Ansible** | [ansible-lint](https://github.com/ansible/ansible-lint) |
|
||||||
| **AWS CloudFormation templates** | [cfn-lint](https://github.com/aws-cloudformation/cfn-python-lint/) |
|
| **AWS CloudFormation templates** | [cfn-lint](https://github.com/aws-cloudformation/cfn-python-lint/) |
|
||||||
| **Azure Resource Manager (ARM)** | [arm-ttk](https://github.com/azure/arm-ttk) |
|
| **Azure Resource Manager (ARM)** | [arm-ttk](https://github.com/azure/arm-ttk) |
|
||||||
| **C++** | [cpp-lint](https://github.com/cpplint/cpplint) / [clang-format](https://clang.llvm.org/docs/ClangFormatStyleOptions.html) |
|
| **C++** | [cpp-lint](https://github.com/cpplint/cpplint) / [clang-format](https://clang.llvm.org/docs/ClangFormatStyleOptions.html) |
|
||||||
| **C#** | [dotnet format](https://github.com/dotnet/format) / [clang-format](https://clang.llvm.org/docs/ClangFormatStyleOptions.html) |
|
| **C#** | [dotnet format](https://github.com/dotnet/format) / [clang-format](https://clang.llvm.org/docs/ClangFormatStyleOptions.html) |
|
||||||
| **CSS** | [stylelint](https://stylelint.io/) |
|
| **CSS** | [stylelint](https://stylelint.io/) |
|
||||||
| **Clojure** | [clj-kondo](https://github.com/borkdude/clj-kondo) |
|
| **Clojure** | [clj-kondo](https://github.com/borkdude/clj-kondo) |
|
||||||
| **CoffeeScript** | [coffeelint](https://coffeelint.github.io/) |
|
| **CoffeeScript** | [coffeelint](https://coffeelint.github.io/) |
|
||||||
| **Copy/paste detection** | [jscpd](https://github.com/kucherenko/jscpd) |
|
| **Copy/paste detection** | [jscpd](https://github.com/kucherenko/jscpd) |
|
||||||
| **Dart** | [dartanalyzer](https://dart.dev/guides/language/analysis-options) |
|
| **Dart** | [dartanalyzer](https://dart.dev/guides/language/analysis-options) |
|
||||||
| **Dockerfile** | [hadolint](https://github.com/hadolint/hadolint) |
|
| **Dockerfile** | [hadolint](https://github.com/hadolint/hadolint) |
|
||||||
| **EditorConfig** | [editorconfig-checker](https://github.com/editorconfig-checker/editorconfig-checker) |
|
| **EditorConfig** | [editorconfig-checker](https://github.com/editorconfig-checker/editorconfig-checker) |
|
||||||
| **ENV** | [dotenv-linter](https://github.com/dotenv-linter/dotenv-linter) |
|
| **ENV** | [dotenv-linter](https://github.com/dotenv-linter/dotenv-linter) |
|
||||||
| **Gherkin** | [gherkin-lint](https://github.com/vsiakka/gherkin-lint) |
|
| **Gherkin** | [gherkin-lint](https://github.com/vsiakka/gherkin-lint) |
|
||||||
| **GitHub Actions** | [actionlint](https://github.com/rhysd/actionlint) |
|
| **GitHub Actions** | [actionlint](https://github.com/rhysd/actionlint) |
|
||||||
| **Golang** | [golangci-lint](https://github.com/golangci/golangci-lint) |
|
| **Golang** | [golangci-lint](https://github.com/golangci/golangci-lint) |
|
||||||
| **GoReleaser** | [GoReleaser](https://github.com/goreleaser/goreleaser) |
|
| **GoReleaser** | [GoReleaser](https://github.com/goreleaser/goreleaser) |
|
||||||
| **Groovy** | [npm-groovy-lint](https://github.com/nvuillam/npm-groovy-lint) |
|
| **Groovy** | [npm-groovy-lint](https://github.com/nvuillam/npm-groovy-lint) |
|
||||||
| **HTML** | [HTMLHint](https://github.com/htmlhint/HTMLHint) |
|
| **HTML** | [HTMLHint](https://github.com/htmlhint/HTMLHint) |
|
||||||
| **Java** | [checkstyle](https://checkstyle.org) / [google-java-format](https://github.com/google/google-java-format) |
|
| **Java** | [checkstyle](https://checkstyle.org) / [google-java-format](https://github.com/google/google-java-format) |
|
||||||
| **JavaScript** | [ESLint](https://eslint.org/) / [standard js](https://standardjs.com/) |
|
| **JavaScript** | [ESLint](https://eslint.org/) / [standard js](https://standardjs.com/) |
|
||||||
| **JSON** | [eslint-plugin-json](https://www.npmjs.com/package/eslint-plugin-json) |
|
| **JSON** | [eslint-plugin-json](https://www.npmjs.com/package/eslint-plugin-json) |
|
||||||
| **JSONC** | [eslint-plugin-jsonc](https://www.npmjs.com/package/eslint-plugin-jsonc) |
|
| **JSONC** | [eslint-plugin-jsonc](https://www.npmjs.com/package/eslint-plugin-jsonc) |
|
||||||
| Infrastructure as code | [Checkov](https://www.checkov.io/) |
|
| Infrastructure as code | [Checkov](https://www.checkov.io/) |
|
||||||
| **Kubernetes** | [kubeconform](https://github.com/yannh/kubeconform) |
|
| **Kubernetes** | [kubeconform](https://github.com/yannh/kubeconform) |
|
||||||
| **Kotlin** | [ktlint](https://github.com/pinterest/ktlint) |
|
| **Kotlin** | [ktlint](https://github.com/pinterest/ktlint) |
|
||||||
| **LaTeX** | [ChkTex](https://www.nongnu.org/chktex/) |
|
| **LaTeX** | [ChkTex](https://www.nongnu.org/chktex/) |
|
||||||
| **Lua** | [luacheck](https://github.com/luarocks/luacheck) |
|
| **Lua** | [luacheck](https://github.com/luarocks/luacheck) |
|
||||||
| **Markdown** | [markdownlint](https://github.com/igorshubovych/markdownlint-cli#readme) |
|
| **Markdown** | [markdownlint](https://github.com/igorshubovych/markdownlint-cli#readme) |
|
||||||
| **Natural language** | [textlint](https://textlint.github.io/) |
|
| **Natural language** | [textlint](https://textlint.github.io/) |
|
||||||
| **OpenAPI** | [spectral](https://github.com/stoplightio/spectral) |
|
| **OpenAPI** | [spectral](https://github.com/stoplightio/spectral) |
|
||||||
| **Perl** | [perlcritic](https://metacpan.org/pod/Perl::Critic) |
|
| **Perl** | [perlcritic](https://metacpan.org/pod/Perl::Critic) |
|
||||||
| **PHP** | [PHP built-in linter](https://www.php.net/manual/en/features.commandline.options.php) / [PHP CodeSniffer](https://github.com/PHPCSStandards/PHP_CodeSniffer) / [PHPStan](https://phpstan.org/) / [Psalm](https://psalm.dev/) |
|
| **PHP** | [PHP built-in linter](https://www.php.net/manual/en/features.commandline.options.php) / [PHP CodeSniffer](https://github.com/PHPCSStandards/PHP_CodeSniffer) / [PHPStan](https://phpstan.org/) / [Psalm](https://psalm.dev/) |
|
||||||
| **PowerShell** | [PSScriptAnalyzer](https://github.com/PowerShell/Psscriptanalyzer) |
|
| **PowerShell** | [PSScriptAnalyzer](https://github.com/PowerShell/Psscriptanalyzer) |
|
||||||
| **Protocol Buffers** | [protolint](https://github.com/yoheimuta/protolint) |
|
| **Protocol Buffers** | [protolint](https://github.com/yoheimuta/protolint) |
|
||||||
| **Python3** | [pylint](https://pylint.pycqa.org/) / [flake8](https://flake8.pycqa.org/en/latest/) / [black](https://github.com/psf/black) / [isort](https://pypi.org/project/isort/) / [ruff](https://github.com/astral-sh/ruff) |
|
| **Python3** | [pylint](https://pylint.pycqa.org/) / [flake8](https://flake8.pycqa.org/en/latest/) / [black](https://github.com/psf/black) / [isort](https://pypi.org/project/isort/) / [ruff](https://github.com/astral-sh/ruff) |
|
||||||
| **R** | [lintr](https://github.com/jimhester/lintr) |
|
| **R** | [lintr](https://github.com/jimhester/lintr) |
|
||||||
| **Raku** | [Raku](https://raku.org) |
|
| **Raku** | [Raku](https://raku.org) |
|
||||||
| **Renovate** | [renovate-config-validator](https://docs.renovatebot.com/config-validation/) |
|
| **Renovate** | [renovate-config-validator](https://docs.renovatebot.com/config-validation/) |
|
||||||
| **Ruby** | [RuboCop](https://github.com/rubocop-hq/rubocop) |
|
| **Ruby** | [RuboCop](https://github.com/rubocop-hq/rubocop) |
|
||||||
| **Rust** | [Rustfmt](https://github.com/rust-lang/rustfmt) / [Clippy](https://github.com/rust-lang/rust-clippy) |
|
| **Rust** | [Rustfmt](https://github.com/rust-lang/rustfmt) / [Clippy](https://github.com/rust-lang/rust-clippy) |
|
||||||
| **Scala** | [scalafmt](https://github.com/scalameta/scalafmt) |
|
| **Scala** | [scalafmt](https://github.com/scalameta/scalafmt) |
|
||||||
| **Secrets** | [GitLeaks](https://github.com/zricethezav/gitleaks) |
|
| **Secrets** | [GitLeaks](https://github.com/zricethezav/gitleaks) |
|
||||||
| **Shell** | [ShellCheck](https://github.com/koalaman/shellcheck) / `executable bit check` / [shfmt](https://github.com/mvdan/sh) |
|
| **Shell** | [ShellCheck](https://github.com/koalaman/shellcheck) / `executable bit check` / [shfmt](https://github.com/mvdan/sh) |
|
||||||
| **Snakemake** | [snakefmt](https://github.com/snakemake/snakefmt/) / [snakemake --lint](https://snakemake.readthedocs.io/en/stable/snakefiles/writing_snakefiles.html#best-practices) |
|
| **Snakemake** | [snakefmt](https://github.com/snakemake/snakefmt/) / [snakemake --lint](https://snakemake.readthedocs.io/en/stable/snakefiles/writing_snakefiles.html#best-practices) |
|
||||||
| **SQL** | [sqlfluff](https://github.com/sqlfluff/sqlfluff) |
|
| **SQL** | [sqlfluff](https://github.com/sqlfluff/sqlfluff) |
|
||||||
| **Tekton** | [tekton-lint](https://github.com/IBM/tekton-lint) |
|
| **Tekton** | [tekton-lint](https://github.com/IBM/tekton-lint) |
|
||||||
| **Terraform** | [fmt](https://developer.hashicorp.com/terraform/cli/commands/fmt) / [tflint](https://github.com/terraform-linters/tflint) / [terrascan](https://github.com/accurics/terrascan) |
|
| **Terraform** | [fmt](https://developer.hashicorp.com/terraform/cli/commands/fmt) / [tflint](https://github.com/terraform-linters/tflint) / [terrascan](https://github.com/accurics/terrascan) |
|
||||||
| **Terragrunt** | [terragrunt](https://github.com/gruntwork-io/terragrunt) |
|
| **Terragrunt** | [terragrunt](https://github.com/gruntwork-io/terragrunt) |
|
||||||
| **TypeScript** | [ESLint](https://eslint.org/) / [standard js](https://standardjs.com/) |
|
| **TypeScript** | [ESLint](https://eslint.org/) / [standard js](https://standardjs.com/) |
|
||||||
| **XML** | [LibXML](http://xmlsoft.org/) |
|
| **XML** | [LibXML](http://xmlsoft.org/) |
|
||||||
| **YAML** | [YamlLint](https://github.com/adrienverge/yamllint) |
|
| **YAML** | [YamlLint](https://github.com/adrienverge/yamllint) |
|
||||||
|
|
||||||
## Get started
|
## Get started
|
||||||
|
|
||||||
|
@ -114,42 +114,41 @@ To run super-linter as a GitHub Action, you do the following:
|
||||||
|
|
||||||
1. Create a new [GitHub Actions workflow](https://docs.github.com/en/actions/using-workflows/about-workflows#about-workflows) in your repository with the following content:
|
1. Create a new [GitHub Actions workflow](https://docs.github.com/en/actions/using-workflows/about-workflows#about-workflows) in your repository with the following content:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
---
|
---
|
||||||
name: Lint
|
name: Lint
|
||||||
|
|
||||||
on: # yamllint disable-line rule:truthy
|
on: # yamllint disable-line rule:truthy
|
||||||
push: null
|
push: null
|
||||||
pull_request: null
|
pull_request: null
|
||||||
|
|
||||||
permissions: { }
|
permissions: {}
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
name: Lint
|
name: Lint
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
packages: read
|
packages: read
|
||||||
# To report GitHub Actions status checks
|
# To report GitHub Actions status checks
|
||||||
statuses: write
|
statuses: write
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
# super-linter needs the full git history to get the
|
# super-linter needs the full git history to get the
|
||||||
# list of files that changed across commits
|
# list of files that changed across commits
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
- name: Super-linter
|
- name: Super-linter
|
||||||
uses: super-linter/super-linter@v6.9.0 # x-release-please-version
|
uses: super-linter/super-linter@v6.9.0 # x-release-please-version
|
||||||
env:
|
env:
|
||||||
# To report GitHub Actions status checks
|
# To report GitHub Actions status checks
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
...
|
```
|
||||||
```
|
|
||||||
|
|
||||||
1. Commit that file to a new branch.
|
1. Commit that file to a new branch.
|
||||||
1. Push the new commit to the remote repository.
|
1. Push the new commit to the remote repository.
|
||||||
|
@ -189,196 +188,212 @@ Super-Linter provides several variants:
|
||||||
|
|
||||||
You can configure Super-linter using the following environment variables:
|
You can configure Super-linter using the following environment variables:
|
||||||
|
|
||||||
| **Environment variable** | **Default Value** | **Description** |
|
| **Environment variable** | **Default Value** | **Description** |
|
||||||
|-------------------------------------------------|---------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
| ----------------------------------------------- | ---------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
| **ANSIBLE_CONFIG_FILE** | `.ansible-lint.yml` | Filename for [Ansible-lint configuration](https://ansible.readthedocs.io/projects/lint/configuring/) (ex: `.ansible-lint`, `.ansible-lint.yml`) |
|
| **ANSIBLE_CONFIG_FILE** | `.ansible-lint.yml` | Filename for [Ansible-lint configuration](https://ansible.readthedocs.io/projects/lint/configuring/) (ex: `.ansible-lint`, `.ansible-lint.yml`) |
|
||||||
| **ANSIBLE_DIRECTORY** | `/ansible` | Flag to set the root directory for Ansible file location(s), relative to `DEFAULT_WORKSPACE`. Set to `.` to use the top-level of the `DEFAULT_WORKSPACE`. |
|
| **ANSIBLE_DIRECTORY** | `/ansible` | Flag to set the root directory for Ansible file location(s), relative to `DEFAULT_WORKSPACE`. Set to `.` to use the top-level of the `DEFAULT_WORKSPACE`. |
|
||||||
| **BASH_EXEC_IGNORE_LIBRARIES** | `false` | If set to `true`, shell files with a file extension and no shebang line are ignored when checking if the executable bit is set. |
|
| **BASH_EXEC_IGNORE_LIBRARIES** | `false` | If set to `true`, shell files with a file extension and no shebang line are ignored when checking if the executable bit is set. |
|
||||||
| **BASH_FILE_NAME** | `.shellcheckrc` | Filename for [Shellcheck](https://github.com/koalaman/shellcheck/blob/master/shellcheck.1.md#rc-files) |
|
| **BASH_FILE_NAME** | `.shellcheckrc` | Filename for [Shellcheck](https://github.com/koalaman/shellcheck/blob/master/shellcheck.1.md#rc-files) |
|
||||||
| **BASH_SEVERITY** | Shellcheck default severity | Specify the minimum severity of errors to consider in shellcheck. Valid values in order of severity are error, warning, info and style. |
|
| **BASH_SEVERITY** | Shellcheck default severity | Specify the minimum severity of errors to consider in shellcheck. Valid values in order of severity are error, warning, info and style. |
|
||||||
| **CHECKOV_FILE_NAME** | `.checkov.yaml` | Configuration filename for Checkov. |
|
| **CHECKOV_FILE_NAME** | `.checkov.yaml` | Configuration filename for Checkov. |
|
||||||
| **CLANG_FORMAT_FILE_NAME** | `.clang-format` | Configuration filename for [clang-format](https://clang.llvm.org/docs/ClangFormatStyleOptions.html). |
|
| **CLANG_FORMAT_FILE_NAME** | `.clang-format` | Configuration filename for [clang-format](https://clang.llvm.org/docs/ClangFormatStyleOptions.html). |
|
||||||
| **CREATE_LOG_FILE** | `false` | If set to `true`, it creates the log file. You can set the log filename using the `LOG_FILE` environment variable. This overrides any existing log files. |
|
| **CREATE_LOG_FILE** | `false` | If set to `true`, it creates the log file. You can set the log filename using the `LOG_FILE` environment variable. This overrides any existing log files. |
|
||||||
| **CSS_FILE_NAME** | `.stylelintrc.json` | Filename for [Stylelint configuration](https://github.com/stylelint/stylelint) (ex: `.stylelintrc.yml`, `.stylelintrc.yaml`) |
|
| **CSS_FILE_NAME** | `.stylelintrc.json` | Filename for [Stylelint configuration](https://github.com/stylelint/stylelint) (ex: `.stylelintrc.yml`, `.stylelintrc.yaml`) |
|
||||||
| **DEFAULT_BRANCH** | Default repository branch when running on GitHub Actions, `master` otherwise | The name of the repository default branch. There's no need to configure this variable when running on GitHub Actions |
|
| **DEFAULT_BRANCH** | Default repository branch when running on GitHub Actions, `master` otherwise | The name of the repository default branch. There's no need to configure this variable when running on GitHub Actions |
|
||||||
| **DEFAULT_WORKSPACE** | `/tmp/lint` | The location containing files to lint if you are running locally. Defaults to `GITHUB_WORKSPACE` when running in GitHub Actions. There's no need to configure this variable when running on GitHub Actions. |
|
| **DEFAULT_WORKSPACE** | `/tmp/lint` | The location containing files to lint if you are running locally. Defaults to `GITHUB_WORKSPACE` when running in GitHub Actions. There's no need to configure this variable when running on GitHub Actions. |
|
||||||
| **DISABLE_ERRORS** | `false` | Flag to have the linter complete with exit code 0 even if errors were detected. |
|
| **DISABLE_ERRORS** | `false` | Flag to have the linter complete with exit code 0 even if errors were detected. |
|
||||||
| **DOCKERFILE_HADOLINT_FILE_NAME** | `.hadolint.yaml` | Filename for [hadolint configuration](https://github.com/hadolint/hadolint) (ex: `.hadolintlintrc.yaml`) |
|
| **DOCKERFILE_HADOLINT_FILE_NAME** | `.hadolint.yaml` | Filename for [hadolint configuration](https://github.com/hadolint/hadolint) (ex: `.hadolintlintrc.yaml`) |
|
||||||
| **EDITORCONFIG_FILE_NAME** | `.ecrc` | Filename for [editorconfig-checker configuration](https://github.com/editorconfig-checker/editorconfig-checker) |
|
| **EDITORCONFIG_FILE_NAME** | `.ecrc` | Filename for [editorconfig-checker configuration](https://github.com/editorconfig-checker/editorconfig-checker) |
|
||||||
| **ENABLE_GITHUB_ACTIONS_GROUP_TITLE** | `false` if `RUN_LOCAL=true`, `true` otherwise | Flag to enable [GitHub Actions log grouping](https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#grouping-log-lines). |
|
| **ENABLE_GITHUB_ACTIONS_GROUP_TITLE** | `false` if `RUN_LOCAL=true`, `true` otherwise | Flag to enable [GitHub Actions log grouping](https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#grouping-log-lines). |
|
||||||
| **ENABLE_GITHUB_ACTIONS_STEP_SUMMARY** | `false` if `RUN_LOCAL=true`, `true` otherwise | Flag to enable [GitHub Actions job summary](https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary) for the Super-linter action. For more information, see [Summary outputs](#summary-outputs). |
|
| **ENABLE_GITHUB_ACTIONS_STEP_SUMMARY** | `false` if `RUN_LOCAL=true`, `true` otherwise | Flag to enable [GitHub Actions job summary](https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary) for the Super-linter action. For more information, see [Summary outputs](#summary-outputs). |
|
||||||
| **FILTER_REGEX_EXCLUDE** | not set | Regular expression defining which files will be excluded from linting (ex: `.*src/test.*`). Not setting this variable means to process all files. |
|
| **FILTER_REGEX_EXCLUDE** | not set | Regular expression defining which files will be excluded from linting (ex: `.*src/test.*`). Not setting this variable means to process all files. |
|
||||||
| **FILTER_REGEX_INCLUDE** | not set | Regular expression defining which files will be processed by linters (ex: `.*src/.*`). Not setting this variable means to process all files. `FILTER_REGEX_INCLUDE` is evaluated before `FILTER_REGEX_EXCLUDE`. |
|
| **FILTER_REGEX_INCLUDE** | not set | Regular expression defining which files will be processed by linters (ex: `.*src/.*`). Not setting this variable means to process all files. `FILTER_REGEX_INCLUDE` is evaluated before `FILTER_REGEX_EXCLUDE`. |
|
||||||
| **FIX_ANSIBLE** | `false` | Option to enable fix mode for `ANSIBLE`. |
|
| **FIX_ANSIBLE** | `false` | Option to enable fix mode for `ANSIBLE`. |
|
||||||
| **FIX_CLANG_FORMAT** | `false` | Option to enable fix mode for `CLANG_FORMAT`. |
|
| **FIX_CLANG_FORMAT** | `false` | Option to enable fix mode for `CLANG_FORMAT`. |
|
||||||
| **FIX_CSHARP** | `false` | Option to enable fix mode for `CSHARP`. |
|
| **FIX_CSHARP** | `false` | Option to enable fix mode for `CSHARP`. |
|
||||||
| **FIX_CSS** | `false` | Option to enable fix mode for `CSS`. |
|
| **FIX_CSS_PRETTIER** | `true` | Flag to enable or disable the formatting of CSS, Sass, and SCSS files with Prettier. |
|
||||||
| **FIX_ENV** | `false` | Option to enable fix mode for `ENV`. |
|
| **FIX_CSS** | `false` | Option to enable fix mode for `CSS`. |
|
||||||
| **FIX_GO** | `false` | Option to enable fix mode for `GO`. |
|
| **FIX_ENV** | `false` | Option to enable fix mode for `ENV`. |
|
||||||
| **FIX_GO_MODULES** | `false` | Option to enable fix mode for `GO_MODULES`. |
|
| **FIX_GO_MODULES** | `false` | Option to enable fix mode for `GO_MODULES`. |
|
||||||
| **FIX_GOOGLE_JAVA_FORMAT** | `false` | Option to enable fix mode for `GOOGLE_JAVA_FORMAT`. |
|
| **FIX_GO** | `false` | Option to enable fix mode for `GO`. |
|
||||||
| **FIX_GROOVY** | `false` | Option to enable fix mode for `GROOVY`. |
|
| **FIX_GOOGLE_JAVA_FORMAT** | `false` | Option to enable fix mode for `GOOGLE_JAVA_FORMAT`. |
|
||||||
| **FIX_JAVASCRIPT_ES** | `false` | Option to enable fix mode for `JAVASCRIPT_ES`. |
|
| **FIX_GRAPHQL_PRETTIER** | `true` | Flag to enable or disable the formatting of GraphQL files with Prettier. |
|
||||||
| **FIX_JAVASCRIPT_PRETTIER** | `false` | Option to enable fix mode for `JAVASCRIPT_PRETTIER`. |
|
| **FIX_GROOVY** | `false` | Option to enable fix mode for `GROOVY`. |
|
||||||
| **FIX_JAVASCRIPT_STANDARD** | `false` | Option to enable fix mode for `JAVASCRIPT_STANDARD`. |
|
| **FIX_HTML_PRETTIER** | `true` | Flag to enable or disable the formatting of HTML files with Prettier. |
|
||||||
| **FIX_JSON** | `false` | Option to enable fix mode for `JSON`. |
|
| **FIX_JAVASCRIPT_ES** | `false` | Option to enable fix mode for `JAVASCRIPT_ES`. |
|
||||||
| **FIX_JSONC** | `false` | Option to enable fix mode for `JSONC`. |
|
| **FIX_JAVASCRIPT_PRETTIER** | `false` | Flag to enable or disable the formatting of JavaScript files with Prettier. |
|
||||||
| **FIX_JSX** | `false` | Option to enable fix mode for `JSX`. |
|
| **FIX_JAVASCRIPT_STANDARD** | `false` | Option to enable fix mode for `JAVASCRIPT_STANDARD`. |
|
||||||
| **FIX_MARKDOWN** | `false` | Option to enable fix mode for `MARKDOWN`. |
|
| **FIX_JSON_PRETTIER** | `true` | Flag to enable or disable the formatting of JSON files with Prettier. |
|
||||||
| **FIX_POWERSHELL** | `false` | Option to enable fix mode for `POWERSHELL`. |
|
| **FIX_JSON** | `false` | Option to enable fix mode for `JSON`. |
|
||||||
| **FIX_PROTOBUF** | `false` | Option to enable fix mode for `PROTOBUF`. |
|
| **FIX_JSONC** | `false` | Option to enable fix mode for `JSONC`. |
|
||||||
| **FIX_PYTHON_BLACK** | `false` | Option to enable fix mode for `PYTHON_BLACK`. |
|
| **FIX_JSX_PRETTIER** | `true` | Flag to enable or disable the formatting of JSX files with Prettier. |
|
||||||
| **FIX_PYTHON_ISORT** | `false` | Option to enable fix mode for `PYTHON_ISORT`. |
|
| **FIX_JSX** | `false` | Option to enable fix mode for `JSX`. |
|
||||||
| **FIX_PYTHON_RUFF** | `false` | Option to enable fix mode for `PYTHON_RUFF`. |
|
| **FIX_MARKDOWN_PRETTIER** | `true` | Flag to enable or disable the formatting of Markdown files with Prettier. |
|
||||||
| **FIX_RUBY** | `false` | Option to enable fix mode for `RUBY`. |
|
| **FIX_MARKDOWN** | `false` | Option to enable fix mode for `MARKDOWN`. |
|
||||||
| **FIX_RUST_2015** | `false` | Option to enable fix mode for `RUST_2015`. |
|
| **FIX_POWERSHELL** | `false` | Option to enable fix mode for `POWERSHELL`. |
|
||||||
| **FIX_RUST_2018** | `false` | Option to enable fix mode for `RUST_2018`. |
|
| **FIX_PROTOBUF** | `false` | Option to enable fix mode for `PROTOBUF`. |
|
||||||
| **FIX_RUST_2021** | `false` | Option to enable fix mode for `RUST_2021`. |
|
| **FIX_PYTHON_BLACK** | `false` | Option to enable fix mode for `PYTHON_BLACK`. |
|
||||||
| **FIX_RUST_CLIPPY** | `false` | Option to enable fix mode for `RUST_CLIPPY`. When `FIX_RUST_CLIPPY` is `true`, Clippy is allowed to fix issues in the workspace even if there are unstaged and staged changes in the workspace. |
|
| **FIX_PYTHON_ISORT** | `false` | Option to enable fix mode for `PYTHON_ISORT`. |
|
||||||
| **FIX_SCALAFMT** | `false` | Option to enable fix mode for `SCALAFMT`. |
|
| **FIX_PYTHON_RUFF** | `false` | Option to enable fix mode for `PYTHON_RUFF`. |
|
||||||
| **FIX_SHELL_SHFMT** | `false` | Option to enable fix mode for `SHELL_SHFMT`. |
|
| **FIX_RUBY** | `false` | Option to enable fix mode for `RUBY`. |
|
||||||
| **FIX_SNAKEMAKE_SNAKEFMT** | `false` | Option to enable fix mode for `SNAKEMAKE_SNAKEFMT`. |
|
| **FIX_RUST_2015** | `false` | Option to enable fix mode for `RUST_2015`. |
|
||||||
| **FIX_SQLFLUFF** | `false` | Option to enable fix mode for `SQLFLUFF`. |
|
| **FIX_RUST_2018** | `false` | Option to enable fix mode for `RUST_2018`. |
|
||||||
| **FIX_TERRAFORM_FMT** | `false` | Option to enable fix mode for `TERRAFORM_FMT`. |
|
| **FIX_RUST_2021** | `false` | Option to enable fix mode for `RUST_2021`. |
|
||||||
| **FIX_TSX** | `false` | Option to enable fix mode for `TSX`. |
|
| **FIX_RUST_CLIPPY** | `false` | Option to enable fix mode for `RUST_CLIPPY`. When `FIX_RUST_CLIPPY` is `true`, Clippy is allowed to fix issues in the workspace even if there are unstaged and staged changes in the workspace. |
|
||||||
| **FIX_TYPESCRIPT_ES** | `false` | Option to enable fix mode for `TYPESCRIPT_ES`. |
|
| **FIX_SCALAFMT** | `false` | Option to enable fix mode for `SCALAFMT`. |
|
||||||
| **FIX_TYPESCRIPT_PRETTIER** | `false` | Option to enable fix mode for `TYPESCRIPT_PRETTIER`. |
|
| **FIX_SHELL_SHFMT** | `false` | Option to enable fix mode for `SHELL_SHFMT`. |
|
||||||
| **FIX_TYPESCRIPT_STANDARD** | `false` | Option to enable fix mode for `TYPESCRIPT_STANDARD`. |
|
| **FIX_SNAKEMAKE_SNAKEFMT** | `false` | Option to enable fix mode for `SNAKEMAKE_SNAKEFMT`. |
|
||||||
| **GITHUB_ACTIONS_CONFIG_FILE** | `actionlint.yml` | Filename for [Actionlint configuration](https://github.com/rhysd/actionlint/blob/main/docs/config.md) (ex: `actionlint.yml`) |
|
| **FIX_SQLFLUFF** | `false` | Option to enable fix mode for `SQLFLUFF`. |
|
||||||
| **GITHUB_ACTIONS_COMMAND_ARGS** | `null` | Additional arguments passed to `actionlint` command. Useful to [ignore some errors](https://github.com/rhysd/actionlint/blob/main/docs/usage.md#ignore-some-errors) |
|
| **FIX_TERRAFORM_FMT** | `false` | Option to enable fix mode for `TERRAFORM_FMT`. |
|
||||||
| **GITHUB_CUSTOM_API_URL** | `https://api.${GITHUB_DOMAIN}` | Specify a custom GitHub API URL in case GitHub Enterprise is used: e.g. `https://github.myenterprise.com/api/v3` |
|
| **FIX_TSX** | `false` | Option to enable fix mode for `TSX`. |
|
||||||
| **GITHUB_CUSTOM_SERVER_URL** | `https://${GITHUB_DOMAIN}"` | Specify a custom GitHub server URL. Useful for GitHub Enterprise instances. |
|
| **FIX_TYPESCRIPT_ES** | `false` | Option to enable fix mode for `TYPESCRIPT_ES`. |
|
||||||
| **GITHUB_DOMAIN** | `github.com` | Specify a custom GitHub domain in case GitHub Enterprise is used: e.g. `github.myenterprise.com`. `GITHUB_DOMAIN` is a convenience configuration variable to automatically build `GITHUB_CUSTOM_API_URL` and `GITHUB_CUSTOM_SERVER_URL`. |
|
| **FIX_TYPESCRIPT_PRETTIER** | `false` | Flag to enable or disable the formatting of TypeScript files with Prettier. |
|
||||||
| **GITLEAKS_CONFIG_FILE** | `.gitleaks.toml` | Filename for [GitLeaks configuration](https://github.com/zricethezav/gitleaks#configuration) (ex: `.gitleaks.toml`) |
|
| **FIX_TYPESCRIPT_STANDARD** | `false` | Option to enable fix mode for `TYPESCRIPT_STANDARD`. |
|
||||||
| **GITLEAKS_LOG_LEVEL** | Gitleaks default log level | Gitleaks log level. Defaults to the Gitleaks default log level. |
|
| **FIX_VUE_PRETTIER** | `true` | Flag to enable or disable the formatting of Vue files with Prettier. |
|
||||||
| **IGNORE_GENERATED_FILES** | `false` | If set to `true`, super-linter will ignore all the files with `@generated` marker but without `@not-generated` marker. |
|
| **FIX_YAML_PRETTIER** | `true` | Flag to enable or disable the formatting of YAML files with Prettier. |
|
||||||
| **IGNORE_GITIGNORED_FILES** | `false` | If set to `true`, super-linter will ignore all the files that are ignored by Git. |
|
| **GITHUB_ACTIONS_CONFIG_FILE** | `actionlint.yml` | Filename for [Actionlint configuration](https://github.com/rhysd/actionlint/blob/main/docs/config.md) (ex: `actionlint.yml`) |
|
||||||
| **JAVA_FILE_NAME** | `sun_checks.xml` | Filename for [Checkstyle configuration](https://checkstyle.sourceforge.io/config.html). Checkstyle embeds several configuration files, such as `sun_checks.xml`, `google_checks.xml` that you can use without providing your own configuration file. |
|
| **GITHUB_ACTIONS_COMMAND_ARGS** | `null` | Additional arguments passed to `actionlint` command. Useful to [ignore some errors](https://github.com/rhysd/actionlint/blob/main/docs/usage.md#ignore-some-errors) |
|
||||||
| **JAVASCRIPT_ES_CONFIG_FILE** | `.eslintrc.yml` | Filename for [ESLint configuration](https://eslint.org/docs/user-guide/configuring#configuration-file-formats) (ex: `.eslintrc.yml`, `.eslintrc.json`) |
|
| **GITHUB_CUSTOM_API_URL** | `https://api.${GITHUB_DOMAIN}` | Specify a custom GitHub API URL in case GitHub Enterprise is used: e.g. `https://github.myenterprise.com/api/v3` |
|
||||||
| **JSCPD_CONFIG_FILE** | `.jscpd.json` | Filename for JSCPD configuration |
|
| **GITHUB_CUSTOM_SERVER_URL** | `https://${GITHUB_DOMAIN}"` | Specify a custom GitHub server URL. Useful for GitHub Enterprise instances. |
|
||||||
| **KUBERNETES_KUBECONFORM_OPTIONS** | `null` | Additional arguments to pass to the command-line when running **Kubernetes Kubeconform** (Example: --ignore-missing-schemas) |
|
| **GITHUB_DOMAIN** | `github.com` | Specify a custom GitHub domain in case GitHub Enterprise is used: e.g. `github.myenterprise.com`. `GITHUB_DOMAIN` is a convenience configuration variable to automatically build `GITHUB_CUSTOM_API_URL` and `GITHUB_CUSTOM_SERVER_URL`. |
|
||||||
| **LINTER_RULES_PATH** | `.github/linters` | Directory for all linter configuration rules. |
|
| **GITLEAKS_CONFIG_FILE** | `.gitleaks.toml` | Filename for [GitLeaks configuration](https://github.com/zricethezav/gitleaks#configuration) (ex: `.gitleaks.toml`) |
|
||||||
| **LOG_FILE** | `super-linter.log` | The filename for outputting logs. Super-linter saves the log file to `${DEFAULT_WORKSPACE}/${LOG_FILE}`. |
|
| **GITLEAKS_LOG_LEVEL** | Gitleaks default log level | Gitleaks log level. Defaults to the Gitleaks default log level. |
|
||||||
| **LOG_LEVEL** | `INFO` | How much output the script will generate to the console. One of `ERROR`, `WARN`, `NOTICE`, `INFO`, or `DEBUG`. |
|
| **IGNORE_GENERATED_FILES** | `false` | If set to `true`, super-linter will ignore all the files with `@generated` marker but without `@not-generated` marker. |
|
||||||
| **MARKDOWN_CONFIG_FILE** | `.markdown-lint.yml` | Filename for [Markdownlint configuration](https://github.com/DavidAnson/markdownlint#optionsconfig) (ex: `.markdown-lint.yml`, `.markdownlint.json`, `.markdownlint.yaml`) |
|
| **IGNORE_GITIGNORED_FILES** | `false` | If set to `true`, super-linter will ignore all the files that are ignored by Git. |
|
||||||
| **MARKDOWN_CUSTOM_RULE_GLOBS** | not set | Comma-separated list of [file globs](https://github.com/igorshubovych/markdownlint-cli#globbing) matching [custom Markdownlint rule files](https://github.com/DavidAnson/markdownlint/blob/main/doc/CustomRules.md). |
|
| **JAVA_FILE_NAME** | `sun_checks.xml` | Filename for [Checkstyle configuration](https://checkstyle.sourceforge.io/config.html). Checkstyle embeds several configuration files, such as `sun_checks.xml`, `google_checks.xml` that you can use without providing your own configuration file. |
|
||||||
| **MULTI_STATUS** | `true` | A status API is made for each language that is linted to make visual parsing easier. |
|
| **JAVASCRIPT_ES_CONFIG_FILE** | `.eslintrc.yml` | Filename for [ESLint configuration](https://eslint.org/docs/user-guide/configuring#configuration-file-formats) (ex: `.eslintrc.yml`, `.eslintrc.json`) |
|
||||||
| **NATURAL_LANGUAGE_CONFIG_FILE** | `.textlintrc` | Filename for [textlint configuration](https://textlint.github.io/docs/getting-started.html#configuration) (ex: `.textlintrc`) |
|
| **JSCPD_CONFIG_FILE** | `.jscpd.json` | Filename for JSCPD configuration |
|
||||||
| **PERL_PERLCRITIC_OPTIONS** | `null` | Additional arguments to pass to the command-line when running **perlcritic** (Example: --theme community) |
|
| **KUBERNETES_KUBECONFORM_OPTIONS** | `null` | Additional arguments to pass to the command-line when running **Kubernetes Kubeconform** (Example: --ignore-missing-schemas) |
|
||||||
| **POWERSHELL_CONFIG_FILE** | `.powershell-psscriptanalyzer.psd1` | Filename for [PSScriptAnalyzer configuration](https://learn.microsoft.com/en-gb/powershell/utility-modules/psscriptanalyzer/using-scriptanalyzer) |
|
| **LINTER_RULES_PATH** | `.github/linters` | Directory for all linter configuration rules. |
|
||||||
| **PHP_CONFIG_FILE** | `php.ini` | Filename for [PHP Configuration](https://www.php.net/manual/en/configuration.file.php) (ex: `php.ini`) |
|
| **LOG_FILE** | `super-linter.log` | The filename for outputting logs. Super-linter saves the log file to `${DEFAULT_WORKSPACE}/${LOG_FILE}`. |
|
||||||
| **PHP_PHPCS_FILE_NAME** | `phpcs.xml` | Filename for [PHP CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer) (ex: `.phpcs.xml`, `.phpcs.xml.dist`) |
|
| **LOG_LEVEL** | `INFO` | How much output the script will generate to the console. One of `ERROR`, `WARN`, `NOTICE`, `INFO`, or `DEBUG`. |
|
||||||
| **PHP_PHPSTAN_CONFIG_FILE** | `phpstan.neon` | Filename for [PHPStan Configuration](https://phpstan.org/config-reference) (ex: `phpstan.neon`) |
|
| **MARKDOWN_CONFIG_FILE** | `.markdown-lint.yml` | Filename for [Markdownlint configuration](https://github.com/DavidAnson/markdownlint#optionsconfig) (ex: `.markdown-lint.yml`, `.markdownlint.json`, `.markdownlint.yaml`) |
|
||||||
| **PROTOBUF_CONFIG_FILE** | `.protolintrc.yml` | Filename for [protolint configuration](https://github.com/yoheimuta/protolint/blob/master/_example/config/.protolint.yaml) (ex: `.protolintrc.yml`) |
|
| **MARKDOWN_CUSTOM_RULE_GLOBS** | not set | Comma-separated list of [file globs](https://github.com/igorshubovych/markdownlint-cli#globbing) matching [custom Markdownlint rule files](https://github.com/DavidAnson/markdownlint/blob/main/doc/CustomRules.md). |
|
||||||
| **PYTHON_BLACK_CONFIG_FILE** | `.python-black` | Filename for [black configuration](https://github.com/psf/black/blob/main/docs/guides/using_black_with_other_tools.md#black-compatible-configurations) (ex: `.isort.cfg`, `pyproject.toml`) |
|
| **MULTI_STATUS** | `true` | A status API is made for each language that is linted to make visual parsing easier. |
|
||||||
| **PYTHON_FLAKE8_CONFIG_FILE** | `.flake8` | Filename for [flake8 configuration](https://flake8.pycqa.org/en/latest/user/configuration.html) (ex: `.flake8`, `tox.ini`) |
|
| **NATURAL_LANGUAGE_CONFIG_FILE** | `.textlintrc` | Filename for [textlint configuration](https://textlint.github.io/docs/getting-started.html#configuration) (ex: `.textlintrc`) |
|
||||||
| **PYTHON_ISORT_CONFIG_FILE** | `.isort.cfg` | Filename for [isort configuration](https://pycqa.github.io/isort/docs/configuration/config_files.html) (ex: `.isort.cfg`, `pyproject.toml`) |
|
| **PERL_PERLCRITIC_OPTIONS** | `null` | Additional arguments to pass to the command-line when running **perlcritic** (Example: --theme community) |
|
||||||
| **PYTHON_MYPY_CONFIG_FILE** | `.mypy.ini` | Filename for [mypy configuration](https://mypy.readthedocs.io/en/stable/config_file.html) (ex: `.mypy.ini`, `setup.config`) |
|
| **POWERSHELL_CONFIG_FILE** | `.powershell-psscriptanalyzer.psd1` | Filename for [PSScriptAnalyzer configuration](https://learn.microsoft.com/en-gb/powershell/utility-modules/psscriptanalyzer/using-scriptanalyzer) |
|
||||||
| **PYTHON_PYLINT_CONFIG_FILE** | `.python-lint` | Filename for [pylint configuration](https://pylint.pycqa.org/en/latest/user_guide/run.html?highlight=rcfile#command-line-options) (ex: `.python-lint`, `.pylintrc`) |
|
| **PHP_CONFIG_FILE** | `php.ini` | Filename for [PHP Configuration](https://www.php.net/manual/en/configuration.file.php) (ex: `php.ini`) |
|
||||||
| **PYTHON_RUFF_CONFIG_FILE** | `.ruff.toml` | Filename for [ruff configuration](https://docs.astral.sh/ruff/configuration/) |
|
| **PHP_PHPCS_FILE_NAME** | `phpcs.xml` | Filename for [PHP CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer) (ex: `.phpcs.xml`, `.phpcs.xml.dist`) |
|
||||||
| **RENOVATE_SHAREABLE_CONFIG_PRESET_FILE_NAMES** | not set | Comma-separated filenames for [renovate shareable config preset](https://docs.renovatebot.com/config-presets/) (ex: `default.json`) |
|
| **PHP_PHPSTAN_CONFIG_FILE** | `phpstan.neon` | Filename for [PHPStan Configuration](https://phpstan.org/config-reference) (ex: `phpstan.neon`) |
|
||||||
| **RUBY_CONFIG_FILE** | `.ruby-lint.yml` | Filename for [rubocop configuration](https://docs.rubocop.org/rubocop/configuration.html) (ex: `.ruby-lint.yml`, `.rubocop.yml`) |
|
| **PROTOBUF_CONFIG_FILE** | `.protolintrc.yml` | Filename for [protolint configuration](https://github.com/yoheimuta/protolint/blob/master/_example/config/.protolint.yaml) (ex: `.protolintrc.yml`) |
|
||||||
| **SAVE_SUPER_LINTER_OUTPUT** | `false` | If set to `true`, Super-linter will save its output in the workspace. For more information, see [Super-linter outputs](#super-linter-outputs). |
|
| **PYTHON_BLACK_CONFIG_FILE** | `.python-black` | Filename for [black configuration](https://github.com/psf/black/blob/main/docs/guides/using_black_with_other_tools.md#black-compatible-configurations) (ex: `.isort.cfg`, `pyproject.toml`) |
|
||||||
| **SAVE_SUPER_LINTER_SUMMARY** | `false` | If set to `true`, Super-linter will save a summary. For more information, see [Summary outputs](#summary-outputs). |
|
| **PYTHON_FLAKE8_CONFIG_FILE** | `.flake8` | Filename for [flake8 configuration](https://flake8.pycqa.org/en/latest/user/configuration.html) (ex: `.flake8`, `tox.ini`) |
|
||||||
| **SCALAFMT_CONFIG_FILE** | `.scalafmt.conf` | Filename for [scalafmt configuration](https://scalameta.org/scalafmt/docs/configuration.html) (ex: `.scalafmt.conf`) |
|
| **PYTHON_ISORT_CONFIG_FILE** | `.isort.cfg` | Filename for [isort configuration](https://pycqa.github.io/isort/docs/configuration/config_files.html) (ex: `.isort.cfg`, `pyproject.toml`) |
|
||||||
| **SNAKEMAKE_SNAKEFMT_CONFIG_FILE** | `.snakefmt.toml` | Filename for [Snakemake configuration](https://github.com/snakemake/snakefmt#configuration) (ex: `pyproject.toml`, `.snakefmt.toml`) |
|
| **PYTHON_MYPY_CONFIG_FILE** | `.mypy.ini` | Filename for [mypy configuration](https://mypy.readthedocs.io/en/stable/config_file.html) (ex: `.mypy.ini`, `setup.config`) |
|
||||||
| **SSL_CERT_SECRET** | `none` | SSL cert to add to the **Super-Linter** trust store. This is needed for users on `self-hosted` runners or need to inject the cert for security standards (ex. ${{ secrets.SSL_CERT }}) |
|
| **PYTHON_PYLINT_CONFIG_FILE** | `.python-lint` | Filename for [pylint configuration](https://pylint.pycqa.org/en/latest/user_guide/run.html?highlight=rcfile#command-line-options) (ex: `.python-lint`, `.pylintrc`) |
|
||||||
| **SSH_KEY** | `none` | SSH key that has access to your private repositories |
|
| **PYTHON_RUFF_CONFIG_FILE** | `.ruff.toml` | Filename for [ruff configuration](https://docs.astral.sh/ruff/configuration/) |
|
||||||
| **SSH_SETUP_GITHUB** | `false` | If set to `true`, adds the `github.com` SSH key to `known_hosts`. This is ignored if `SSH_KEY` is provided - i.e. the `github.com` SSH key is always added if `SSH_KEY` is provided |
|
| **RENOVATE_SHAREABLE_CONFIG_PRESET_FILE_NAMES** | not set | Comma-separated filenames for [renovate shareable config preset](https://docs.renovatebot.com/config-presets/) (ex: `default.json`) |
|
||||||
| **SSH_INSECURE_NO_VERIFY_GITHUB_KEY** | `false` | **INSECURE -** If set to `true`, does not verify the fingerprint of the github.com SSH key before adding this. This is not recommended! |
|
| **RUBY_CONFIG_FILE** | `.ruby-lint.yml` | Filename for [rubocop configuration](https://docs.rubocop.org/rubocop/configuration.html) (ex: `.ruby-lint.yml`, `.rubocop.yml`) |
|
||||||
| **SQLFLUFF_CONFIG_FILE** | `/.sqlfluff` | Filename for [SQLFLUFF configuration](https://docs.sqlfluff.com/en/stable/configuration.html) (ex: `/.sqlfluff`, `pyproject.toml`) |
|
| **SAVE_SUPER_LINTER_OUTPUT** | `false` | If set to `true`, Super-linter will save its output in the workspace. For more information, see [Super-linter outputs](#super-linter-outputs). |
|
||||||
| **SUPER_LINTER_OUTPUT_DIRECTORY_NAME** | `super-linter-output` | Name of the directory where super-linter saves its output. |
|
| **SAVE_SUPER_LINTER_SUMMARY** | `false` | If set to `true`, Super-linter will save a summary. For more information, see [Summary outputs](#summary-outputs). |
|
||||||
| **SUPER_LINTER_SUMMARY_FILE_NAME** | `super-linter-summary.md` | Name of the file where to save the summary output. For more information, see [Summary outputs](#summary-outputs). |
|
| **SCALAFMT_CONFIG_FILE** | `.scalafmt.conf` | Filename for [scalafmt configuration](https://scalameta.org/scalafmt/docs/configuration.html) (ex: `.scalafmt.conf`) |
|
||||||
| **SUPPRESS_FILE_TYPE_WARN** | `false` | If set to `true`, will hide warning messages about files without their proper extensions. Default is `false` |
|
| **SNAKEMAKE_SNAKEFMT_CONFIG_FILE** | `.snakefmt.toml` | Filename for [Snakemake configuration](https://github.com/snakemake/snakefmt#configuration) (ex: `pyproject.toml`, `.snakefmt.toml`) |
|
||||||
| **SUPPRESS_POSSUM** | `false` | If set to `true`, will hide the ASCII possum at top of log output. Default is `false` |
|
| **SSL_CERT_SECRET** | `none` | SSL cert to add to the **Super-Linter** trust store. This is needed for users on `self-hosted` runners or need to inject the cert for security standards (ex. ${{ secrets.SSL_CERT }}) |
|
||||||
| **TERRAFORM_TERRASCAN_CONFIG_FILE** | `terrascan.toml` | Filename for [terrascan configuration](https://github.com/accurics/terrascan) (ex: `terrascan.toml`) |
|
| **SSH_KEY** | `none` | SSH key that has access to your private repositories |
|
||||||
| **TERRAFORM_TFLINT_CONFIG_FILE** | `.tflint.hcl` | Filename for [tfLint configuration](https://github.com/terraform-linters/tflint) (ex: `.tflint.hcl`) |
|
| **SSH_SETUP_GITHUB** | `false` | If set to `true`, adds the `github.com` SSH key to `known_hosts`. This is ignored if `SSH_KEY` is provided - i.e. the `github.com` SSH key is always added if `SSH_KEY` is provided |
|
||||||
| **TYPESCRIPT_ES_CONFIG_FILE** | `.eslintrc.yml` | Filename for [ESLint configuration](https://eslint.org/docs/user-guide/configuring#configuration-file-formats) (ex: `.eslintrc.yml`, `.eslintrc.json`) |
|
| **SSH_INSECURE_NO_VERIFY_GITHUB_KEY** | `false` | **INSECURE -** If set to `true`, does not verify the fingerprint of the github.com SSH key before adding this. This is not recommended! |
|
||||||
| **TYPESCRIPT_STANDARD_TSCONFIG_FILE** | `${DEFAULT_WORKSPACE}/tsconfig.json` | Path to the [TypeScript project configuration](https://www.typescriptlang.org/docs/handbook/tsconfig-json.html) in [ts-standard](https://github.com/standard/ts-standard). The path is relative to `DEFAULT_WORKSPACE` |
|
| **SQLFLUFF_CONFIG_FILE** | `/.sqlfluff` | Filename for [SQLFLUFF configuration](https://docs.sqlfluff.com/en/stable/configuration.html) (ex: `/.sqlfluff`, `pyproject.toml`) |
|
||||||
| **USE_FIND_ALGORITHM** | `false` | By default, we use `git diff` to find all files in the workspace and what has been updated, this would enable the Linux `find` method instead to find all files to lint |
|
| **SUPER_LINTER_OUTPUT_DIRECTORY_NAME** | `super-linter-output` | Name of the directory where super-linter saves its output. |
|
||||||
| **VALIDATE_ALL_CODEBASE** | `true` | Will parse the entire repository and find all files to validate across all types. **NOTE:** When set to `false`, only **new** or **edited** files will be parsed for validation. |
|
| **SUPER_LINTER_SUMMARY_FILE_NAME** | `super-linter-summary.md` | Name of the file where to save the summary output. For more information, see [Summary outputs](#summary-outputs). |
|
||||||
| **VALIDATE_ANSIBLE** | `true` | Flag to enable or disable the linting process of the Ansible language. |
|
| **SUPPRESS_FILE_TYPE_WARN** | `false` | If set to `true`, will hide warning messages about files without their proper extensions. Default is `false` |
|
||||||
| **VALIDATE_ARM** | `true` | Flag to enable or disable the linting process of the ARM language. |
|
| **SUPPRESS_POSSUM** | `false` | If set to `true`, will hide the ASCII possum at top of log output. Default is `false` |
|
||||||
| **VALIDATE_BASH** | `true` | Flag to enable or disable the linting process of the Bash language. |
|
| **TERRAFORM_TERRASCAN_CONFIG_FILE** | `terrascan.toml` | Filename for [terrascan configuration](https://github.com/accurics/terrascan) (ex: `terrascan.toml`) |
|
||||||
| **VALIDATE_BASH_EXEC** | `true` | Flag to enable or disable the linting process of the Bash language to validate if file is stored as executable. |
|
| **TERRAFORM_TFLINT_CONFIG_FILE** | `.tflint.hcl` | Filename for [tfLint configuration](https://github.com/terraform-linters/tflint) (ex: `.tflint.hcl`) |
|
||||||
| **VALIDATE_CPP** | `true` | Flag to enable or disable the linting process of the C++ language. |
|
| **TYPESCRIPT_ES_CONFIG_FILE** | `.eslintrc.yml` | Filename for [ESLint configuration](https://eslint.org/docs/user-guide/configuring#configuration-file-formats) (ex: `.eslintrc.yml`, `.eslintrc.json`) |
|
||||||
| **VALIDATE_CHECKOV** | `true` | Flag to enable or disable the linting process with Checkov |
|
| **TYPESCRIPT_STANDARD_TSCONFIG_FILE** | `${DEFAULT_WORKSPACE}/tsconfig.json` | Path to the [TypeScript project configuration](https://www.typescriptlang.org/docs/handbook/tsconfig-json.html) in [ts-standard](https://github.com/standard/ts-standard). The path is relative to `DEFAULT_WORKSPACE` |
|
||||||
| **VALIDATE_CLANG_FORMAT** | `true` | Flag to enable or disable the linting process of the C++/C language with clang-format. |
|
| **USE_FIND_ALGORITHM** | `false` | By default, we use `git diff` to find all files in the workspace and what has been updated, this would enable the Linux `find` method instead to find all files to lint |
|
||||||
| **VALIDATE_CLOJURE** | `true` | Flag to enable or disable the linting process of the Clojure language. |
|
| **VALIDATE_ALL_CODEBASE** | `true` | Will parse the entire repository and find all files to validate across all types. **NOTE:** When set to `false`, only **new** or **edited** files will be parsed for validation. |
|
||||||
| **VALIDATE_CLOUDFORMATION** | `true` | Flag to enable or disable the linting process of the AWS Cloud Formation language. |
|
| **VALIDATE_ANSIBLE** | `true` | Flag to enable or disable the linting process of the Ansible language. |
|
||||||
| **VALIDATE_COFFEESCRIPT** | `true` | Flag to enable or disable the linting process of the CoffeeScript language. |
|
| **VALIDATE_ARM** | `true` | Flag to enable or disable the linting process of the ARM language. |
|
||||||
| **VALIDATE_CSHARP** | `true` | Flag to enable or disable the linting process of the C# language. |
|
| **VALIDATE_BASH** | `true` | Flag to enable or disable the linting process of the Bash language. |
|
||||||
| **VALIDATE_CSS** | `true` | Flag to enable or disable the linting process of the CSS language. |
|
| **VALIDATE_BASH_EXEC** | `true` | Flag to enable or disable the linting process of the Bash language to validate if file is stored as executable. |
|
||||||
| **VALIDATE_DART** | `true` | Flag to enable or disable the linting process of the Dart language. |
|
| **VALIDATE_CPP** | `true` | Flag to enable or disable the linting process of the C++ language. |
|
||||||
| **VALIDATE_DOCKERFILE_HADOLINT** | `true` | Flag to enable or disable the linting process of the Docker language. |
|
| **VALIDATE_CHECKOV** | `true` | Flag to enable or disable the linting process with Checkov |
|
||||||
| **VALIDATE_EDITORCONFIG** | `true` | Flag to enable or disable the linting process with the EditorConfig. |
|
| **VALIDATE_CLANG_FORMAT** | `true` | Flag to enable or disable the linting process of the C++/C language with clang-format. |
|
||||||
| **VALIDATE_ENV** | `true` | Flag to enable or disable the linting process of the ENV language. |
|
| **VALIDATE_CLOJURE** | `true` | Flag to enable or disable the linting process of the Clojure language. |
|
||||||
| **VALIDATE_GHERKIN** | `true` | Flag to enable or disable the linting process of the Gherkin language. |
|
| **VALIDATE_CLOUDFORMATION** | `true` | Flag to enable or disable the linting process of the AWS Cloud Formation language. |
|
||||||
| **VALIDATE_GITHUB_ACTIONS** | `true` | Flag to enable or disable the linting process of the GitHub Actions. |
|
| **VALIDATE_COFFEESCRIPT** | `true` | Flag to enable or disable the linting process of the CoffeeScript language. |
|
||||||
| **VALIDATE_GITLEAKS** | `true` | Flag to enable or disable the linting process of the secrets. |
|
| **VALIDATE_CSHARP** | `true` | Flag to enable or disable the linting process of the C# language. |
|
||||||
| **VALIDATE_GO** | `true` | Flag to enable or disable the linting process of the individual Golang files. Set this to `false` if you want to lint Go modules. See the `VALIDATE_GO_MODULES` variable. |
|
| **VALIDATE_CSS** | `true` | Flag to enable or disable the linting process of the CSS, Sass, and SCSS files. |
|
||||||
| **VALIDATE_GO_MODULES** | `true` | Flag to enable or disable the linting process of Go modules. Super-linter considers a directory to be a Go module if it contains a file named `go.mod`. |
|
| **VALIDATE_CSS_PRETTIER** | `true` | Flag to enable or disable checking the formatting of CSS, Sass, and SCSS files with Prettier. |
|
||||||
| **VALIDATE_GO_RELEASER** | `true` | Flag to enable or disable the linting process of the GoReleaser config file. |
|
| **VALIDATE_DART** | `true` | Flag to enable or disable the linting process of the Dart language. |
|
||||||
| **VALIDATE_GOOGLE_JAVA_FORMAT** | `true` | Flag to enable or disable the linting process of the Java language. (Utilizing: google-java-format) |
|
| **VALIDATE_DOCKERFILE_HADOLINT** | `true` | Flag to enable or disable the linting process of the Docker language. |
|
||||||
| **VALIDATE_GROOVY** | `true` | Flag to enable or disable the linting process of the language. |
|
| **VALIDATE_EDITORCONFIG** | `true` | Flag to enable or disable the linting process with the EditorConfig. |
|
||||||
| **VALIDATE_HTML** | `true` | Flag to enable or disable the linting process of the HTML language. |
|
| **VALIDATE_ENV** | `true` | Flag to enable or disable the linting process of the ENV language. |
|
||||||
| **VALIDATE_JAVA** | `true` | Flag to enable or disable the linting process of the Java language. (Utilizing: checkstyle) |
|
| **VALIDATE_GHERKIN** | `true` | Flag to enable or disable the linting process of the Gherkin language. |
|
||||||
| **VALIDATE_JAVASCRIPT_ES** | `true` | Flag to enable or disable the linting process of the JavaScript language. (Utilizing: ESLint) |
|
| **VALIDATE_GITHUB_ACTIONS** | `true` | Flag to enable or disable the linting process of the GitHub Actions. |
|
||||||
| **VALIDATE_JAVASCRIPT_PRETTIER** | `true` | Flag to enable or disable the linting process of the JavaScript language. (Utilizing: prettier) |
|
| **VALIDATE_GITLEAKS** | `true` | Flag to enable or disable the linting process of the secrets. |
|
||||||
| **VALIDATE_JAVASCRIPT_STANDARD** | `true` | Flag to enable or disable the linting process of the JavaScript language. (Utilizing: standard) |
|
| **VALIDATE_GO** | `true` | Flag to enable or disable the linting process of the individual Golang files. Set this to `false` if you want to lint Go modules. See the `VALIDATE_GO_MODULES` variable. |
|
||||||
| **VALIDATE_JSCPD** | `true` | Flag to enable or disable JSCPD. |
|
| **VALIDATE_GO_MODULES** | `true` | Flag to enable or disable the linting process of Go modules. Super-linter considers a directory to be a Go module if it contains a file named `go.mod`. |
|
||||||
| **VALIDATE_JSON** | `true` | Flag to enable or disable the linting process of the JSON language. |
|
| **VALIDATE_GO_RELEASER** | `true` | Flag to enable or disable the linting process of the GoReleaser config file. |
|
||||||
| **VALIDATE_JSONC** | `true` | Flag to enable or disable the linting process of the JSONC and JSON5 languages. |
|
| **VALIDATE_GRAPHQL_PRETTIER** | `true` | Flag to enable or disable checking the formatting of GraphQL files with Prettier. |
|
||||||
| **VALIDATE_JSX** | `true` | Flag to enable or disable the linting process for jsx files (Utilizing: ESLint) |
|
| **VALIDATE_GOOGLE_JAVA_FORMAT** | `true` | Flag to enable or disable the linting process of the Java language. (Utilizing: google-java-format) |
|
||||||
| **VALIDATE_KOTLIN** | `true` | Flag to enable or disable the linting process of the Kotlin language. |
|
| **VALIDATE_GROOVY** | `true` | Flag to enable or disable the linting process of the language. |
|
||||||
| **VALIDATE_KUBERNETES_KUBECONFORM** | `true` | Flag to enable or disable the linting process of Kubernetes descriptors with Kubeconform |
|
| **VALIDATE_HTML** | `true` | Flag to enable or disable the linting process of the HTML language. |
|
||||||
| **VALIDATE_LATEX** | `true` | Flag to enable or disable the linting process of the LaTeX language. |
|
| **VALIDATE_HTML_PRETTIER** | `true` | Flag to enable or disable checking the formatting of HTML files with Prettier. |
|
||||||
| **VALIDATE_LUA** | `true` | Flag to enable or disable the linting process of the language. |
|
| **VALIDATE_JAVA** | `true` | Flag to enable or disable the linting process of the Java language. (Utilizing: checkstyle) |
|
||||||
| **VALIDATE_MARKDOWN** | `true` | Flag to enable or disable the linting process of the Markdown language. |
|
| **VALIDATE_JAVASCRIPT_ES** | `true` | Flag to enable or disable the linting process of the JavaScript language. (Utilizing: ESLint) |
|
||||||
| **VALIDATE_NATURAL_LANGUAGE** | `true` | Flag to enable or disable the linting process of the natural language. |
|
| **VALIDATE_JAVASCRIPT_PRETTIER** | `true` | Flag to enable or disable checking the formatting of JavaScript files with Prettier. |
|
||||||
| **VALIDATE_OPENAPI** | `true` | Flag to enable or disable the linting process of the OpenAPI language. |
|
| **VALIDATE_JAVASCRIPT_STANDARD** | `true` | Flag to enable or disable the linting process of the JavaScript language. (Utilizing: standard) |
|
||||||
| **VALIDATE_PERL** | `true` | Flag to enable or disable the linting process of the Perl language. |
|
| **VALIDATE_JSCPD** | `true` | Flag to enable or disable JSCPD. |
|
||||||
| **VALIDATE_PHP** | `true` | Flag to enable or disable the linting process of the PHP language. (Utilizing: PHP built-in linter) (keep for backward compatibility) |
|
| **VALIDATE_JSON** | `true` | Flag to enable or disable the linting process of the JSON language. |
|
||||||
| **VALIDATE_PHP_BUILTIN** | `true` | Flag to enable or disable the linting process of the PHP language. (Utilizing: PHP built-in linter) |
|
| **VALIDATE_JSON_PRETTIER** | `true` | Flag to enable or disable checking the formatting of JSON files with Prettier. |
|
||||||
| **VALIDATE_PHP_PHPCS** | `true` | Flag to enable or disable the linting process of the PHP language. (Utilizing: PHP CodeSniffer) |
|
| **VALIDATE_JSONC** | `true` | Flag to enable or disable the linting process of the JSONC and JSON5 languages. |
|
||||||
| **VALIDATE_PHP_PHPSTAN** | `true` | Flag to enable or disable the linting process of the PHP language. (Utilizing: PHPStan) |
|
| **VALIDATE_JSX** | `true` | Flag to enable or disable the linting process for jsx files (Utilizing: ESLint) |
|
||||||
| **VALIDATE_PHP_PSALM** | `true` | Flag to enable or disable the linting process of the PHP language. (Utilizing: PSalm) |
|
| **VALIDATE_JSX_PRETTIER** | `true` | Flag to enable or disable checking the formatting of JSX files with Prettier. |
|
||||||
| **VALIDATE_POWERSHELL** | `true` | Flag to enable or disable the linting process of the Powershell language. |
|
| **VALIDATE_KOTLIN** | `true` | Flag to enable or disable the linting process of the Kotlin language. |
|
||||||
| **VALIDATE_PROTOBUF** | `true` | Flag to enable or disable the linting process of the Protobuf language. |
|
| **VALIDATE_KUBERNETES_KUBECONFORM** | `true` | Flag to enable or disable the linting process of Kubernetes descriptors with Kubeconform |
|
||||||
| **VALIDATE_PYTHON** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: pylint) (keep for backward compatibility) |
|
| **VALIDATE_LATEX** | `true` | Flag to enable or disable the linting process of the LaTeX language. |
|
||||||
| **VALIDATE_PYTHON_BLACK** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: black) |
|
| **VALIDATE_LUA** | `true` | Flag to enable or disable the linting process of the language. |
|
||||||
| **VALIDATE_PYTHON_FLAKE8** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: flake8) |
|
| **VALIDATE_MARKDOWN** | `true` | Flag to enable or disable the linting process of the Markdown language. |
|
||||||
| **VALIDATE_PYTHON_ISORT** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: isort) |
|
| **VALIDATE_MARKDOWN_PRETTIER** | `true` | Flag to enable or disable checking the formatting of Markdown files with Prettier. |
|
||||||
| **VALIDATE_PYTHON_MYPY** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: mypy) |
|
| **VALIDATE_NATURAL_LANGUAGE** | `true` | Flag to enable or disable the linting process of the natural language. |
|
||||||
| **VALIDATE_PYTHON_PYLINT** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: pylint) |
|
| **VALIDATE_OPENAPI** | `true` | Flag to enable or disable the linting process of the OpenAPI language. |
|
||||||
| **VALIDATE_PYTHON_RUFF** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: ruff) |
|
| **VALIDATE_PERL** | `true` | Flag to enable or disable the linting process of the Perl language. |
|
||||||
| **VALIDATE_R** | `true` | Flag to enable or disable the linting process of the R language. |
|
| **VALIDATE_PHP** | `true` | Flag to enable or disable the linting process of the PHP language. (Utilizing: PHP built-in linter) (keep for backward compatibility) |
|
||||||
| **VALIDATE_RAKU** | `true` | Flag to enable or disable the linting process of the Raku language. |
|
| **VALIDATE_PHP_BUILTIN** | `true` | Flag to enable or disable the linting process of the PHP language. (Utilizing: PHP built-in linter) |
|
||||||
| **VALIDATE_RENOVATE** | `true` | Flag to enable or disable the linting process of the Renovate configuration files. |
|
| **VALIDATE_PHP_PHPCS** | `true` | Flag to enable or disable the linting process of the PHP language. (Utilizing: PHP CodeSniffer) |
|
||||||
| **VALIDATE_RUBY** | `true` | Flag to enable or disable the linting process of the Ruby language. |
|
| **VALIDATE_PHP_PHPSTAN** | `true` | Flag to enable or disable the linting process of the PHP language. (Utilizing: PHPStan) |
|
||||||
| **VALIDATE_RUST_2015** | `true` | Flag to enable or disable the linting process of the Rust language. (edition: 2015) |
|
| **VALIDATE_PHP_PSALM** | `true` | Flag to enable or disable the linting process of the PHP language. (Utilizing: PSalm) |
|
||||||
| **VALIDATE_RUST_2018** | `true` | Flag to enable or disable the linting process of Rust language. (edition: 2018) |
|
| **VALIDATE_POWERSHELL** | `true` | Flag to enable or disable the linting process of the Powershell language. |
|
||||||
| **VALIDATE_RUST_2021** | `true` | Flag to enable or disable the linting process of Rust language. (edition: 2021) |
|
| **VALIDATE_PROTOBUF** | `true` | Flag to enable or disable the linting process of the Protobuf language. |
|
||||||
| **VALIDATE_RUST_CLIPPY** | `true` | Flag to enable or disable the clippy linting process of Rust language. |
|
| **VALIDATE_PYTHON** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: pylint) (keep for backward compatibility) |
|
||||||
| **VALIDATE_SCALAFMT** | `true` | Flag to enable or disable the linting process of Scala language. (Utilizing: scalafmt --test) |
|
| **VALIDATE_PYTHON_BLACK** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: black) |
|
||||||
| **VALIDATE_SHELL_SHFMT** | `true` | Flag to enable or disable the linting process of Shell scripts. (Utilizing: shfmt) |
|
| **VALIDATE_PYTHON_FLAKE8** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: flake8) |
|
||||||
| **VALIDATE_SNAKEMAKE_LINT** | `true` | Flag to enable or disable the linting process of Snakefiles. (Utilizing: snakemake --lint) |
|
| **VALIDATE_PYTHON_ISORT** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: isort) |
|
||||||
| **VALIDATE_SNAKEMAKE_SNAKEFMT** | `true` | Flag to enable or disable the linting process of Snakefiles. (Utilizing: snakefmt) |
|
| **VALIDATE_PYTHON_MYPY** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: mypy) |
|
||||||
| **VALIDATE_STATES** | `true` | Flag to enable or disable the linting process for AWS States Language. |
|
| **VALIDATE_PYTHON_PYLINT** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: pylint) |
|
||||||
| **VALIDATE_SQLFLUFF** | `true` | Flag to enable or disable the linting process of the SQL language. (Utilizing: sqlfuff) |
|
| **VALIDATE_PYTHON_RUFF** | `true` | Flag to enable or disable the linting process of the Python language. (Utilizing: ruff) |
|
||||||
| **VALIDATE_TEKTON** | `true` | Flag to enable or disable the linting process of the Tekton language. |
|
| **VALIDATE_R** | `true` | Flag to enable or disable the linting process of the R language. |
|
||||||
| **VALIDATE_TERRAFORM_FMT** | `true` | Flag to enable or disable the formatting process of the Terraform files. |
|
| **VALIDATE_RAKU** | `true` | Flag to enable or disable the linting process of the Raku language. |
|
||||||
| **VALIDATE_TERRAFORM_TERRASCAN** | `true` | Flag to enable or disable the linting process of the Terraform language for security related issues. |
|
| **VALIDATE_RENOVATE** | `true` | Flag to enable or disable the linting process of the Renovate configuration files. |
|
||||||
| **VALIDATE_TERRAFORM_TFLINT** | `true` | Flag to enable or disable the linting process of the Terraform language. (Utilizing tflint) |
|
| **VALIDATE_RUBY** | `true` | Flag to enable or disable the linting process of the Ruby language. |
|
||||||
| **VALIDATE_TERRAGRUNT** | `true` | Flag to enable or disable the linting process for Terragrunt files. |
|
| **VALIDATE_RUST_2015** | `true` | Flag to enable or disable the linting process of the Rust language. (edition: 2015) |
|
||||||
| **VALIDATE_TSX** | `true` | Flag to enable or disable the linting process for tsx files (Utilizing: ESLint) |
|
| **VALIDATE_RUST_2018** | `true` | Flag to enable or disable the linting process of Rust language. (edition: 2018) |
|
||||||
| **VALIDATE_TYPESCRIPT_ES** | `true` | Flag to enable or disable the linting process of the TypeScript language. (Utilizing: ESLint) |
|
| **VALIDATE_RUST_2021** | `true` | Flag to enable or disable the linting process of Rust language. (edition: 2021) |
|
||||||
| **VALIDATE_TYPESCRIPT_PRETTIER** | `true` | Flag to enable or disable the linting process of the TypeScript language. (Utilizing: prettier) |
|
| **VALIDATE_RUST_CLIPPY** | `true` | Flag to enable or disable the clippy linting process of Rust language. |
|
||||||
| **VALIDATE_TYPESCRIPT_STANDARD** | `true` | Flag to enable or disable the linting process of the TypeScript language. (Utilizing: ts-standard) |
|
| **VALIDATE_SCALAFMT** | `true` | Flag to enable or disable the linting process of Scala language. (Utilizing: scalafmt --test) |
|
||||||
| **VALIDATE_XML** | `true` | Flag to enable or disable the linting process of the XML language. |
|
| **VALIDATE_SHELL_SHFMT** | `true` | Flag to enable or disable the linting process of Shell scripts. (Utilizing: shfmt) |
|
||||||
| **VALIDATE_YAML** | `true` | Flag to enable or disable the linting process of the YAML language. |
|
| **VALIDATE_SNAKEMAKE_LINT** | `true` | Flag to enable or disable the linting process of Snakefiles. (Utilizing: snakemake --lint) |
|
||||||
| **YAML_CONFIG_FILE** | `.yaml-lint.yml` | Filename for [Yamllint configuration](https://yamllint.readthedocs.io/en/stable/configuration.html) (ex: `.yaml-lint.yml`, `.yamllint.yml`) |
|
| **VALIDATE_SNAKEMAKE_SNAKEFMT** | `true` | Flag to enable or disable the linting process of Snakefiles. (Utilizing: snakefmt) |
|
||||||
| **YAML_ERROR_ON_WARNING** | `false` | Flag to enable or disable the error on warning for Yamllint. |
|
| **VALIDATE_STATES** | `true` | Flag to enable or disable the linting process for AWS States Language. |
|
||||||
|
| **VALIDATE_SQLFLUFF** | `true` | Flag to enable or disable the linting process of the SQL language. (Utilizing: sqlfuff) |
|
||||||
|
| **VALIDATE_TEKTON** | `true` | Flag to enable or disable the linting process of the Tekton language. |
|
||||||
|
| **VALIDATE_TERRAFORM_FMT** | `true` | Flag to enable or disable checking the formatting process of the Terraform files. |
|
||||||
|
| **VALIDATE_TERRAFORM_TERRASCAN** | `true` | Flag to enable or disable the linting process of the Terraform language for security related issues. |
|
||||||
|
| **VALIDATE_TERRAFORM_TFLINT** | `true` | Flag to enable or disable the linting process of the Terraform language. (Utilizing tflint) |
|
||||||
|
| **VALIDATE_TERRAGRUNT** | `true` | Flag to enable or disable the linting process for Terragrunt files. |
|
||||||
|
| **VALIDATE_TSX** | `true` | Flag to enable or disable the linting process for tsx files (Utilizing: ESLint) |
|
||||||
|
| **VALIDATE_TYPESCRIPT_ES** | `true` | Flag to enable or disable the linting process of the TypeScript language. (Utilizing: ESLint) |
|
||||||
|
| **VALIDATE_TYPESCRIPT_PRETTIER** | `true` | Flag to enable or disable checking the formatting of TypeScript files with Prettier. |
|
||||||
|
| **VALIDATE_TYPESCRIPT_STANDARD** | `true` | Flag to enable or disable the linting process of the TypeScript language. (Utilizing: ts-standard) |
|
||||||
|
| **VALIDATE_VUE_PRETTIER** | `true` | Flag to enable or disable checking the formatting of Vue files with Prettier. |
|
||||||
|
| **VALIDATE_XML** | `true` | Flag to enable or disable the linting process of the XML language. |
|
||||||
|
| **VALIDATE_YAML** | `true` | Flag to enable or disable the linting process of the YAML language. |
|
||||||
|
| **VALIDATE_YAML_PRETTIER** | `true` | Flag to enable or disable checking the formatting of YAML files with Prettier. |
|
||||||
|
| **YAML_CONFIG_FILE** | `.yaml-lint.yml` | Filename for [Yamllint configuration](https://yamllint.readthedocs.io/en/stable/configuration.html) (ex: `.yaml-lint.yml`, `.yamllint.yml`) |
|
||||||
|
| **YAML_ERROR_ON_WARNING** | `false` | Flag to enable or disable the error on warning for Yamllint. |
|
||||||
|
|
||||||
The `VALIDATE_[LANGUAGE]` variables work as follows:
|
The `VALIDATE_[LANGUAGE]` variables work as follows:
|
||||||
|
|
||||||
|
@ -416,9 +431,9 @@ Super-linter supports the following locations to deliver fixes:
|
||||||
files by yourself. For example:
|
files by yourself. For example:
|
||||||
|
|
||||||
- If you're running Super-linter in your CI environment, such as GitHub
|
- If you're running Super-linter in your CI environment, such as GitHub
|
||||||
Actions, you can commit and push changes as part of your workflow.
|
Actions, you can commit and push changes as part of your workflow.
|
||||||
- If you're running Super-linter locally, you can commit the changes as you
|
- If you're running Super-linter locally, you can commit the changes as you
|
||||||
would with any other change in your working directory.
|
would with any other change in your working directory.
|
||||||
|
|
||||||
### Fix mode for ansible-lint
|
### Fix mode for ansible-lint
|
||||||
|
|
||||||
|
@ -470,6 +485,7 @@ For example:
|
||||||
- Do not lint JavaScript files inside test folder: `FILTER_REGEX_EXCLUDE: .*test/.*.js`
|
- Do not lint JavaScript files inside test folder: `FILTER_REGEX_EXCLUDE: .*test/.*.js`
|
||||||
|
|
||||||
<!-- This `README.md` has both markers in the text, so it is considered not generated. -->
|
<!-- This `README.md` has both markers in the text, so it is considered not generated. -->
|
||||||
|
|
||||||
Additionally, if you set `IGNORE_GENERATED_FILES` to `true`, super-linter
|
Additionally, if you set `IGNORE_GENERATED_FILES` to `true`, super-linter
|
||||||
ignores any file with `@generated` string in it, unless the file
|
ignores any file with `@generated` string in it, unless the file
|
||||||
also has `@not-generated` marker. For example, super-linter considers a file
|
also has `@not-generated` marker. For example, super-linter considers a file
|
||||||
|
@ -523,8 +539,8 @@ For example, you can configure this private key as an
|
||||||
and access it with the `secrets` parameter from your GitHub Actions workflow:
|
and access it with the `secrets` parameter from your GitHub Actions workflow:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
env:
|
env:
|
||||||
SSH_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
|
SSH_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||||
```
|
```
|
||||||
|
|
||||||
If you need to inject a SSL certificate into the trust store, you can use the
|
If you need to inject a SSL certificate into the trust store, you can use the
|
||||||
|
@ -532,8 +548,8 @@ If you need to inject a SSL certificate into the trust store, you can use the
|
||||||
path to the files that contains a CA that can be used to validate the certificate:
|
path to the files that contains a CA that can be used to validate the certificate:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
env:
|
env:
|
||||||
SSL_CERT_SECRET: ${{ secrets.ROOT_CA }}
|
SSL_CERT_SECRET: ${{ secrets.ROOT_CA }}
|
||||||
```
|
```
|
||||||
|
|
||||||
## Outputs
|
## Outputs
|
||||||
|
|
|
@ -29,14 +29,14 @@ quiet: true
|
||||||
# Tags to skip #
|
# Tags to skip #
|
||||||
################
|
################
|
||||||
skip_list:
|
skip_list:
|
||||||
- 'empty-string-compare' # Allow compare to empty string
|
- "empty-string-compare" # Allow compare to empty string
|
||||||
- '204' # Allow string length greater than 160 chars
|
- "204" # Allow string length greater than 160 chars
|
||||||
- 'no-changed-when' # False positives for running command shells
|
- "no-changed-when" # False positives for running command shells
|
||||||
- 'command-instead-of-module' # Allow git commands for push, add, etc...
|
- "command-instead-of-module" # Allow git commands for push, add, etc...
|
||||||
- 'command-instead-of-shell' # Allow use of shell when you want
|
- "command-instead-of-shell" # Allow use of shell when you want
|
||||||
- 'no-handler' # Allow step to run like handler
|
- "no-handler" # Allow step to run like handler
|
||||||
- 'unnamed-task' # Allow tasks without a name
|
- "unnamed-task" # Allow tasks without a name
|
||||||
- 'yaml' # Disable YAML linting since it's done by yamllint
|
- "yaml" # Disable YAML linting since it's done by yamllint
|
||||||
|
|
||||||
##################
|
##################
|
||||||
# Tags to follow #
|
# Tags to follow #
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
---
|
---
|
||||||
# Don't report passed checks in output
|
# Don't report passed checks in output
|
||||||
quiet: true
|
quiet: true
|
||||||
...
|
|
||||||
|
|
|
@ -8,13 +8,12 @@ ignorePatterns:
|
||||||
- "!.*"
|
- "!.*"
|
||||||
- "**/node_modules/.*"
|
- "**/node_modules/.*"
|
||||||
|
|
||||||
parser: '@typescript-eslint/parser'
|
parser: "@typescript-eslint/parser"
|
||||||
|
|
||||||
plugins:
|
plugins:
|
||||||
- '@typescript-eslint'
|
- "@typescript-eslint"
|
||||||
|
|
||||||
overrides:
|
overrides:
|
||||||
|
|
||||||
# JSON files
|
# JSON files
|
||||||
- files:
|
- files:
|
||||||
- "*.json"
|
- "*.json"
|
||||||
|
|
|
@ -1,65 +1,65 @@
|
||||||
{
|
{
|
||||||
"extends": "recommended",
|
"extends": "recommended",
|
||||||
"rules": {
|
"rules": {
|
||||||
"CatchException": {
|
"CatchException": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"CatchThrowable": {
|
"CatchThrowable": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"ClassJavadoc": {
|
"ClassJavadoc": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"ClosureAsLastMethodParameter": {
|
"ClosureAsLastMethodParameter": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"DuplicateNumberLiteral": {
|
"DuplicateNumberLiteral": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"DuplicateStringLiteral": {
|
"DuplicateStringLiteral": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"FieldTypeRequired": {
|
"FieldTypeRequired": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"JavaIoPackageAccess": {
|
"JavaIoPackageAccess": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"MethodParameterTypeRequired": {
|
"MethodParameterTypeRequired": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"MethodSize": {
|
"MethodSize": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"NoDef": {
|
"NoDef": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"PrintStackTrace": {
|
"PrintStackTrace": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"PropertyName": {
|
"PropertyName": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"SpaceAroundMapEntryColon": {
|
"SpaceAroundMapEntryColon": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"SystemExit": {
|
"SystemExit": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"UnnecessaryGetter": {
|
"UnnecessaryGetter": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"UnnecessaryObjectReferences": {
|
"UnnecessaryObjectReferences": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"UnnecessarySetter": {
|
"UnnecessarySetter": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"VariableName": {
|
"VariableName": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
},
|
},
|
||||||
"VariableTypeRequired": {
|
"VariableTypeRequired": {
|
||||||
"enabled": false
|
"enabled": false
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,6 @@
|
||||||
{
|
{
|
||||||
"threshold": 0,
|
"threshold": 0,
|
||||||
"reporters": [
|
"reporters": ["consoleFull"],
|
||||||
"consoleFull"
|
"ignore": ["**/__snapshots__/**", "**/node_modules/**"],
|
||||||
],
|
|
||||||
"ignore": [
|
|
||||||
"**/__snapshots__/**",
|
|
||||||
"**/node_modules/**"
|
|
||||||
],
|
|
||||||
"absolute": true
|
"absolute": true
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,18 +18,18 @@
|
||||||
###############
|
###############
|
||||||
# Rules by id #
|
# Rules by id #
|
||||||
###############
|
###############
|
||||||
MD004: false # Unordered list style
|
MD004: false # Unordered list style
|
||||||
MD007:
|
MD007:
|
||||||
indent: 2 # Unordered list indentation
|
indent: 2 # Unordered list indentation
|
||||||
MD013:
|
MD013:
|
||||||
line_length: 400 # Line length 80 is far too short
|
line_length: 400 # Line length 80 is far too short
|
||||||
MD026:
|
MD026:
|
||||||
punctuation: ".,;:!。,;:" # List of not allowed
|
punctuation: ".,;:!。,;:" # List of not allowed
|
||||||
MD029: false # Ordered list item prefix
|
MD029: false # Ordered list item prefix
|
||||||
MD033: false # Allow inline HTML
|
MD033: false # Allow inline HTML
|
||||||
MD036: false # Emphasis used instead of a heading
|
MD036: false # Emphasis used instead of a heading
|
||||||
|
|
||||||
#################
|
#################
|
||||||
# Rules by tags #
|
# Rules by tags #
|
||||||
#################
|
#################
|
||||||
blank_lines: false # Error on blank lines
|
blank_lines: false # Error on blank lines
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
---
|
---
|
||||||
|
|
||||||
##########################
|
##########################
|
||||||
##########################
|
##########################
|
||||||
## OpenAPI Linter rules ##
|
## OpenAPI Linter rules ##
|
||||||
|
|
|
@ -1,2 +1 @@
|
||||||
---
|
---
|
||||||
...
|
|
||||||
|
|
14
action.yml
14
action.yml
|
@ -1,12 +1,12 @@
|
||||||
---
|
---
|
||||||
name: 'Super-Linter'
|
name: "Super-Linter"
|
||||||
author: 'Super-linter contributors'
|
author: "Super-linter contributors"
|
||||||
description: 'Super-linter is a ready-to-run collection of linters and code analyzers, to help validate your source code.'
|
description: "Super-linter is a ready-to-run collection of linters and code analyzers, to help validate your source code."
|
||||||
runs:
|
runs:
|
||||||
using: 'docker'
|
using: "docker"
|
||||||
image: 'docker://ghcr.io/super-linter/super-linter:v6.9.0' # x-release-please-version
|
image: "docker://ghcr.io/super-linter/super-linter:v6.9.0" # x-release-please-version
|
||||||
branding:
|
branding:
|
||||||
icon: 'check-square'
|
icon: "check-square"
|
||||||
color: 'white'
|
color: "white"
|
||||||
# You can view https://github.com/super-linter/super-linter#environment-variables
|
# You can view https://github.com/super-linter/super-linter#environment-variables
|
||||||
# to see a comprehensive list of all environment variables that can be passed
|
# to see a comprehensive list of all environment variables that can be passed
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# How to add support for a new tool to super-linter
|
# How to add support for a new tool to super-linter
|
||||||
|
|
||||||
If you want to propose a *Pull Request* to add **new** language support or a
|
If you want to propose a _Pull Request_ to add **new** language support or a
|
||||||
new tool, it should include:
|
new tool, it should include:
|
||||||
|
|
||||||
- Update documentation:
|
- Update documentation:
|
||||||
|
@ -9,14 +9,14 @@ new tool, it should include:
|
||||||
|
|
||||||
1. Create the `test/linters/<LANGUAGE_NAME>` directory.
|
1. Create the `test/linters/<LANGUAGE_NAME>` directory.
|
||||||
2. Provide at least one test case with a file that is supposed to pass validation,
|
2. Provide at least one test case with a file that is supposed to pass validation,
|
||||||
with the right file extension if needed: `test/linters/<LANGUAGE_NAME>/<name-of-tool>-good`
|
with the right file extension if needed: `test/linters/<LANGUAGE_NAME>/<name-of-tool>-good`
|
||||||
3. Provide at least one test case with a file that is supposed to fail validation,
|
3. Provide at least one test case with a file that is supposed to fail validation,
|
||||||
with the right file extension if needed: `test/linters/<LANGUAGE_NAME>/<name-of-tool>-bad`.
|
with the right file extension if needed: `test/linters/<LANGUAGE_NAME>/<name-of-tool>-bad`.
|
||||||
If the linter supports fix mode, the test case supposed to fail validation
|
If the linter supports fix mode, the test case supposed to fail validation
|
||||||
should only contain violations that the fix mode can automatically fix.
|
should only contain violations that the fix mode can automatically fix.
|
||||||
Avoid test cases that fail only because of syntax errors, when possible.
|
Avoid test cases that fail only because of syntax errors, when possible.
|
||||||
4. If the linter supports check-only mode or fix mode, add the `<LANGUGAGE>`
|
4. If the linter supports check-only mode or fix mode, add the `<LANGUGAGE>`
|
||||||
to the `LANGUAGES_WITH_FIX_MODE` array in `test/testUtils.sh`
|
to the `LANGUAGES_WITH_FIX_MODE` array in `test/testUtils.sh`
|
||||||
|
|
||||||
- Update the test suite to check for installed packages, the commands that your new tool needs in the `PATH`, and the expected version command:
|
- Update the test suite to check for installed packages, the commands that your new tool needs in the `PATH`, and the expected version command:
|
||||||
|
|
||||||
|
@ -34,60 +34,60 @@ new tool, it should include:
|
||||||
1. Create a directory named `dependencies/<name-of-tool>`.
|
1. Create a directory named `dependencies/<name-of-tool>`.
|
||||||
2. Create a `dependencies/<name-of-tool>/build.gradle` file with the following contents:
|
2. Create a `dependencies/<name-of-tool>/build.gradle` file with the following contents:
|
||||||
|
|
||||||
```gradle
|
```gradle
|
||||||
repositories {
|
repositories {
|
||||||
mavenLocal()
|
mavenLocal()
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
}
|
}
|
||||||
|
|
||||||
// Hold this dependency here so we can get automated updates using DependaBot
|
// Hold this dependency here so we can get automated updates using DependaBot
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation 'your:dependency-here:version'
|
implementation 'your:dependency-here:version'
|
||||||
}
|
}
|
||||||
|
|
||||||
group 'com.github.super-linter'
|
group 'com.github.super-linter'
|
||||||
version '1.0.0-SNAPSHOT'
|
version '1.0.0-SNAPSHOT'
|
||||||
```
|
```
|
||||||
|
|
||||||
3. Update the `dependencies` section in `dependencies/<name-of-tool>/build.gradle` to
|
3. Update the `dependencies` section in `dependencies/<name-of-tool>/build.gradle` to
|
||||||
install your dependencies.
|
install your dependencies.
|
||||||
4. Add the following content to the `Dockerfile`:
|
4. Add the following content to the `Dockerfile`:
|
||||||
|
|
||||||
```dockerfile
|
```dockerfile
|
||||||
COPY scripts/install-<name-of-tool>.sh /
|
COPY scripts/install-<name-of-tool>.sh /
|
||||||
RUN --mount=type=secret,id=GITHUB_TOKEN /<name-of-tool>.sh && rm -rf /<name-of-tool>.sh
|
RUN --mount=type=secret,id=GITHUB_TOKEN /<name-of-tool>.sh && rm -rf /<name-of-tool>.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
5. Create `scripts/install-<name-of-tool>.sh`, and implement the logic to install your tool.
|
5. Create `scripts/install-<name-of-tool>.sh`, and implement the logic to install your tool.
|
||||||
You get the version of a dependency from `build.gradle`. Example:
|
You get the version of a dependency from `build.gradle`. Example:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
GOOGLE_JAVA_FORMAT_VERSION="$(grep <"google-java-format/build.gradle" "google-java-format" | awk -F ':' '{print $3}' | tr -d "'")"
|
GOOGLE_JAVA_FORMAT_VERSION="$(grep <"google-java-format/build.gradle" "google-java-format" | awk -F ':' '{print $3}' | tr -d "'")"
|
||||||
```
|
```
|
||||||
|
|
||||||
6. Add the new to DependaBot configuration:
|
6. Add the new to DependaBot configuration:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
- package-ecosystem: "gradle"
|
- package-ecosystem: "gradle"
|
||||||
directory: "/dependencies/<name-of-tool>"
|
directory: "/dependencies/<name-of-tool>"
|
||||||
schedule:
|
schedule:
|
||||||
interval: "weekly"
|
interval: "weekly"
|
||||||
open-pull-requests-limit: 10
|
open-pull-requests-limit: 10
|
||||||
```
|
```
|
||||||
|
|
||||||
- If there is a container (Docker) image:
|
- If there is a container (Docker) image:
|
||||||
|
|
||||||
1. Add a new build stage to get the image:
|
1. Add a new build stage to get the image:
|
||||||
|
|
||||||
```dockerfile
|
```dockerfile
|
||||||
FROM your/image:version as <name-of-tool>
|
FROM your/image:version as <name-of-tool>
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Copy the necessary binaries and libraries to the relevant locations. Example:
|
1. Copy the necessary binaries and libraries to the relevant locations. Example:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
COPY --from=<name-of-tool> /usr/local/bin/<name-of-command> /usr/bin/
|
COPY --from=<name-of-tool> /usr/local/bin/<name-of-command> /usr/bin/
|
||||||
```
|
```
|
||||||
|
|
||||||
- Configure the new tool:
|
- Configure the new tool:
|
||||||
|
|
||||||
|
@ -102,9 +102,11 @@ new tool, it should include:
|
||||||
item as `<LANGUAGE_NAME>`.
|
item as `<LANGUAGE_NAME>`.
|
||||||
|
|
||||||
- Linter configuration:
|
- Linter configuration:
|
||||||
|
|
||||||
- Create a new minimal configuration file in the `TEMPLATES` directory with the same name as the
|
- Create a new minimal configuration file in the `TEMPLATES` directory with the same name as the
|
||||||
default configuration filename. Example: `TEMPLATES/.ruff.toml`.
|
default configuration filename. Example: `TEMPLATES/.ruff.toml`.
|
||||||
- `lib/globals/linterRules.sh`:
|
- `lib/globals/linterRules.sh`:
|
||||||
|
|
||||||
- If the new linter accepts a configuration files from the command line,
|
- If the new linter accepts a configuration files from the command line,
|
||||||
define a new variable:
|
define a new variable:
|
||||||
`<LANGUAGE_NAME>_FILE_NAME="${<LANGUAGE_NAME>_CONFIG_FILE:-"default-config-file-name.conf"}"`
|
`<LANGUAGE_NAME>_FILE_NAME="${<LANGUAGE_NAME>_CONFIG_FILE:-"default-config-file-name.conf"}"`
|
||||||
|
@ -116,13 +118,13 @@ new tool, it should include:
|
||||||
`<LANGUAGE_NAME>_COMMAND_ARGS` and add it to the command if the
|
`<LANGUAGE_NAME>_COMMAND_ARGS` and add it to the command if the
|
||||||
configuration provides it. Example:
|
configuration provides it. Example:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
<LANGUAGE_NAME>_COMMAND_ARGS="${<LANGUAGE_NAME>_COMMAND_ARGS:-""}"
|
<LANGUAGE_NAME>_COMMAND_ARGS="${<LANGUAGE_NAME>_COMMAND_ARGS:-""}"
|
||||||
if [ -n "${<LANGUAGE_NAME>_COMMAND_ARGS:-}" ]; then
|
if [ -n "${<LANGUAGE_NAME>_COMMAND_ARGS:-}" ]; then
|
||||||
export <LANGUAGE_NAME>_COMMAND_ARGS
|
export <LANGUAGE_NAME>_COMMAND_ARGS
|
||||||
LINTER_COMMANDS_ARRAY_<LANGUAGE_NAME>+=("${<LANGUAGE_NAME>_COMMAND_ARGS}")
|
LINTER_COMMANDS_ARRAY_<LANGUAGE_NAME>+=("${<LANGUAGE_NAME>_COMMAND_ARGS}")
|
||||||
fi
|
fi
|
||||||
```
|
```
|
||||||
|
|
||||||
- Define the command to invoke the new linter:
|
- Define the command to invoke the new linter:
|
||||||
|
|
||||||
|
|
|
@ -12,9 +12,9 @@ releases, do the following:
|
||||||
|
|
||||||
1. Run:
|
1. Run:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
make release-please-dry-run
|
make release-please-dry-run
|
||||||
```
|
```
|
||||||
|
|
||||||
This command also runs as part of the [CI process](../.github/workflows/ci.yml).
|
This command also runs as part of the [CI process](../.github/workflows/ci.yml).
|
||||||
|
|
||||||
|
|
|
@ -38,7 +38,7 @@ super-linter:
|
||||||
stage: Super-linter
|
stage: Super-linter
|
||||||
# Use a specific Super-linter version instead of latest for more reproducible builds
|
# Use a specific Super-linter version instead of latest for more reproducible builds
|
||||||
image: super-linter/super-linter:latest
|
image: super-linter/super-linter:latest
|
||||||
script: [ "true" ]
|
script: ["true"]
|
||||||
variables:
|
variables:
|
||||||
RUN_LOCAL: "true"
|
RUN_LOCAL: "true"
|
||||||
DEFAULT_WORKSPACE: $CI_PROJECT_DIR
|
DEFAULT_WORKSPACE: $CI_PROJECT_DIR
|
||||||
|
@ -58,29 +58,29 @@ them accordingly:
|
||||||
|
|
||||||
1. Create a configuration file for super-linter `super-linter.env`. For example:
|
1. Create a configuration file for super-linter `super-linter.env`. For example:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
VALIDATE_ALL_CODEBASE=true
|
VALIDATE_ALL_CODEBASE=true
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Load the super-linter configuration file when running outside GitHub Actions:
|
1. Load the super-linter configuration file when running outside GitHub Actions:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker run --rm \
|
docker run --rm \
|
||||||
-e RUN_LOCAL=true \
|
-e RUN_LOCAL=true \
|
||||||
--env-file ".github/super-linter.env" \
|
--env-file ".github/super-linter.env" \
|
||||||
-v "$(pwd)":/tmp/lint \
|
-v "$(pwd)":/tmp/lint \
|
||||||
ghcr.io/super-linter/super-linter:latest
|
ghcr.io/super-linter/super-linter:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Load the super-linter configuration file when running in GitHub Actions by
|
1. Load the super-linter configuration file when running in GitHub Actions by
|
||||||
adding the following step to the GitHub Actions workflow that runs
|
adding the following step to the GitHub Actions workflow that runs
|
||||||
super-linter, after checking out your repository and before running
|
super-linter, after checking out your repository and before running
|
||||||
super-linter:
|
super-linter:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
- name: Load super-linter configuration
|
- name: Load super-linter configuration
|
||||||
run: cat .github/super-linter.env >> "$GITHUB_ENV"
|
run: cat .github/super-linter.env >> "$GITHUB_ENV"
|
||||||
```
|
```
|
||||||
|
|
||||||
## Build the container image and run the test suite locally
|
## Build the container image and run the test suite locally
|
||||||
|
|
||||||
|
@ -88,20 +88,20 @@ To run the build and test process locally, in the top-level super-linter
|
||||||
directory, do the following:
|
directory, do the following:
|
||||||
|
|
||||||
1. [Create a fine-grained GitHub personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-fine-grained-personal-access-token).
|
1. [Create a fine-grained GitHub personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-fine-grained-personal-access-token).
|
||||||
The token only needs to have public/read-only access.
|
The token only needs to have public/read-only access.
|
||||||
|
|
||||||
1. Store the generated personal access token in a file in the top-level
|
1. Store the generated personal access token in a file in the top-level
|
||||||
directory (This file is ignored by Git).
|
directory (This file is ignored by Git).
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
echo "github_pat_XXXXXX_XXXXXX" > .github-personal-access-token
|
echo "github_pat_XXXXXX_XXXXXX" > .github-personal-access-token
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Run the build process:
|
1. Run the build process:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
. ./scripts/build-metadata.sh && make
|
. ./scripts/build-metadata.sh && make
|
||||||
```
|
```
|
||||||
|
|
||||||
To avoid invalidating the build cache because of changing values of build
|
To avoid invalidating the build cache because of changing values of build
|
||||||
arguments, you can set build arguments to arbitrary values before running
|
arguments, you can set build arguments to arbitrary values before running
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
---
|
---
|
||||||
name: 'Super-Linter slim'
|
name: "Super-Linter slim"
|
||||||
author: 'Super-linter contributors'
|
author: "Super-linter contributors"
|
||||||
description: 'Super-linter is a ready-to-run collection of linters and code analyzers, to help validate your source code.'
|
description: "Super-linter is a ready-to-run collection of linters and code analyzers, to help validate your source code."
|
||||||
runs:
|
runs:
|
||||||
using: 'docker'
|
using: "docker"
|
||||||
image: 'docker://ghcr.io/super-linter/super-linter:slim-v6.9.0' # x-release-please-version
|
image: "docker://ghcr.io/super-linter/super-linter:slim-v6.9.0" # x-release-please-version
|
||||||
branding:
|
branding:
|
||||||
icon: 'check-square'
|
icon: "check-square"
|
||||||
color: 'white'
|
color: "white"
|
||||||
# You can view https://github.com/super-linter/super-linter#environment-variables
|
# You can view https://github.com/super-linter/super-linter#environment-variables
|
||||||
# to see a comprehensive list of all environment variables that can be passed
|
# to see a comprehensive list of all environment variables that can be passed
|
||||||
|
|
|
@ -178,13 +178,7 @@
|
||||||
"svn_url": "https://github.com/super-linter/super-linter",
|
"svn_url": "https://github.com/super-linter/super-linter",
|
||||||
"tags_url": "https://api.github.com/repos/super-linter/super-linter/tags",
|
"tags_url": "https://api.github.com/repos/super-linter/super-linter/tags",
|
||||||
"teams_url": "https://api.github.com/repos/super-linter/super-linter/teams",
|
"teams_url": "https://api.github.com/repos/super-linter/super-linter/teams",
|
||||||
"topics": [
|
"topics": ["actions", "ci", "hacktoberfest", "linter", "quality-check"],
|
||||||
"actions",
|
|
||||||
"ci",
|
|
||||||
"hacktoberfest",
|
|
||||||
"linter",
|
|
||||||
"quality-check"
|
|
||||||
],
|
|
||||||
"trees_url": "https://api.github.com/repos/super-linter/super-linter/git/trees{/sha}",
|
"trees_url": "https://api.github.com/repos/super-linter/super-linter/git/trees{/sha}",
|
||||||
"updated_at": "2024-01-04T16:38:53Z",
|
"updated_at": "2024-01-04T16:38:53Z",
|
||||||
"url": "https://github.com/super-linter/super-linter",
|
"url": "https://github.com/super-linter/super-linter",
|
||||||
|
|
|
@ -6,4 +6,3 @@ parseable: true
|
||||||
quiet: true
|
quiet: true
|
||||||
use_default_rules: true
|
use_default_rules: true
|
||||||
verbosity: 1
|
verbosity: 1
|
||||||
...
|
|
||||||
|
|
|
@ -12,10 +12,10 @@ ignorePatterns:
|
||||||
- "!.*"
|
- "!.*"
|
||||||
- "**/node_modules/.*"
|
- "**/node_modules/.*"
|
||||||
|
|
||||||
parser: '@typescript-eslint/parser'
|
parser: "@typescript-eslint/parser"
|
||||||
|
|
||||||
plugins:
|
plugins:
|
||||||
- '@typescript-eslint'
|
- "@typescript-eslint"
|
||||||
|
|
||||||
# Don't set the jsonSyntax parser option for JSON, JSON5, and JSONC
|
# Don't set the jsonSyntax parser option for JSON, JSON5, and JSONC
|
||||||
# so we can use eslint-plugin-jsonc to automatically fix issues
|
# so we can use eslint-plugin-jsonc to automatically fix issues
|
||||||
|
@ -41,4 +41,3 @@ overrides:
|
||||||
- "*.tsx"
|
- "*.tsx"
|
||||||
extends:
|
extends:
|
||||||
- plugin:react/recommended
|
- plugin:react/recommended
|
||||||
...
|
|
||||||
|
|
|
@ -2,4 +2,3 @@
|
||||||
linters:
|
linters:
|
||||||
enable:
|
enable:
|
||||||
- gofmt
|
- gofmt
|
||||||
...
|
|
||||||
|
|
Loading…
Reference in a new issue