diff --git a/.automation/generated/flavors-stats.json b/.automation/generated/flavors-stats.json
index 57f423d82c4..857eed7283d 100644
--- a/.automation/generated/flavors-stats.json
+++ b/.automation/generated/flavors-stats.json
@@ -1659,6 +1659,14 @@
[
"2023-08-03T19:41:39",
3082328
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 3085127
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 3085847
]
],
"ci_light": [
@@ -3321,6 +3329,14 @@
[
"2023-08-03T19:41:39",
82957
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 83208
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 83267
]
],
"cupcake": [
@@ -3963,6 +3979,14 @@
[
"2023-08-03T19:41:39",
23024
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 23139
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 23203
]
],
"dart": [
@@ -6535,6 +6559,14 @@
[
"2023-08-03T19:41:39",
170524
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 171142
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 171263
]
],
"dotnet": [
@@ -8197,6 +8229,14 @@
[
"2023-08-03T19:41:39",
413810
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 414423
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 414499
]
],
"dotnetweb": [
@@ -8243,6 +8283,14 @@
[
"2023-08-03T19:41:39",
329
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 383
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 386
]
],
"go": [
@@ -9905,6 +9953,14 @@
[
"2023-08-03T19:41:39",
26053
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 26289
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 26319
]
],
"java": [
@@ -11567,6 +11623,14 @@
[
"2023-08-03T19:41:39",
132297
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 132549
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 132598
]
],
"javascript": [
@@ -13229,6 +13293,14 @@
[
"2023-08-03T19:41:39",
326059
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 327439
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 327861
]
],
"php": [
@@ -14891,6 +14963,14 @@
[
"2023-08-03T19:41:39",
52784
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 52836
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 52836
]
],
"python": [
@@ -16553,6 +16633,14 @@
[
"2023-08-03T19:41:39",
240747
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 241369
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 241426
]
],
"ruby": [
@@ -18211,6 +18299,14 @@
[
"2023-08-03T19:41:39",
3942
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 3942
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 3942
]
],
"rust": [
@@ -19869,6 +19965,14 @@
[
"2023-08-03T19:41:39",
6409
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 6429
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 6429
]
],
"salesforce": [
@@ -21531,6 +21635,14 @@
[
"2023-08-03T19:41:39",
22516
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 22563
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 22571
]
],
"scala": [
@@ -23191,6 +23303,14 @@
[
"2023-08-03T19:41:39",
24694
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 25077
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 25151
]
],
"swift": [
@@ -24849,6 +24969,14 @@
[
"2023-08-03T19:41:39",
4223
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 4225
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 4225
]
],
"terraform": [
@@ -26511,6 +26639,14 @@
[
"2023-08-03T19:41:39",
293065
+ ],
+ [
+ "2023-08-06T01:17:07",
+ 294397
+ ],
+ [
+ "2023-08-07T01:10:36",
+ 294776
]
]
}
\ No newline at end of file
diff --git a/.automation/generated/linter-helps.json b/.automation/generated/linter-helps.json
index ea745ac576b..ee49656375a 100644
--- a/.automation/generated/linter-helps.json
+++ b/.automation/generated/linter-helps.json
@@ -740,7 +740,7 @@
" [--secrets-scan-file-type SECRETS_SCAN_FILE_TYPE]",
" [--enable-secret-scan-all-files]",
" [--block-list-secret-scan BLOCK_LIST_SECRET_SCAN]",
- " [--summary-position {bottom,top}]",
+ " [--summary-position {top,bottom}]",
" [--skip-resources-without-violations] [--deep-analysis]",
" [--no-fail-on-crash] [--mask MASK] [--scan-secrets-history]",
" [--secrets-history-timeout SECRETS_HISTORY_TIMEOUT]",
@@ -1011,7 +1011,7 @@
" --block-list-secret-scan BLOCK_LIST_SECRET_SCAN",
" List of files to filter out from the secret scanner",
" [env var: CKV_SECRETS_SCAN_BLOCK_LIST]",
- " --summary-position {bottom,top}",
+ " --summary-position {top,bottom}",
" Chose whether the summary will be appended on top",
" (before the checks results) or on bottom (after check",
" results), default is on top.",
@@ -1623,7 +1623,7 @@
""
],
"devskim": [
- "devskim 1.0.15+ed9da84756",
+ "devskim 1.0.16+e3d6c3bd52",
"\u00a9 Microsoft Corporation. All rights reserved.",
"",
" analyze Analyze source code using DevSkim",
@@ -3122,7 +3122,7 @@
" completion Generate autocompletion script",
" config Handle cached configurations",
" delete Delete configurations in Kubescape SaaS version",
- " download Download exceptions,control,framework,artifacts,attack-tracks,controls-inputs",
+ " download Download framework,artifacts,attack-tracks,controls-inputs,exceptions,control",
" fix Fix misconfiguration in files",
" help Help about any command",
" list List frameworks/controls will list the supported frameworks and controls",
@@ -7141,7 +7141,7 @@
" scanner run dfa scan codebase with all DFA rules",
"",
"WARNING: We're continually improving Salesforce Code Analyzer. Tell us what you think! Give feedback at https://research.net/r/SalesforceCA",
- "(node:1532) Warning: Deprecated config name: apiVersion. Please use org-api-version instead.",
+ "(node:1529) Warning: Deprecated config name: apiVersion. Please use org-api-version instead.",
"(Use `node --trace-warnings ...` to show where the warning was created)",
" NAME LANGUAGES CATEGORIES RULESETS [DEP] ENGINE IS DFA IS PILOT",
" \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",
@@ -7436,7 +7436,7 @@
" scanner run dfa scan codebase with all DFA rules",
"",
"WARNING: We're continually improving Salesforce Code Analyzer. Tell us what you think! Give feedback at https://research.net/r/SalesforceCA",
- "(node:1673) Warning: Deprecated config name: apiVersion. Please use org-api-version instead.",
+ "(node:1670) Warning: Deprecated config name: apiVersion. Please use org-api-version instead.",
"(Use `node --trace-warnings ...` to show where the warning was created)",
" NAME LANGUAGES CATEGORIES RULESETS [DEP] ENGINE IS DFA IS PILOT",
" \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",
@@ -7731,7 +7731,7 @@
" scanner run dfa scan codebase with all DFA rules",
"",
"WARNING: We're continually improving Salesforce Code Analyzer. Tell us what you think! Give feedback at https://research.net/r/SalesforceCA",
- "(node:1814) Warning: Deprecated config name: apiVersion. Please use org-api-version instead.",
+ "(node:1811) Warning: Deprecated config name: apiVersion. Please use org-api-version instead.",
"(Use `node --trace-warnings ...` to show where the warning was created)",
" NAME LANGUAGES CATEGORIES RULESETS [DEP] ENGINE IS DFA IS PILOT",
" \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",
@@ -8199,8 +8199,7 @@
" Note that in such cases, the arguments may be given as",
" nested YAML mappings in the profile, e.g. 'set-",
" threads: myrule: 4' instead of 'set-threads:",
- " myrule=4'. [env var: SNAKEMAKE_PROFILE] (default:",
- " None)",
+ " myrule=4'. (default: None)",
" --cache [RULE ...] Store output files of given rules in a central cache",
" given by the environment variable",
" $SNAKEMAKE_OUTPUT_CACHE. Likewise, retrieve output",
@@ -8211,10 +8210,10 @@
" parameters and software stack (conda envs or",
" containers) needed to create them. (default: None)",
" --snakefile FILE, -s FILE",
- " The workflow definition in form of a",
- " snakefile.Usually, you should not need to specify",
- " this. By default, Snakemake will search for",
- " 'Snakefile', 'snakefile', 'workflow/Snakefile',",
+ " The workflow definition in form of a snakefile.",
+ " Usually, you should not need to specify this. By",
+ " default, Snakemake will search for 'Snakefile',",
+ " 'snakefile', 'workflow/Snakefile',",
" 'workflow/snakefile' beneath the current working",
" directory, in this order. Only if you definitely want",
" a different layout, you need to use this parameter.",
@@ -8320,7 +8319,7 @@
" --preemption-default PREEMPTION_DEFAULT",
" A preemptible instance can be requested when using the",
" Google Life Sciences API. If you set a --preemption-",
- " default,all rules will be subject to the default.",
+ " default, all rules will be subject to the default.",
" Specifically, this integer is the number of restart",
" attempts that will be made given that the instance is",
" killed unexpectedly. Note that preemptible instances",
@@ -8811,13 +8810,13 @@
" --log-handler-script FILE",
" Provide a custom script containing a function 'def",
" log_handler(msg):'. Snakemake will call this function",
- " for every logging output (given as a dictionary",
- " msg)allowing to e.g. send notifications in the form of",
+ " for every logging output (given as a dictionary msg)",
+ " allowing to e.g. send notifications in the form of",
" e.g. slack messages or emails. (default: None)",
" --log-service {none,slack,wms}",
- " Set a specific messaging service for logging",
- " output.Snakemake will notify the service on errors and",
- " completed execution.Currently slack and workflow",
+ " Set a specific messaging service for logging output.",
+ " Snakemake will notify the service on errors and",
+ " completed execution. Currently slack and workflow",
" management system (wms) are supported. (default: None)",
"",
"SLURM:",
@@ -8844,8 +8843,8 @@
" snakemake --cluster 'qsub -pe threaded {threads}'.",
" (default: None)",
" --cluster-sync CMD cluster submission command will block, returning the",
- " remote exitstatus upon remote termination (for",
- " example, this should be usedif the cluster command is",
+ " remote exit status upon remote termination (for",
+ " example, this should be used if the cluster command is",
" 'qsub -sync y' (SGE) (default: None)",
" --drmaa [ARGS] Execute snakemake on a cluster accessed via DRMAA,",
" Snakemake compiles jobs into scripts that are",
@@ -8859,7 +8858,7 @@
" with a leading whitespace. (default: None)",
" --cluster-config FILE, -u FILE",
" A JSON or YAML file that defines the wildcards used in",
- " 'cluster'for specific rules, instead of having them",
+ " 'cluster' for specific rules, instead of having them",
" specified in the Snakefile. For example, for rule",
" 'job' you may define: { 'job' : { 'time' : '24:00:00'",
" } } to specify the time for rule 'job'. You can",
@@ -9026,7 +9025,7 @@
" (default: False)",
" --tibanna-sfn TIBANNA_SFN",
" Name of Tibanna Unicorn step function (e.g.",
- " tibanna_unicorn_monty).This works as serverless",
+ " tibanna_unicorn_monty). This works as serverless",
" scheduler/resource allocator and must be deployed",
" first using tibanna cli. (e.g. tibanna deploy_unicorn",
" --usergroup=monty --buckets=bucketname) (default:",
@@ -9099,7 +9098,7 @@
" directive is ignored. (default: False)",
" --singularity-prefix DIR",
" Specify a directory in which singularity images will",
- " be stored.If not supplied, the value is set to the",
+ " be stored. If not supplied, the value is set to the",
" '.snakemake' directory relative to the invocation",
" directory. If supplied, the `--use-singularity` flag",
" must also be set. The value may be given as a relative",
diff --git a/.automation/generated/linter-versions.json b/.automation/generated/linter-versions.json
index 11111ba8480..10ce20baa84 100644
--- a/.automation/generated/linter-versions.json
+++ b/.automation/generated/linter-versions.json
@@ -8,7 +8,7 @@
"black": "23.7.0",
"cfn-lint": "0.79.6",
"checkmake": "0.2.0",
- "checkov": "2.3.356",
+ "checkov": "2.3.358",
"checkstyle": "10.12.2",
"chktex": "1.7.6",
"clippy": "0.1.71",
@@ -19,7 +19,7 @@
"csharpier": "0.25.0",
"cspell": "6.31.2",
"dartanalyzer": "0.0.0",
- "devskim": "1.0.15",
+ "devskim": "1.0.16",
"djlint": "1.32.1",
"dockerfilelint": "1.8.0",
"dotenv-linter": "3.3.0",
@@ -61,7 +61,7 @@
"php": "7.4.26",
"phpcs": "3.7.2",
"phplint": "9.0.4",
- "phpstan": "1.10.26",
+ "phpstan": "1.10.27",
"pmd": "6.55.0",
"powershell": "7.3.6",
"powershell_formatter": "7.3.6",
@@ -82,7 +82,7 @@
"ruff": "0.0.282",
"scalafix": "0.11.0",
"scss-lint": "0.60.0",
- "secretlint": "7.0.3",
+ "secretlint": "7.0.6",
"semgrep": "1.34.1",
"sfdx-scanner": "2.8.0",
"sfdx-scanner-apex": "3.15.0",
@@ -91,10 +91,10 @@
"shellcheck": "0.9.0",
"shfmt": "3.7.0",
"snakefmt": "0.8.4",
- "snakemake": "7.32.0",
- "spectral": "6.10.0",
+ "snakemake": "7.32.1",
+ "spectral": "6.10.1",
"sql-lint": "1.0.0",
- "sqlfluff": "2.1.4",
+ "sqlfluff": "2.2.0",
"standard": "17.1.0",
"stylelint": "15.10.2",
"swiftlint": "0.52.4",
diff --git a/.github/workflows/deploy-BETA.yml b/.github/workflows/deploy-BETA.yml
index 74e1e9b5d55..3e3f6b7c8b2 100644
--- a/.github/workflows/deploy-BETA.yml
+++ b/.github/workflows/deploy-BETA.yml
@@ -95,6 +95,24 @@ jobs:
- name: Get current date
run: echo "BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" >> ${GITHUB_ENV}
+ - name: Build & Push Docker Image (Server)
+ uses: docker/build-push-action@v4
+ with:
+ context: .
+ file: server/Dockerfile
+ platforms: linux/amd64
+ build-args: |
+ BUILD_DATE=${{ env.BUILD_DATE }}
+ BUILD_REVISION=${{ github.sha }}
+ BUILD_VERSION=alpha
+ load: false
+ push: true
+ secrets: |
+ GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }}
+ tags: |
+ ghcr.io/oxsecurity/megalinter-server:beta
+ # ghcr.io/oxsecurity/megalinter-server:beta-${{ github.sha }}
+
- name: Build & Push Docker Image
uses: docker/build-push-action@v4
with:
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b0f138cabe9..f417a9a822c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -8,6 +8,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
Note: Can be used with `oxsecurity/megalinter@beta` in your GitHub Action mega-linter.yml file, or with `oxsecurity/megalinter:beta` docker image
+- Redis reporter
+ - Return URL of linter icons when available, in property `iconPngUrl`
+
- Linter versions upgrades
- [cfn-lint](https://github.com/aws-cloudformation/cfn-lint) from 0.79.2 to **0.79.3** on 2023-07-26
- [bicep_linter](https://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter) from 0.19.5 to **0.20.4** on 2023-08-03
@@ -39,6 +42,14 @@ Note: Can be used with `oxsecurity/megalinter@beta` in your GitHub Action mega-l
- [terrascan](https://runterrascan.io/) from 1.18.1 to **1.18.2** on 2023-08-03
- [kics](https://www.kics.io) from 1.7.4 to **1.7.5** on 2023-08-03
- [snakemake](https://snakemake.readthedocs.io/en/stable/) from 7.31.1 to **7.32.0** on 2023-08-03
+ - [spectral](https://meta.stoplight.io/docs/spectral/README.md) from 6.10.0 to **6.10.1** on 2023-08-06
+ - [phpstan](https://phpstan.org/) from 1.10.26 to **1.10.27** on 2023-08-06
+ - [devskim](https://github.com/microsoft/DevSkim) from 1.0.15 to **1.0.16** on 2023-08-06
+ - [secretlint](https://github.com/secretlint/secretlint) from 7.0.3 to **7.0.4** on 2023-08-06
+ - [snakemake](https://snakemake.readthedocs.io/en/stable/) from 7.32.0 to **7.32.1** on 2023-08-06
+ - [sqlfluff](https://www.sqlfluff.com/) from 2.1.4 to **2.2.0** on 2023-08-06
+ - [checkov](https://www.checkov.io/) from 2.3.356 to **2.3.358** on 2023-08-07
+ - [secretlint](https://github.com/secretlint/secretlint) from 7.0.4 to **7.0.6** on 2023-08-07
## [v7.2.1] - 2023-07-26
diff --git a/README.md b/README.md
index 77090528a64..4d96d248652 100644
--- a/README.md
+++ b/README.md
@@ -23,7 +23,7 @@
[![MegaLinter](https://github.com/oxsecurity/megalinter/workflows/MegaLinter/badge.svg?branch=main)](https://github.com/oxsecurity/megalinter/actions?query=workflow%3AMegaLinter+branch%3Amain)
[![codecov](https://codecov.io/gh/oxsecurity/megalinter/branch/main/graph/badge.svg)](https://codecov.io/gh/oxsecurity/megalinter)
-[![](https://img.shields.io/static/v1?label=Used%20by&message=2645&color=informational&logo=slickpic)](https://github.com/oxsecurity/megalinter/network/dependents)
+[![](https://img.shields.io/static/v1?label=Used%20by&message=2650&color=informational&logo=slickpic)](https://github.com/oxsecurity/megalinter/network/dependents)
[![Secured with Trivy](https://img.shields.io/badge/Trivy-secured-green?logo=docker)](https://github.com/aquasecurity/trivy)
[![GitHub contributors](https://img.shields.io/github/contributors/oxsecurity/megalinter.svg)](https://github.com/oxsecurity/megalinter/graphs/contributors/)
[![GitHub Sponsors](https://img.shields.io/github/sponsors/nvuillam)](https://github.com/sponsors/nvuillam)
diff --git a/docs/all_linters.md b/docs/all_linters.md
index dd3f781668d..5e7bb875004 100644
--- a/docs/all_linters.md
+++ b/docs/all_linters.md
@@ -14,7 +14,7 @@
| [**black**](https://github.com/psf/black){target=_blank} | 23.7.0 | [MIT](licenses/black.md) | [![GitHub stars](https://img.shields.io/github/stars/psf/black?cacheSeconds=3600)](https://github.com/psf/black){target=_blank} | [PYTHON](descriptors/python_black.md) | :white_circle: | [Repository](https://github.com/psf/black){target=_blank} |
| [**cfn-lint**](https://github.com/aws-cloudformation/cfn-lint){target=_blank} | 0.79.6 | [MIT-0](licenses/cfn-lint.md) | [![GitHub stars](https://img.shields.io/github/stars/aws-cloudformation/cfn-lint?cacheSeconds=3600)](https://github.com/aws-cloudformation/cfn-lint){target=_blank} | [CLOUDFORMATION](descriptors/cloudformation_cfn_lint.md) | :white_circle: | [Repository](https://github.com/aws-cloudformation/cfn-lint){target=_blank} |
| [**checkmake**](https://github.com/mrtazz/checkmake){target=_blank} | 0.2.0 | [MIT](licenses/checkmake.md) | [![GitHub stars](https://img.shields.io/github/stars/mrtazz/checkmake?cacheSeconds=3600)](https://github.com/mrtazz/checkmake){target=_blank} | [MAKEFILE](descriptors/makefile_checkmake.md) | :white_circle: | [Repository](https://github.com/mrtazz/checkmake){target=_blank} |
-| [**checkov**](https://github.com/bridgecrewio/checkov){target=_blank} | 2.3.356 | [Apache-2.0](licenses/checkov.md) | [![GitHub stars](https://img.shields.io/github/stars/bridgecrewio/checkov?cacheSeconds=3600)](https://github.com/bridgecrewio/checkov){target=_blank} | [REPOSITORY](descriptors/repository_checkov.md) | :no_entry_sign: | [Repository](https://github.com/bridgecrewio/checkov){target=_blank} |
+| [**checkov**](https://github.com/bridgecrewio/checkov){target=_blank} | 2.3.358 | [Apache-2.0](licenses/checkov.md) | [![GitHub stars](https://img.shields.io/github/stars/bridgecrewio/checkov?cacheSeconds=3600)](https://github.com/bridgecrewio/checkov){target=_blank} | [REPOSITORY](descriptors/repository_checkov.md) | :no_entry_sign: | [Repository](https://github.com/bridgecrewio/checkov){target=_blank} |
| [**checkstyle**](https://github.com/checkstyle/checkstyle){target=_blank} | 10.12.2 | [LGPL-2.1](licenses/checkstyle.md) | [![GitHub stars](https://img.shields.io/github/stars/checkstyle/checkstyle?cacheSeconds=3600)](https://github.com/checkstyle/checkstyle){target=_blank} | [JAVA](descriptors/java_checkstyle.md) | :heart: | [MegaLinter reference](https://checkstyle.sourceforge.io/index.html#Related_Tools_Active_Tools){target=_blank} |
| [**chktex**](https://www.nongnu.org/chktex){target=_blank} | 1.7.6 | | | [LATEX](descriptors/latex_chktex.md) | :white_circle: | [Web Site](https://www.nongnu.org/chktex){target=_blank} |
| [**clippy**](https://github.com/rust-lang/rust-clippy){target=_blank} | 0.1.71 | [Other](licenses/clippy.md) | [![GitHub stars](https://img.shields.io/github/stars/rust-lang/rust-clippy?cacheSeconds=3600)](https://github.com/rust-lang/rust-clippy){target=_blank} | [RUST](descriptors/rust_clippy.md) | :white_circle: | [Repository](https://github.com/rust-lang/rust-clippy){target=_blank} |
@@ -25,7 +25,7 @@
| [**csharpier**](https://github.com/belav/csharpier){target=_blank} | 0.25.0 | [MIT](licenses/csharpier.md) | [![GitHub stars](https://img.shields.io/github/stars/belav/csharpier?cacheSeconds=3600)](https://github.com/belav/csharpier){target=_blank} | [CSHARP](descriptors/csharp_csharpier.md) | :white_circle: | [Repository](https://github.com/belav/csharpier){target=_blank} |
| [**cspell**](https://github.com/streetsidesoftware/cspell){target=_blank} | 6.31.2 | [MIT](licenses/cspell.md) | [![GitHub stars](https://img.shields.io/github/stars/streetsidesoftware/cspell?cacheSeconds=3600)](https://github.com/streetsidesoftware/cspell){target=_blank} | [SPELL](descriptors/spell_cspell.md) | :heart: | [MegaLinter reference](https://github.com/streetsidesoftware/cspell/tree/master/packages/cspell#mega-linter){target=_blank} |
| [**dartanalyzer**](https://github.com/dart-lang/sdk){target=_blank} | N/A | [BSD-3-Clause](licenses/dartanalyzer.md) | [![GitHub stars](https://img.shields.io/github/stars/dart-lang/sdk?cacheSeconds=3600)](https://github.com/dart-lang/sdk){target=_blank} | [DART](descriptors/dart_dartanalyzer.md) | :no_entry_sign: | [Repository](https://github.com/dart-lang/sdk){target=_blank} |
-| [**devskim**](https://github.com/microsoft/DevSkim){target=_blank} | 1.0.15 | [MIT](licenses/devskim.md) | [![GitHub stars](https://img.shields.io/github/stars/microsoft/DevSkim?cacheSeconds=3600)](https://github.com/microsoft/DevSkim){target=_blank} | [REPOSITORY](descriptors/repository_devskim.md) | :white_circle: | [Repository](https://github.com/microsoft/DevSkim){target=_blank} |
+| [**devskim**](https://github.com/microsoft/DevSkim){target=_blank} | 1.0.16 | [MIT](licenses/devskim.md) | [![GitHub stars](https://img.shields.io/github/stars/microsoft/DevSkim?cacheSeconds=3600)](https://github.com/microsoft/DevSkim){target=_blank} | [REPOSITORY](descriptors/repository_devskim.md) | :white_circle: | [Repository](https://github.com/microsoft/DevSkim){target=_blank} |
| [**djlint**](https://github.com/Riverside-Healthcare/djlint){target=_blank} | 1.32.1 | [GPL-3.0](licenses/djlint.md) | [![GitHub stars](https://img.shields.io/github/stars/Riverside-Healthcare/djlint?cacheSeconds=3600)](https://github.com/Riverside-Healthcare/djlint){target=_blank} | [HTML](descriptors/html_djlint.md) | :heart: | [MegaLinter reference](https://djlint.com/docs/integrations/#megalinter){target=_blank} |
| [**dotenv-linter**](https://github.com/dotenv-linter/dotenv-linter){target=_blank} | 3.3.0 | [MIT](licenses/dotenv-linter.md) | [![GitHub stars](https://img.shields.io/github/stars/dotenv-linter/dotenv-linter?cacheSeconds=3600)](https://github.com/dotenv-linter/dotenv-linter){target=_blank} | [ENV](descriptors/env_dotenv_linter.md) | :heart: | [MegaLinter reference](https://dotenv-linter.github.io/#/integrations/mega_linter){target=_blank} |
| [**dotnet-format**](https://github.com/dotnet/format){target=_blank} | 6.0.412 | [MIT](licenses/dotnet-format.md) | [![GitHub stars](https://img.shields.io/github/stars/dotnet/format?cacheSeconds=3600)](https://github.com/dotnet/format){target=_blank} | [CSHARP](descriptors/csharp_dotnet_format.md)
[VBDOTNET](descriptors/vbdotnet_dotnet_format.md) | :white_circle: | [Repository](https://github.com/dotnet/format){target=_blank} |
@@ -62,7 +62,7 @@
| [**perlcritic**](https://github.com/Perl-Critic/Perl-Critic){target=_blank} | 1.150 | [Other](licenses/perlcritic.md) | [![GitHub stars](https://img.shields.io/github/stars/Perl-Critic/Perl-Critic?cacheSeconds=3600)](https://github.com/Perl-Critic/Perl-Critic){target=_blank} | [PERL](descriptors/perl_perlcritic.md) | :white_circle: | [Repository](https://github.com/Perl-Critic/Perl-Critic){target=_blank} |
| [**phpcs**](https://github.com/squizlabs/PHP_CodeSniffer){target=_blank} | 3.7.2 | [BSD-3-Clause](licenses/phpcs.md) | [![GitHub stars](https://img.shields.io/github/stars/squizlabs/PHP_CodeSniffer?cacheSeconds=3600)](https://github.com/squizlabs/PHP_CodeSniffer){target=_blank} | [PHP](descriptors/php_phpcs.md) | :white_circle: | [Repository](https://github.com/squizlabs/PHP_CodeSniffer){target=_blank} |
| [**phplint**](https://github.com/overtrue/phplint){target=_blank} | 9.0.4 | [MIT](licenses/phplint.md) | [![GitHub stars](https://img.shields.io/github/stars/overtrue/phplint?cacheSeconds=3600)](https://github.com/overtrue/phplint){target=_blank} | [PHP](descriptors/php_phplint.md) | :white_circle: | [Repository](https://github.com/overtrue/phplint){target=_blank} |
-| [**phpstan**](https://github.com/phpstan/phpstan){target=_blank} | 1.10.26 | [MIT](licenses/phpstan.md) | [![GitHub stars](https://img.shields.io/github/stars/phpstan/phpstan?cacheSeconds=3600)](https://github.com/phpstan/phpstan){target=_blank} | [PHP](descriptors/php_phpstan.md) | :white_circle: | [Repository](https://github.com/phpstan/phpstan){target=_blank} |
+| [**phpstan**](https://github.com/phpstan/phpstan){target=_blank} | 1.10.27 | [MIT](licenses/phpstan.md) | [![GitHub stars](https://img.shields.io/github/stars/phpstan/phpstan?cacheSeconds=3600)](https://github.com/phpstan/phpstan){target=_blank} | [PHP](descriptors/php_phpstan.md) | :white_circle: | [Repository](https://github.com/phpstan/phpstan){target=_blank} |
| [**pmd**](https://github.com/pmd/pmd){target=_blank} | 6.55.0 | [Apache-2.0](licenses/pmd.md) | [![GitHub stars](https://img.shields.io/github/stars/pmd/pmd?cacheSeconds=3600)](https://github.com/pmd/pmd){target=_blank} | [JAVA](descriptors/java_pmd.md) | :heart: | [MegaLinter reference](https://pmd.sourceforge.io/pmd-6.55.0/pmd_userdocs_tools_ci.html){target=_blank} |
| [**powershell**](https://github.com/PowerShell/PSScriptAnalyzer){target=_blank} | 7.3.6 | [MIT](licenses/powershell.md) | [![GitHub stars](https://img.shields.io/github/stars/PowerShell/PSScriptAnalyzer?cacheSeconds=3600)](https://github.com/PowerShell/PSScriptAnalyzer){target=_blank} | [POWERSHELL](descriptors/powershell_powershell.md) | :white_circle: | [Repository](https://github.com/PowerShell/PSScriptAnalyzer){target=_blank} |
| [**powershell_formatter**](https://github.com/PowerShell/PSScriptAnalyzer){target=_blank} | 7.3.6 | [MIT](licenses/powershell_formatter.md) | [![GitHub stars](https://img.shields.io/github/stars/PowerShell/PSScriptAnalyzer?cacheSeconds=3600)](https://github.com/PowerShell/PSScriptAnalyzer){target=_blank} | [POWERSHELL](descriptors/powershell_powershell_formatter.md) | :white_circle: | [Repository](https://github.com/PowerShell/PSScriptAnalyzer){target=_blank} |
@@ -83,7 +83,7 @@
| [**ruff**](https://github.com/charliermarsh/ruff){target=_blank} | 0.0.282 | [MIT](licenses/ruff.md) | [![GitHub stars](https://img.shields.io/github/stars/charliermarsh/ruff?cacheSeconds=3600)](https://github.com/charliermarsh/ruff){target=_blank} | [PYTHON](descriptors/python_ruff.md) | :white_circle: | [Repository](https://github.com/charliermarsh/ruff){target=_blank} |
| [**scalafix**](https://github.com/scalacenter/scalafix){target=_blank} | 0.11.0 | [Other](licenses/scalafix.md) | [![GitHub stars](https://img.shields.io/github/stars/scalacenter/scalafix?cacheSeconds=3600)](https://github.com/scalacenter/scalafix){target=_blank} | [SCALA](descriptors/scala_scalafix.md) | :heart: | [MegaLinter reference](https://scalacenter.github.io/scalafix/docs/users/installation.html#plugins-for-other-build-tools){target=_blank} |
| [**scss-lint**](https://github.com/sds/scss-lint){target=_blank} | 0.60.0 | [MIT](licenses/scss-lint.md) | [![GitHub stars](https://img.shields.io/github/stars/sds/scss-lint?cacheSeconds=3600)](https://github.com/sds/scss-lint){target=_blank} | [CSS](descriptors/css_scss_lint.md) | :white_circle: | [Repository](https://github.com/sds/scss-lint){target=_blank} |
-| [**secretlint**](https://github.com/secretlint/secretlint){target=_blank} | 7.0.3 | [MIT](licenses/secretlint.md) | [![GitHub stars](https://img.shields.io/github/stars/secretlint/secretlint?cacheSeconds=3600)](https://github.com/secretlint/secretlint){target=_blank} | [REPOSITORY](descriptors/repository_secretlint.md) | :heart: | [MegaLinter reference](https://github.com/secretlint/secretlint#mega-linter){target=_blank} |
+| [**secretlint**](https://github.com/secretlint/secretlint){target=_blank} | 7.0.6 | [MIT](licenses/secretlint.md) | [![GitHub stars](https://img.shields.io/github/stars/secretlint/secretlint?cacheSeconds=3600)](https://github.com/secretlint/secretlint){target=_blank} | [REPOSITORY](descriptors/repository_secretlint.md) | :heart: | [MegaLinter reference](https://github.com/secretlint/secretlint#mega-linter){target=_blank} |
| [**semgrep**](https://github.com/returntocorp/semgrep){target=_blank} | 1.34.1 | [LGPL-2.1](licenses/semgrep.md) | [![GitHub stars](https://img.shields.io/github/stars/returntocorp/semgrep?cacheSeconds=3600)](https://github.com/returntocorp/semgrep){target=_blank} | [REPOSITORY](descriptors/repository_semgrep.md) | :white_circle: | [Repository](https://github.com/returntocorp/semgrep){target=_blank} |
| [**sfdx-scanner-apex**](https://github.com/forcedotcom/sfdx-scanner){target=_blank} | 3.15.0 | [MIT](licenses/sfdx-scanner-apex.md) | [![GitHub stars](https://img.shields.io/github/stars/forcedotcom/sfdx-scanner?cacheSeconds=3600)](https://github.com/forcedotcom/sfdx-scanner){target=_blank} | [SALESFORCE](descriptors/salesforce_sfdx_scanner_apex.md) | :hammer_and_wrench: | [Pull Request](https://github.com/forcedotcom/sfdx-scanner/pull/307){target=_blank} |
| [**sfdx-scanner-aura**](https://github.com/forcedotcom/sfdx-scanner){target=_blank} | 3.15.0 | [MIT](licenses/sfdx-scanner-aura.md) | [![GitHub stars](https://img.shields.io/github/stars/forcedotcom/sfdx-scanner?cacheSeconds=3600)](https://github.com/forcedotcom/sfdx-scanner){target=_blank} | [SALESFORCE](descriptors/salesforce_sfdx_scanner_aura.md) | :hammer_and_wrench: | [Pull Request](https://github.com/forcedotcom/sfdx-scanner/pull/307){target=_blank} |
@@ -91,10 +91,10 @@
| [**shellcheck**](https://github.com/koalaman/shellcheck){target=_blank} | 0.9.0 | [GPL-3.0](licenses/shellcheck.md) | [![GitHub stars](https://img.shields.io/github/stars/koalaman/shellcheck?cacheSeconds=3600)](https://github.com/koalaman/shellcheck){target=_blank} | [BASH](descriptors/bash_shellcheck.md) | | [Repository](https://github.com/koalaman/shellcheck){target=_blank} |
| [**shfmt**](https://github.com/mvdan/sh){target=_blank} | 3.7.0 | [BSD-3-Clause](licenses/shfmt.md) | [![GitHub stars](https://img.shields.io/github/stars/mvdan/sh?cacheSeconds=3600)](https://github.com/mvdan/sh){target=_blank} | [BASH](descriptors/bash_shfmt.md) | :no_entry_sign: | [Repository](https://github.com/mvdan/sh){target=_blank} |
| [**snakefmt**](https://github.com/snakemake/snakefmt){target=_blank} | 0.8.4 | [MIT](licenses/snakefmt.md) | [![GitHub stars](https://img.shields.io/github/stars/snakemake/snakefmt?cacheSeconds=3600)](https://github.com/snakemake/snakefmt){target=_blank} | [SNAKEMAKE](descriptors/snakemake_snakefmt.md) | :white_circle: | [Repository](https://github.com/snakemake/snakefmt){target=_blank} |
-| [**snakemake**](https://github.com/snakemake/snakemake){target=_blank} | 7.32.0 | [MIT](licenses/snakemake.md) | [![GitHub stars](https://img.shields.io/github/stars/snakemake/snakemake?cacheSeconds=3600)](https://github.com/snakemake/snakemake){target=_blank} | [SNAKEMAKE](descriptors/snakemake_snakemake.md) | :white_circle: | [Repository](https://github.com/snakemake/snakemake){target=_blank} |
-| [**spectral**](https://github.com/stoplightio/spectral){target=_blank} | 6.10.0 | [Apache-2.0](licenses/spectral.md) | [![GitHub stars](https://img.shields.io/github/stars/stoplightio/spectral?cacheSeconds=3600)](https://github.com/stoplightio/spectral){target=_blank} | [OPENAPI](descriptors/openapi_spectral.md) | :white_circle: | [Repository](https://github.com/stoplightio/spectral){target=_blank} |
+| [**snakemake**](https://github.com/snakemake/snakemake){target=_blank} | 7.32.1 | [MIT](licenses/snakemake.md) | [![GitHub stars](https://img.shields.io/github/stars/snakemake/snakemake?cacheSeconds=3600)](https://github.com/snakemake/snakemake){target=_blank} | [SNAKEMAKE](descriptors/snakemake_snakemake.md) | :white_circle: | [Repository](https://github.com/snakemake/snakemake){target=_blank} |
+| [**spectral**](https://github.com/stoplightio/spectral){target=_blank} | 6.10.1 | [Apache-2.0](licenses/spectral.md) | [![GitHub stars](https://img.shields.io/github/stars/stoplightio/spectral?cacheSeconds=3600)](https://github.com/stoplightio/spectral){target=_blank} | [OPENAPI](descriptors/openapi_spectral.md) | :white_circle: | [Repository](https://github.com/stoplightio/spectral){target=_blank} |
| [**sql-lint**](https://github.com/joereynolds/sql-lint){target=_blank} | 1.0.0 | [MIT](licenses/sql-lint.md) | [![GitHub stars](https://img.shields.io/github/stars/joereynolds/sql-lint?cacheSeconds=3600)](https://github.com/joereynolds/sql-lint){target=_blank} | [SQL](descriptors/sql_sql_lint.md) | :white_circle: | [Repository](https://github.com/joereynolds/sql-lint){target=_blank} |
-| [**sqlfluff**](https://github.com/sqlfluff/sqlfluff){target=_blank} | 2.1.4 | [MIT](licenses/sqlfluff.md) | [![GitHub stars](https://img.shields.io/github/stars/sqlfluff/sqlfluff?cacheSeconds=3600)](https://github.com/sqlfluff/sqlfluff){target=_blank} | [SQL](descriptors/sql_sqlfluff.md) | :white_circle: | [Repository](https://github.com/sqlfluff/sqlfluff){target=_blank} |
+| [**sqlfluff**](https://github.com/sqlfluff/sqlfluff){target=_blank} | 2.2.0 | [MIT](licenses/sqlfluff.md) | [![GitHub stars](https://img.shields.io/github/stars/sqlfluff/sqlfluff?cacheSeconds=3600)](https://github.com/sqlfluff/sqlfluff){target=_blank} | [SQL](descriptors/sql_sqlfluff.md) | :white_circle: | [Repository](https://github.com/sqlfluff/sqlfluff){target=_blank} |
| [**standard**](https://github.com/standard/standard){target=_blank} | 17.1.0 | [MIT](licenses/standard.md) | [![GitHub stars](https://img.shields.io/github/stars/standard/standard?cacheSeconds=3600)](https://github.com/standard/standard){target=_blank} | [JAVASCRIPT](descriptors/javascript_standard.md) | :white_circle: | [Repository](https://github.com/standard/standard){target=_blank} |
| [**stylelint**](https://github.com/stylelint/stylelint){target=_blank} | 15.10.2 | [MIT](licenses/stylelint.md) | [![GitHub stars](https://img.shields.io/github/stars/stylelint/stylelint?cacheSeconds=3600)](https://github.com/stylelint/stylelint){target=_blank} | [CSS](descriptors/css_stylelint.md) | :white_circle: | [Repository](https://github.com/stylelint/stylelint){target=_blank} |
| [**swiftlint**](https://github.com/realm/SwiftLint){target=_blank} | 0.52.4 | [MIT](licenses/swiftlint.md) | [![GitHub stars](https://img.shields.io/github/stars/realm/SwiftLint?cacheSeconds=3600)](https://github.com/realm/SwiftLint){target=_blank} | [SWIFT](descriptors/swift_swiftlint.md) | :white_circle: | [Repository](https://github.com/realm/SwiftLint){target=_blank} |
diff --git a/docs/assets/icons/linters/ansible-lint.png b/docs/assets/icons/linters/ansible-lint.png
new file mode 100644
index 00000000000..106bed60ebe
Binary files /dev/null and b/docs/assets/icons/linters/ansible-lint.png differ
diff --git a/docs/assets/icons/linters/ansible-lint.svg b/docs/assets/icons/linters/ansible-lint.svg
new file mode 100644
index 00000000000..2574f93e2db
--- /dev/null
+++ b/docs/assets/icons/linters/ansible-lint.svg
@@ -0,0 +1,109 @@
+
+
+
+
diff --git a/docs/assets/icons/linters/bandit.png b/docs/assets/icons/linters/bandit.png
new file mode 100644
index 00000000000..64da8fe628a
Binary files /dev/null and b/docs/assets/icons/linters/bandit.png differ
diff --git a/docs/assets/icons/linters/bash-exec.png b/docs/assets/icons/linters/bash-exec.png
new file mode 100644
index 00000000000..3b96951b205
Binary files /dev/null and b/docs/assets/icons/linters/bash-exec.png differ
diff --git a/docs/assets/icons/linters/cfn-lint.png b/docs/assets/icons/linters/cfn-lint.png
new file mode 100644
index 00000000000..8560a27ff30
Binary files /dev/null and b/docs/assets/icons/linters/cfn-lint.png differ
diff --git a/docs/assets/icons/linters/checkov.png b/docs/assets/icons/linters/checkov.png
new file mode 100644
index 00000000000..6d6fb0950a1
Binary files /dev/null and b/docs/assets/icons/linters/checkov.png differ
diff --git a/docs/assets/icons/linters/devskim.png b/docs/assets/icons/linters/devskim.png
new file mode 100644
index 00000000000..b8fcf8c7deb
Binary files /dev/null and b/docs/assets/icons/linters/devskim.png differ
diff --git a/docs/assets/icons/linters/dustilock.png b/docs/assets/icons/linters/dustilock.png
new file mode 100644
index 00000000000..7f99502848e
Binary files /dev/null and b/docs/assets/icons/linters/dustilock.png differ
diff --git a/docs/assets/icons/linters/gitleaks.png b/docs/assets/icons/linters/gitleaks.png
new file mode 100644
index 00000000000..7f4a16cd2a8
Binary files /dev/null and b/docs/assets/icons/linters/gitleaks.png differ
diff --git a/docs/assets/icons/linters/grype.png b/docs/assets/icons/linters/grype.png
new file mode 100644
index 00000000000..deb30123d9e
Binary files /dev/null and b/docs/assets/icons/linters/grype.png differ
diff --git a/docs/assets/icons/linters/hadolint.png b/docs/assets/icons/linters/hadolint.png
new file mode 100644
index 00000000000..3612d4845ce
Binary files /dev/null and b/docs/assets/icons/linters/hadolint.png differ
diff --git a/docs/assets/icons/linters/helm.png b/docs/assets/icons/linters/helm.png
new file mode 100644
index 00000000000..94a2681dce1
Binary files /dev/null and b/docs/assets/icons/linters/helm.png differ
diff --git a/docs/assets/icons/linters/helm.svg b/docs/assets/icons/linters/helm.svg
new file mode 100644
index 00000000000..1e2db8a2e6e
--- /dev/null
+++ b/docs/assets/icons/linters/helm.svg
@@ -0,0 +1,28 @@
+
+
diff --git a/docs/assets/icons/linters/kics.png b/docs/assets/icons/linters/kics.png
new file mode 100644
index 00000000000..6fe9a8fc096
Binary files /dev/null and b/docs/assets/icons/linters/kics.png differ
diff --git a/docs/assets/icons/linters/kubeconform.png b/docs/assets/icons/linters/kubeconform.png
new file mode 100644
index 00000000000..81e57c0c98b
Binary files /dev/null and b/docs/assets/icons/linters/kubeconform.png differ
diff --git a/docs/assets/icons/linters/kubescape.png b/docs/assets/icons/linters/kubescape.png
new file mode 100644
index 00000000000..f6f3b71a638
Binary files /dev/null and b/docs/assets/icons/linters/kubescape.png differ
diff --git a/docs/assets/icons/linters/kubescape.svg b/docs/assets/icons/linters/kubescape.svg
new file mode 100644
index 00000000000..d0688d1b43b
--- /dev/null
+++ b/docs/assets/icons/linters/kubescape.svg
@@ -0,0 +1,78 @@
+
+
+
diff --git a/docs/assets/icons/linters/secretlint.png b/docs/assets/icons/linters/secretlint.png
new file mode 100644
index 00000000000..ffc3372fee5
Binary files /dev/null and b/docs/assets/icons/linters/secretlint.png differ
diff --git a/docs/assets/icons/linters/semgrep.png b/docs/assets/icons/linters/semgrep.png
new file mode 100644
index 00000000000..6f09bd3936e
Binary files /dev/null and b/docs/assets/icons/linters/semgrep.png differ
diff --git a/docs/assets/icons/linters/semgrep.svg b/docs/assets/icons/linters/semgrep.svg
new file mode 100644
index 00000000000..e7ba2c338ec
--- /dev/null
+++ b/docs/assets/icons/linters/semgrep.svg
@@ -0,0 +1,7 @@
+
diff --git a/docs/assets/icons/linters/shellcheck.png b/docs/assets/icons/linters/shellcheck.png
new file mode 100644
index 00000000000..d433f4a6c2e
Binary files /dev/null and b/docs/assets/icons/linters/shellcheck.png differ
diff --git a/docs/assets/icons/linters/syft.png b/docs/assets/icons/linters/syft.png
new file mode 100644
index 00000000000..6eae4ff1425
Binary files /dev/null and b/docs/assets/icons/linters/syft.png differ
diff --git a/docs/assets/icons/linters/terragrunt.png b/docs/assets/icons/linters/terragrunt.png
new file mode 100644
index 00000000000..dd799086ccc
Binary files /dev/null and b/docs/assets/icons/linters/terragrunt.png differ
diff --git a/docs/assets/icons/linters/terrascan.png b/docs/assets/icons/linters/terrascan.png
new file mode 100644
index 00000000000..a9ad7027061
Binary files /dev/null and b/docs/assets/icons/linters/terrascan.png differ
diff --git a/docs/assets/icons/linters/tflint.png b/docs/assets/icons/linters/tflint.png
new file mode 100644
index 00000000000..2f544af11cc
Binary files /dev/null and b/docs/assets/icons/linters/tflint.png differ
diff --git a/docs/assets/icons/linters/trivy-sbom.png b/docs/assets/icons/linters/trivy-sbom.png
new file mode 100644
index 00000000000..d171b06314d
Binary files /dev/null and b/docs/assets/icons/linters/trivy-sbom.png differ
diff --git a/docs/assets/icons/linters/trivy-sbom.svg b/docs/assets/icons/linters/trivy-sbom.svg
new file mode 100644
index 00000000000..48f326c8d6c
--- /dev/null
+++ b/docs/assets/icons/linters/trivy-sbom.svg
@@ -0,0 +1,149 @@
+
+
diff --git a/docs/assets/icons/linters/trivy.png b/docs/assets/icons/linters/trivy.png
new file mode 100644
index 00000000000..d171b06314d
Binary files /dev/null and b/docs/assets/icons/linters/trivy.png differ
diff --git a/docs/assets/icons/linters/trivy.svg b/docs/assets/icons/linters/trivy.svg
new file mode 100644
index 00000000000..48f326c8d6c
--- /dev/null
+++ b/docs/assets/icons/linters/trivy.svg
@@ -0,0 +1,149 @@
+
+
diff --git a/docs/assets/icons/linters/trufflehog.png b/docs/assets/icons/linters/trufflehog.png
new file mode 100644
index 00000000000..a5626caa203
Binary files /dev/null and b/docs/assets/icons/linters/trufflehog.png differ
diff --git a/docs/descriptors/kubernetes_kubescape.md b/docs/descriptors/kubernetes_kubescape.md
index 576c1a00d1d..cb9c9bd5768 100644
--- a/docs/descriptors/kubernetes_kubescape.md
+++ b/docs/descriptors/kubernetes_kubescape.md
@@ -123,7 +123,7 @@ Available Commands:
completion Generate autocompletion script
config Handle cached configurations
delete Delete configurations in Kubescape SaaS version
- download Download exceptions,control,framework,artifacts,attack-tracks,controls-inputs
+ download Download framework,artifacts,attack-tracks,controls-inputs,exceptions,control
fix Fix misconfiguration in files
help Help about any command
list List frameworks/controls will list the supported frameworks and controls
diff --git a/docs/descriptors/openapi_spectral.md b/docs/descriptors/openapi_spectral.md
index 7626ec0ad6b..f5fdbbac515 100644
--- a/docs/descriptors/openapi_spectral.md
+++ b/docs/descriptors/openapi_spectral.md
@@ -15,7 +15,7 @@ description: How to use spectral (configure, ignore files, ignore errors, help &
## spectral documentation
-- Version in MegaLinter: **6.10.0**
+- Version in MegaLinter: **6.10.1**
- Visit [Official Web Site](https://meta.stoplight.io/docs/spectral/README.md){target=_blank}
- See [How to configure spectral rules](https://meta.stoplight.io/docs/spectral/docs/getting-started/3-rulesets.md){target=_blank}
- If custom `.openapirc.yml` config file isn't found, [.openapirc.yml](https://github.com/oxsecurity/megalinter/tree/main/TEMPLATES/.openapirc.yml){target=_blank} will be used
diff --git a/docs/descriptors/php_phpstan.md b/docs/descriptors/php_phpstan.md
index 4e8677adbbc..8d0994fe373 100644
--- a/docs/descriptors/php_phpstan.md
+++ b/docs/descriptors/php_phpstan.md
@@ -9,7 +9,7 @@ description: How to use phpstan (configure, ignore files, ignore errors, help &
## phpstan documentation
-- Version in MegaLinter: **1.10.26**
+- Version in MegaLinter: **1.10.27**
- Visit [Official Web Site](https://phpstan.org/){target=_blank}
- See [How to configure phpstan rules](https://phpstan.org/config-reference#neon-format){target=_blank}
- If custom `phpstan.neon.dist` config file isn't found, [phpstan.neon.dist](https://github.com/oxsecurity/megalinter/tree/main/TEMPLATES/phpstan.neon.dist){target=_blank} will be used
diff --git a/docs/descriptors/repository_checkov.md b/docs/descriptors/repository_checkov.md
index 7b7f4cfd4bc..d09748f9377 100644
--- a/docs/descriptors/repository_checkov.md
+++ b/docs/descriptors/repository_checkov.md
@@ -15,7 +15,7 @@ description: How to use checkov (configure, ignore files, ignore errors, help &
## checkov documentation
-- Version in MegaLinter: **2.3.356**
+- Version in MegaLinter: **2.3.358**
- Visit [Official Web Site](https://www.checkov.io/){target=_blank}
- See [How to configure checkov rules](https://github.com/bridgecrewio/checkov#configuration-using-a-config-file){target=_blank}
- If custom `.checkov.yml` config file isn't found, [.checkov.yml](https://github.com/oxsecurity/megalinter/tree/main/TEMPLATES/.checkov.yml){target=_blank} will be used
@@ -133,7 +133,7 @@ usage: checkov [-h] [-v] [--support] [-d DIRECTORY] [--add-check]
[--secrets-scan-file-type SECRETS_SCAN_FILE_TYPE]
[--enable-secret-scan-all-files]
[--block-list-secret-scan BLOCK_LIST_SECRET_SCAN]
- [--summary-position {bottom,top}]
+ [--summary-position {top,bottom}]
[--skip-resources-without-violations] [--deep-analysis]
[--no-fail-on-crash] [--mask MASK] [--scan-secrets-history]
[--secrets-history-timeout SECRETS_HISTORY_TIMEOUT]
@@ -404,7 +404,7 @@ options:
--block-list-secret-scan BLOCK_LIST_SECRET_SCAN
List of files to filter out from the secret scanner
[env var: CKV_SECRETS_SCAN_BLOCK_LIST]
- --summary-position {bottom,top}
+ --summary-position {top,bottom}
Chose whether the summary will be appended on top
(before the checks results) or on bottom (after check
results), default is on top.
diff --git a/docs/descriptors/repository_devskim.md b/docs/descriptors/repository_devskim.md
index d0c0e4145f3..d499db1433b 100644
--- a/docs/descriptors/repository_devskim.md
+++ b/docs/descriptors/repository_devskim.md
@@ -14,7 +14,7 @@ Example:
## devskim documentation
-- Version in MegaLinter: **1.0.15**
+- Version in MegaLinter: **1.0.16**
- Visit [Official Web Site](https://github.com/microsoft/DevSkim#readme){target=_blank}
- See [How to configure devskim rules](https://github.com/microsoft/DevSkim/wiki/Analyze-Command){target=_blank}
- See [How to ignore files and directories with devskim](https://github.com/microsoft/DevSkim/wiki/Analyze-Command){target=_blank}
@@ -82,7 +82,7 @@ devskim analyze --file-format sarif .
### Help content
```shell
-devskim 1.0.15+ed9da84756
+devskim 1.0.16+e3d6c3bd52
© Microsoft Corporation. All rights reserved.
analyze Analyze source code using DevSkim
diff --git a/docs/descriptors/repository_secretlint.md b/docs/descriptors/repository_secretlint.md
index 8d415f1bf75..e4e0c7fa24e 100644
--- a/docs/descriptors/repository_secretlint.md
+++ b/docs/descriptors/repository_secretlint.md
@@ -15,7 +15,7 @@ description: How to use secretlint (configure, ignore files, ignore errors, help
## secretlint documentation
-- Version in MegaLinter: **7.0.3**
+- Version in MegaLinter: **7.0.6**
- Visit [Official Web Site](https://github.com/secretlint/secretlint#readme){target=_blank}
- See [How to configure secretlint rules](https://github.com/secretlint/secretlint#configuration){target=_blank}
- If custom `.secretlintrc.json` config file isn't found, [.secretlintrc.json](https://github.com/oxsecurity/megalinter/tree/main/TEMPLATES/.secretlintrc.json){target=_blank} will be used
diff --git a/docs/descriptors/salesforce_sfdx_scanner_apex.md b/docs/descriptors/salesforce_sfdx_scanner_apex.md
index 36454c10e4d..9b252edc582 100644
--- a/docs/descriptors/salesforce_sfdx_scanner_apex.md
+++ b/docs/descriptors/salesforce_sfdx_scanner_apex.md
@@ -163,7 +163,7 @@ COMMANDS
scanner run dfa scan codebase with all DFA rules
WARNING: We're continually improving Salesforce Code Analyzer. Tell us what you think! Give feedback at https://research.net/r/SalesforceCA
-(node:1532) Warning: Deprecated config name: apiVersion. Please use org-api-version instead.
+(node:1529) Warning: Deprecated config name: apiVersion. Please use org-api-version instead.
(Use `node --trace-warnings ...` to show where the warning was created)
NAME LANGUAGES CATEGORIES RULESETS [DEP] ENGINE IS DFA IS PILOT
────────────────────────────────────────────────────── ─────────── ───────────────────── ──────────────────────────────────────────────── ───────────────── ────── ────────
diff --git a/docs/descriptors/salesforce_sfdx_scanner_aura.md b/docs/descriptors/salesforce_sfdx_scanner_aura.md
index a4f3fa1b1b5..3e224c25a0e 100644
--- a/docs/descriptors/salesforce_sfdx_scanner_aura.md
+++ b/docs/descriptors/salesforce_sfdx_scanner_aura.md
@@ -159,7 +159,7 @@ COMMANDS
scanner run dfa scan codebase with all DFA rules
WARNING: We're continually improving Salesforce Code Analyzer. Tell us what you think! Give feedback at https://research.net/r/SalesforceCA
-(node:1673) Warning: Deprecated config name: apiVersion. Please use org-api-version instead.
+(node:1670) Warning: Deprecated config name: apiVersion. Please use org-api-version instead.
(Use `node --trace-warnings ...` to show where the warning was created)
NAME LANGUAGES CATEGORIES RULESETS [DEP] ENGINE IS DFA IS PILOT
────────────────────────────────────────────────────── ─────────── ───────────────────── ──────────────────────────────────────────────── ───────────────── ────── ────────
diff --git a/docs/descriptors/salesforce_sfdx_scanner_lwc.md b/docs/descriptors/salesforce_sfdx_scanner_lwc.md
index 49ac98bb922..7770540df15 100644
--- a/docs/descriptors/salesforce_sfdx_scanner_lwc.md
+++ b/docs/descriptors/salesforce_sfdx_scanner_lwc.md
@@ -159,7 +159,7 @@ COMMANDS
scanner run dfa scan codebase with all DFA rules
WARNING: We're continually improving Salesforce Code Analyzer. Tell us what you think! Give feedback at https://research.net/r/SalesforceCA
-(node:1814) Warning: Deprecated config name: apiVersion. Please use org-api-version instead.
+(node:1811) Warning: Deprecated config name: apiVersion. Please use org-api-version instead.
(Use `node --trace-warnings ...` to show where the warning was created)
NAME LANGUAGES CATEGORIES RULESETS [DEP] ENGINE IS DFA IS PILOT
────────────────────────────────────────────────────── ─────────── ───────────────────── ──────────────────────────────────────────────── ───────────────── ────── ────────
diff --git a/docs/descriptors/snakemake_snakemake.md b/docs/descriptors/snakemake_snakemake.md
index d8aa662b3d4..51bbaff045b 100644
--- a/docs/descriptors/snakemake_snakemake.md
+++ b/docs/descriptors/snakemake_snakemake.md
@@ -15,7 +15,7 @@ description: How to use snakemake (configure, ignore files, ignore errors, help
## snakemake documentation
-- Version in MegaLinter: **7.32.0**
+- Version in MegaLinter: **7.32.1**
- Visit [Official Web Site](https://snakemake.readthedocs.io/en/stable/){target=_blank}
[![snakemake - GitHub](https://gh-card.dev/repos/snakemake/snakemake.svg?fullname=)](https://github.com/snakemake/snakemake){target=_blank}
@@ -238,8 +238,7 @@ EXECUTION:
Note that in such cases, the arguments may be given as
nested YAML mappings in the profile, e.g. 'set-
threads: myrule: 4' instead of 'set-threads:
- myrule=4'. [env var: SNAKEMAKE_PROFILE] (default:
- None)
+ myrule=4'. (default: None)
--cache [RULE ...] Store output files of given rules in a central cache
given by the environment variable
$SNAKEMAKE_OUTPUT_CACHE. Likewise, retrieve output
@@ -250,10 +249,10 @@ EXECUTION:
parameters and software stack (conda envs or
containers) needed to create them. (default: None)
--snakefile FILE, -s FILE
- The workflow definition in form of a
- snakefile.Usually, you should not need to specify
- this. By default, Snakemake will search for
- 'Snakefile', 'snakefile', 'workflow/Snakefile',
+ The workflow definition in form of a snakefile.
+ Usually, you should not need to specify this. By
+ default, Snakemake will search for 'Snakefile',
+ 'snakefile', 'workflow/Snakefile',
'workflow/snakefile' beneath the current working
directory, in this order. Only if you definitely want
a different layout, you need to use this parameter.
@@ -359,7 +358,7 @@ EXECUTION:
--preemption-default PREEMPTION_DEFAULT
A preemptible instance can be requested when using the
Google Life Sciences API. If you set a --preemption-
- default,all rules will be subject to the default.
+ default, all rules will be subject to the default.
Specifically, this integer is the number of restart
attempts that will be made given that the instance is
killed unexpectedly. Note that preemptible instances
@@ -850,13 +849,13 @@ BEHAVIOR:
--log-handler-script FILE
Provide a custom script containing a function 'def
log_handler(msg):'. Snakemake will call this function
- for every logging output (given as a dictionary
- msg)allowing to e.g. send notifications in the form of
+ for every logging output (given as a dictionary msg)
+ allowing to e.g. send notifications in the form of
e.g. slack messages or emails. (default: None)
--log-service {none,slack,wms}
- Set a specific messaging service for logging
- output.Snakemake will notify the service on errors and
- completed execution.Currently slack and workflow
+ Set a specific messaging service for logging output.
+ Snakemake will notify the service on errors and
+ completed execution. Currently slack and workflow
management system (wms) are supported. (default: None)
SLURM:
@@ -883,8 +882,8 @@ CLUSTER:
snakemake --cluster 'qsub -pe threaded {threads}'.
(default: None)
--cluster-sync CMD cluster submission command will block, returning the
- remote exitstatus upon remote termination (for
- example, this should be usedif the cluster command is
+ remote exit status upon remote termination (for
+ example, this should be used if the cluster command is
'qsub -sync y' (SGE) (default: None)
--drmaa [ARGS] Execute snakemake on a cluster accessed via DRMAA,
Snakemake compiles jobs into scripts that are
@@ -898,7 +897,7 @@ CLUSTER:
with a leading whitespace. (default: None)
--cluster-config FILE, -u FILE
A JSON or YAML file that defines the wildcards used in
- 'cluster'for specific rules, instead of having them
+ 'cluster' for specific rules, instead of having them
specified in the Snakefile. For example, for rule
'job' you may define: { 'job' : { 'time' : '24:00:00'
} } to specify the time for rule 'job'. You can
@@ -1065,7 +1064,7 @@ TIBANNA:
(default: False)
--tibanna-sfn TIBANNA_SFN
Name of Tibanna Unicorn step function (e.g.
- tibanna_unicorn_monty).This works as serverless
+ tibanna_unicorn_monty). This works as serverless
scheduler/resource allocator and must be deployed
first using tibanna cli. (e.g. tibanna deploy_unicorn
--usergroup=monty --buckets=bucketname) (default:
@@ -1138,7 +1137,7 @@ SINGULARITY:
directive is ignored. (default: False)
--singularity-prefix DIR
Specify a directory in which singularity images will
- be stored.If not supplied, the value is set to the
+ be stored. If not supplied, the value is set to the
'.snakemake' directory relative to the invocation
directory. If supplied, the `--use-singularity` flag
must also be set. The value may be given as a relative
diff --git a/docs/descriptors/sql_sqlfluff.md b/docs/descriptors/sql_sqlfluff.md
index fd846b9945b..aec6b7ed5c7 100644
--- a/docs/descriptors/sql_sqlfluff.md
+++ b/docs/descriptors/sql_sqlfluff.md
@@ -15,7 +15,7 @@ description: How to use sqlfluff (configure, ignore files, ignore errors, help &
## sqlfluff documentation
-- Version in MegaLinter: **2.1.4**
+- Version in MegaLinter: **2.2.0**
- Visit [Official Web Site](https://www.sqlfluff.com/){target=_blank}
- See [How to configure sqlfluff rules](https://docs.sqlfluff.com/en/stable/configuration.html){target=_blank}
- If custom `.sqlfluff` config file isn't found, [.sqlfluff](https://github.com/oxsecurity/megalinter/tree/main/TEMPLATES/.sqlfluff){target=_blank} will be used
diff --git a/docs/used-by-stats.md b/docs/used-by-stats.md
index 20e19e31c95..4e9d21600ed 100644
--- a/docs/used-by-stats.md
+++ b/docs/used-by-stats.md
@@ -1,32 +1,32 @@
# Dependents stats for oxsecurity/megalinter
-[![](https://img.shields.io/static/v1?label=Used%20by&message=2645&color=informational&logo=slickpic)](https://github.com/oxsecurity/megalinter/network/dependents)
-[![](https://img.shields.io/static/v1?label=Used%20by%20(public)&message=1792&color=informational&logo=slickpic)](https://github.com/oxsecurity/megalinter/network/dependents)
-[![](https://img.shields.io/static/v1?label=Used%20by%20(private)&message=853&color=informational&logo=slickpic)](https://github.com/oxsecurity/megalinter/network/dependents)
-[![](https://img.shields.io/static/v1?label=Used%20by%20(stars)&message=68440&color=informational&logo=slickpic)](https://github.com/oxsecurity/megalinter/network/dependents)
+[![](https://img.shields.io/static/v1?label=Used%20by&message=2650&color=informational&logo=slickpic)](https://github.com/oxsecurity/megalinter/network/dependents)
+[![](https://img.shields.io/static/v1?label=Used%20by%20(public)&message=1795&color=informational&logo=slickpic)](https://github.com/oxsecurity/megalinter/network/dependents)
+[![](https://img.shields.io/static/v1?label=Used%20by%20(private)&message=855&color=informational&logo=slickpic)](https://github.com/oxsecurity/megalinter/network/dependents)
+[![](https://img.shields.io/static/v1?label=Used%20by%20(stars)&message=67939&color=informational&logo=slickpic)](https://github.com/oxsecurity/megalinter/network/dependents)
| Repository | Stars |
|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------:|
-| [nektos/act](https://github.com/nektos/act) | 41411 |
-| [PRQL/prql](https://github.com/PRQL/prql) | 8386 |
-| [stepancheg/rust-protobuf](https://github.com/stepancheg/rust-protobuf) | 2478 |
-| [dorssel/usbipd-win](https://github.com/dorssel/usbipd-win) | 2205 |
-| [IlanCosman/tide](https://github.com/IlanCosman/tide) | 2105 |
-| [PowerDNS-Admin/PowerDNS-Admin](https://github.com/PowerDNS-Admin/PowerDNS-Admin) | 2075 |
-| [microsoft/code-with-engineering-playbook](https://github.com/microsoft/code-with-engineering-playbook) | 1764 |
-| [oxsecurity/megalinter](https://github.com/oxsecurity/megalinter) | 1383 |
-| [ever-co/ever-gauzy](https://github.com/ever-co/ever-gauzy) | 1292 |
+| [nektos/act](https://github.com/nektos/act) | 41594 |
+| [PRQL/prql](https://github.com/PRQL/prql) | 8405 |
+| [stepancheg/rust-protobuf](https://github.com/stepancheg/rust-protobuf) | 2480 |
+| [dorssel/usbipd-win](https://github.com/dorssel/usbipd-win) | 2212 |
+| [IlanCosman/tide](https://github.com/IlanCosman/tide) | 2111 |
+| [PowerDNS-Admin/PowerDNS-Admin](https://github.com/PowerDNS-Admin/PowerDNS-Admin) | 2074 |
+| [microsoft/code-with-engineering-playbook](https://github.com/microsoft/code-with-engineering-playbook) | 1766 |
+| [oxsecurity/megalinter](https://github.com/oxsecurity/megalinter) | 1384 |
+| [ever-co/ever-gauzy](https://github.com/ever-co/ever-gauzy) | 1299 |
| [flosse/sloc](https://github.com/flosse/sloc) | 935 |
| [unixorn/git-extra-commands](https://github.com/unixorn/git-extra-commands) | 902 |
-| [unixorn/zsh-quickstart-kit](https://github.com/unixorn/zsh-quickstart-kit) | 665 |
+| [unixorn/zsh-quickstart-kit](https://github.com/unixorn/zsh-quickstart-kit) | 667 |
+| [ministryofjustice/modernisation-platform](https://github.com/ministryofjustice/modernisation-platform) | 626 |
| [secureCodeBox/secureCodeBox](https://github.com/secureCodeBox/secureCodeBox) | 614 |
-| [ministryofjustice/modernisation-platform](https://github.com/ministryofjustice/modernisation-platform) | 598 |
-| [awslabs/aws-deployment-framework](https://github.com/awslabs/aws-deployment-framework) | 579 |
-| [meichthys/foss_photo_libraries](https://github.com/meichthys/foss_photo_libraries) | 571 |
-| [Romanitho/Winget-AutoUpdate](https://github.com/Romanitho/Winget-AutoUpdate) | 565 |
+| [awslabs/aws-deployment-framework](https://github.com/awslabs/aws-deployment-framework) | 580 |
+| [meichthys/foss_photo_libraries](https://github.com/meichthys/foss_photo_libraries) | 572 |
+| [Romanitho/Winget-AutoUpdate](https://github.com/Romanitho/Winget-AutoUpdate) | 569 |
| [cattle-ops/terraform-aws-gitlab-runner](https://github.com/cattle-ops/terraform-aws-gitlab-runner) | 511 |
| [practicalli/clojure-cli-config](https://github.com/practicalli/clojure-cli-config) | 465 |
-| [ruzickap/packer-templates](https://github.com/ruzickap/packer-templates) | 394 |
+| [ruzickap/packer-templates](https://github.com/ruzickap/packer-templates) | 395 |
| [llaville/php-compatinfo](https://github.com/llaville/php-compatinfo) | 364 |
| [xUnholy/k8s-gitops](https://github.com/xUnholy/k8s-gitops) | 364 |
| [bjw-s/home-ops](https://github.com/bjw-s/home-ops) | 344 |
@@ -34,14 +34,14 @@
| [ahmadnassri/action-dependabot-auto-merge](https://github.com/ahmadnassri/action-dependabot-auto-merge) | 310 |
| [OCSInventory-NG/OCSInventory-Server](https://github.com/OCSInventory-NG/OCSInventory-Server) | 309 |
| [leosuncin/nest-auth-example](https://github.com/leosuncin/nest-auth-example) | 287 |
-| [neon-mmd/websurfx](https://github.com/neon-mmd/websurfx) | 220 |
+| [neon-mmd/websurfx](https://github.com/neon-mmd/websurfx) | 219 |
| [OCSInventory-NG/OCSInventory-ocsreports](https://github.com/OCSInventory-NG/OCSInventory-ocsreports) | 208 |
| [toboshii/home-ops](https://github.com/toboshii/home-ops) | 206 |
| [pantheon-systems/documentation](https://github.com/pantheon-systems/documentation) | 182 |
| [unixorn/fzf-zsh-plugin](https://github.com/unixorn/fzf-zsh-plugin) | 178 |
-| [carpenike/k8s-gitops](https://github.com/carpenike/k8s-gitops) | 164 |
-| [MarketSquare/robotframework-robocop](https://github.com/MarketSquare/robotframework-robocop) | 155 |
-| [nvuillam/npm-groovy-lint](https://github.com/nvuillam/npm-groovy-lint) | 154 |
+| [carpenike/k8s-gitops](https://github.com/carpenike/k8s-gitops) | 167 |
+| [MarketSquare/robotframework-robocop](https://github.com/MarketSquare/robotframework-robocop) | 156 |
+| [nvuillam/npm-groovy-lint](https://github.com/nvuillam/npm-groovy-lint) | 155 |
| [Luzkan/smells](https://github.com/Luzkan/smells) | 154 |
| [unixorn/tumult.plugin.zsh](https://github.com/unixorn/tumult.plugin.zsh) | 153 |
| [T145/black-mirror](https://github.com/T145/black-mirror) | 147 |
@@ -53,35 +53,35 @@
| [practicalli/spacemacs](https://github.com/practicalli/spacemacs) | 103 |
| [oasisprotocol/oasis-wallet-web](https://github.com/oasisprotocol/oasis-wallet-web) | 94 |
| [unixorn/lima-xbar-plugin](https://github.com/unixorn/lima-xbar-plugin) | 90 |
-| [IQEngine/IQEngine](https://github.com/IQEngine/IQEngine) | 87 |
+| [IQEngine/IQEngine](https://github.com/IQEngine/IQEngine) | 88 |
| [Azure/ARO-RP](https://github.com/Azure/ARO-RP) | 81 |
| [szinn/k8s-homelab](https://github.com/szinn/k8s-homelab) | 81 |
| [rasa/scoops](https://github.com/rasa/scoops) | 74 |
| [hardisgroupcom/sfdx-hardis](https://github.com/hardisgroupcom/sfdx-hardis) | 73 |
| [Quantum-Accelerators/quacc](https://github.com/Quantum-Accelerators/quacc) | 72 |
-| [practicalli/clojure](https://github.com/practicalli/clojure) | 69 |
+| [practicalli/clojure](https://github.com/practicalli/clojure) | 70 |
| [davidB/tracing-opentelemetry-instrumentation-sdk](https://github.com/davidB/tracing-opentelemetry-instrumentation-sdk) | 63 |
-| [nvuillam/vscode-groovy-lint](https://github.com/nvuillam/vscode-groovy-lint) | 61 |
+| [nvuillam/vscode-groovy-lint](https://github.com/nvuillam/vscode-groovy-lint) | 62 |
| [unixorn/warhol.plugin.zsh](https://github.com/unixorn/warhol.plugin.zsh) | 56 |
| [ahmadnassri/docker-vscode-server](https://github.com/ahmadnassri/docker-vscode-server) | 55 |
| [llaville/umlwriter](https://github.com/llaville/umlwriter) | 54 |
| [ahmadnassri/node-glob-promise](https://github.com/ahmadnassri/node-glob-promise) | 53 |
| [stepancheg/rust-tls-api](https://github.com/stepancheg/rust-tls-api) | 49 |
| [Azure/benchpress](https://github.com/Azure/benchpress) | 47 |
+| [Amplitude-Developer-Docs/amplitude-dev-center](https://github.com/Amplitude-Developer-Docs/amplitude-dev-center) | 45 |
| [nvuillam/sfdx-essentials](https://github.com/nvuillam/sfdx-essentials) | 45 |
-| [Amplitude-Developer-Docs/amplitude-dev-center](https://github.com/Amplitude-Developer-Docs/amplitude-dev-center) | 43 |
-| [jr0dd/home-ops](https://github.com/jr0dd/home-ops) | 42 |
+| [jr0dd/home-ops](https://github.com/jr0dd/home-ops) | 43 |
| [unixorn/chocolate-factory-engineering-docs](https://github.com/unixorn/chocolate-factory-engineering-docs) | 40 |
| [FaserF/hassio-addons](https://github.com/FaserF/hassio-addons) | 40 |
-| [nvuillam/github-dependents-info](https://github.com/nvuillam/github-dependents-info) | 36 |
+| [nvuillam/github-dependents-info](https://github.com/nvuillam/github-dependents-info) | 37 |
+| [MythicDrops/MythicDrops](https://github.com/MythicDrops/MythicDrops) | 35 |
| [leosuncin/nest-typeorm-custom-repository](https://github.com/leosuncin/nest-typeorm-custom-repository) | 35 |
| [apigee/terraform-modules](https://github.com/apigee/terraform-modules) | 35 |
-| [MythicDrops/MythicDrops](https://github.com/MythicDrops/MythicDrops) | 34 |
| [philips-software/amp-devcontainer](https://github.com/philips-software/amp-devcontainer) | 34 |
| [ahmadnassri/action-workflow-queue](https://github.com/ahmadnassri/action-workflow-queue) | 33 |
| [hardisgroupcom/vscode-sfdx-hardis](https://github.com/hardisgroupcom/vscode-sfdx-hardis) | 32 |
| [ZEISS/libczi](https://github.com/ZEISS/libczi) | 32 |
-| [leosuncin/nest-api-example](https://github.com/leosuncin/nest-api-example) | 31 |
+| [leosuncin/nest-api-example](https://github.com/leosuncin/nest-api-example) | 32 |
| [OperationCode/operationcode-pybot](https://github.com/OperationCode/operationcode-pybot) | 31 |
| [nvuillam/node-java-caller](https://github.com/nvuillam/node-java-caller) | 29 |
| [homeall/caddy-reverse-proxy-cloudflare](https://github.com/homeall/caddy-reverse-proxy-cloudflare) | 28 |
@@ -120,32 +120,32 @@
| [ahmadnassri/node-nightwatch-accessibility](https://github.com/ahmadnassri/node-nightwatch-accessibility) | 18 |
| [homeall/dhcphelper](https://github.com/homeall/dhcphelper) | 17 |
| [rafaribe/home-ops](https://github.com/rafaribe/home-ops) | 17 |
+| [GoogleCloudPlatform/apigee-samples](https://github.com/GoogleCloudPlatform/apigee-samples) | 17 |
| [unixorn/jira-commands](https://github.com/unixorn/jira-commands) | 16 |
-| [GoogleCloudPlatform/apigee-samples](https://github.com/GoogleCloudPlatform/apigee-samples) | 16 |
| [LukePrior/nbn-upgrade-map](https://github.com/LukePrior/nbn-upgrade-map) | 16 |
| [Euvaz/GitOps-Home](https://github.com/Euvaz/GitOps-Home) | 16 |
| [gmoon/s3proxy](https://github.com/gmoon/s3proxy) | 15 |
| [nvuillam/markdown-table-formatter](https://github.com/nvuillam/markdown-table-formatter) | 15 |
| [svt/open-source-project-template](https://github.com/svt/open-source-project-template) | 15 |
| [janderssonse/gradle-versions-filter-plugin](https://github.com/janderssonse/gradle-versions-filter-plugin) | 15 |
-| [axeII/home-ops](https://github.com/axeII/home-ops) | 15 |
| [Programming-Simplified-Community/Social-Coder](https://github.com/Programming-Simplified-Community/Social-Coder) | 15 |
| [ahmadnassri/node-metalsmith-request](https://github.com/ahmadnassri/node-metalsmith-request) | 15 |
| [ahmadnassri/node-april-fools](https://github.com/ahmadnassri/node-april-fools) | 15 |
| [warolv/vault-backup](https://github.com/warolv/vault-backup) | 14 |
| [ahgraber/homelab-gitops-k3s](https://github.com/ahgraber/homelab-gitops-k3s) | 14 |
| [svt/media-analyzer](https://github.com/svt/media-analyzer) | 14 |
-| [dochang/mb-url](https://github.com/dochang/mb-url) | 14 |
+| [axeII/home-ops](https://github.com/axeII/home-ops) | 14 |
| [Marx2/homelab](https://github.com/Marx2/homelab) | 14 |
| [practicalli/neovim](https://github.com/practicalli/neovim) | 14 |
| [practicalli/project-templates](https://github.com/practicalli/project-templates) | 14 |
+| [itsmng/itsm-ng](https://github.com/itsmng/itsm-ng) | 14 |
| [GSA/site-scanning-engine](https://github.com/GSA/site-scanning-engine) | 13 |
+| [dochang/mb-url](https://github.com/dochang/mb-url) | 13 |
| [tvories/k8s-gitops](https://github.com/tvories/k8s-gitops) | 13 |
| [appunite/Loudius](https://github.com/appunite/Loudius) | 13 |
| [tyriis/home-ops](https://github.com/tyriis/home-ops) | 13 |
| [jokay/docker-ccu-historian](https://github.com/jokay/docker-ccu-historian) | 13 |
| [chgl/kube-powertools](https://github.com/chgl/kube-powertools) | 13 |
-| [itsmng/itsm-ng](https://github.com/itsmng/itsm-ng) | 13 |
| [lpsm-dev/docker-crypto-miner](https://github.com/lpsm-dev/docker-crypto-miner) | 12 |
| [ahgraber/homelab-infra](https://github.com/ahgraber/homelab-infra) | 12 |
| [eresturo/scanadf2docspell](https://github.com/eresturo/scanadf2docspell) | 12 |
@@ -182,6 +182,7 @@
| [ahmadnassri/node-autoenv](https://github.com/ahmadnassri/node-autoenv) | 8 |
| [CITCOM-project/CausalTestingFramework](https://github.com/CITCOM-project/CausalTestingFramework) | 8 |
| [LowerRockLabs/LaravelLivewireTablesAdvancedFilters](https://github.com/LowerRockLabs/LaravelLivewireTablesAdvancedFilters) | 7 |
+| [theodore-s-beers/muqawwim](https://github.com/theodore-s-beers/muqawwim) | 7 |
| [xenedium/xecours](https://github.com/xenedium/xecours) | 7 |
| [tusharshahrs/pulumi-home](https://github.com/tusharshahrs/pulumi-home) | 7 |
| [AlbanAndrieu/jenkins-pipeline-scripts](https://github.com/AlbanAndrieu/jenkins-pipeline-scripts) | 7 |
@@ -205,7 +206,6 @@
| [ADFC-Hamburg/adfc-ansible](https://github.com/ADFC-Hamburg/adfc-ansible) | 6 |
| [CoffeeOps/commandline-fu](https://github.com/CoffeeOps/commandline-fu) | 6 |
| [XoopsModules25x/publisher](https://github.com/XoopsModules25x/publisher) | 6 |
-| [theodore-s-beers/muqawwim](https://github.com/theodore-s-beers/muqawwim) | 6 |
| [Nautilus-Cyberneering/secure-git-guide](https://github.com/Nautilus-Cyberneering/secure-git-guide) | 6 |
| [AlbanAndrieu/ansible-jenkins-slave-docker](https://github.com/AlbanAndrieu/ansible-jenkins-slave-docker) | 6 |
| [llaville/sarif-php-sdk](https://github.com/llaville/sarif-php-sdk) | 6 |
@@ -262,6 +262,7 @@
| [jmuelbert/generator-swift](https://github.com/jmuelbert/generator-swift) | 4 |
| [jmuelbert/jmbde-QT](https://github.com/jmuelbert/jmbde-QT) | 4 |
| [Jasstkn/link-checker](https://github.com/Jasstkn/link-checker) | 4 |
+| [stuartp44/com.vanmoof](https://github.com/stuartp44/com.vanmoof) | 4 |
| [cityssm/lot-occupancy-system](https://github.com/cityssm/lot-occupancy-system) | 4 |
| [ahmadnassri/node-updated](https://github.com/ahmadnassri/node-updated) | 4 |
| [ahmadnassri/node-template-literals-engine](https://github.com/ahmadnassri/node-template-literals-engine) | 4 |
@@ -283,6 +284,7 @@
| [bsrodrigs/terraform-aws-selfconfig-cgw](https://github.com/bsrodrigs/terraform-aws-selfconfig-cgw) | 3 |
| [cbg-ethz/SARS-CoV-2_Analysis](https://github.com/cbg-ethz/SARS-CoV-2_Analysis) | 3 |
| [I-Language-Development/I-language-python](https://github.com/I-Language-Development/I-language-python) | 3 |
+| [GenZmeY/KF2-BuildTools](https://github.com/GenZmeY/KF2-BuildTools) | 3 |
| [KohaAloha/Koha-Dev](https://github.com/KohaAloha/Koha-Dev) | 3 |
| [miracum/charts](https://github.com/miracum/charts) | 3 |
| [HealthDataInsight/way_of_working](https://github.com/HealthDataInsight/way_of_working) | 3 |
@@ -306,7 +308,6 @@
| [jcpsantiago/thearqivist](https://github.com/jcpsantiago/thearqivist) | 3 |
| [practicalli/clojure-service-template](https://github.com/practicalli/clojure-service-template) | 3 |
| [miracum/kafka-fhir-serializer](https://github.com/miracum/kafka-fhir-serializer) | 3 |
-| [stuartp44/com.vanmoof](https://github.com/stuartp44/com.vanmoof) | 3 |
| [ahmadnassri/node-marked-promise](https://github.com/ahmadnassri/node-marked-promise) | 3 |
| [MRDGH2821/Discord-Time-Tag-Bot](https://github.com/MRDGH2821/Discord-Time-Tag-Bot) | 3 |
| [ahmadnassri/node-stringify-clone](https://github.com/ahmadnassri/node-stringify-clone) | 3 |
@@ -348,7 +349,6 @@
| [worksuiteio/worksuite](https://github.com/worksuiteio/worksuite) | 2 |
| [jscheytt/dotfiles](https://github.com/jscheytt/dotfiles) | 2 |
| [matejkosiarcik/personal-dotfiles](https://github.com/matejkosiarcik/personal-dotfiles) | 2 |
-| [GenZmeY/KF2-BuildTools](https://github.com/GenZmeY/KF2-BuildTools) | 2 |
| [devcontainers-community/templates](https://github.com/devcontainers-community/templates) | 2 |
| [Euvaz/TeXCV](https://github.com/Euvaz/TeXCV) | 2 |
| [Samidaites2/megalizer](https://github.com/Samidaites2/megalizer) | 2 |
@@ -471,6 +471,7 @@
| [uah-ams/uah-ams-website](https://github.com/uah-ams/uah-ams-website) | 1 |
| [mimmi20/monolog-factory](https://github.com/mimmi20/monolog-factory) | 1 |
| [mimmi20/coding-standard](https://github.com/mimmi20/coding-standard) | 1 |
+| [gabrielfrasantos/embedded-reference-project](https://github.com/gabrielfrasantos/embedded-reference-project) | 1 |
| [gabrielfrasantos/embedded-hal-nxp](https://github.com/gabrielfrasantos/embedded-hal-nxp) | 1 |
| [MrMarble/home-ops](https://github.com/MrMarble/home-ops) | 1 |
| [gabrielfrasantos/embedded-hal-ti](https://github.com/gabrielfrasantos/embedded-hal-ti) | 1 |
@@ -652,6 +653,7 @@
| [jkoan/test-navit](https://github.com/jkoan/test-navit) | 0 |
| [BishopClassicMotors/bishopclassicmotors.github.io](https://github.com/BishopClassicMotors/bishopclassicmotors.github.io) | 0 |
| [withinfocus/withinfocus.github.io](https://github.com/withinfocus/withinfocus.github.io) | 0 |
+| [OcheOps/act](https://github.com/OcheOps/act) | 0 |
| [MrE-Fog/act](https://github.com/MrE-Fog/act) | 0 |
| [ruzickap/wizctl](https://github.com/ruzickap/wizctl) | 0 |
| [xet7/act](https://github.com/xet7/act) | 0 |
@@ -1280,9 +1282,7 @@
| [yeaung276/sarif-annotator](https://github.com/yeaung276/sarif-annotator) | 0 |
| [TestingGitVinoth/DotNetPipeline](https://github.com/TestingGitVinoth/DotNetPipeline) | 0 |
| [AliceO2Group/simulation](https://github.com/AliceO2Group/simulation) | 0 |
-| [fabricesemti80/argocd-cluster](https://github.com/fabricesemti80/argocd-cluster) | 0 |
| [proinsias/find-frequent-bacon-senders](https://github.com/proinsias/find-frequent-bacon-senders) | 0 |
-| [proinsias/whoareyou](https://github.com/proinsias/whoareyou) | 0 |
| [ShadowsZD/github_actions](https://github.com/ShadowsZD/github_actions) | 0 |
| [sg70/hm-homebridge-addon](https://github.com/sg70/hm-homebridge-addon) | 0 |
| [CrazyKamel/k3s-cluster](https://github.com/CrazyKamel/k3s-cluster) | 0 |
@@ -1352,6 +1352,7 @@
| [spacesyl/klus](https://github.com/spacesyl/klus) | 0 |
| [mrtolkien/cluster-old](https://github.com/mrtolkien/cluster-old) | 0 |
| [vyas-n/vyas-n](https://github.com/vyas-n/vyas-n) | 0 |
+| [MelvinCou/.github-sample](https://github.com/MelvinCou/.github-sample) | 0 |
| [fuzzmaestrotest/ARO_TEST](https://github.com/fuzzmaestrotest/ARO_TEST) | 0 |
| [invertedorigin/home-infra](https://github.com/invertedorigin/home-infra) | 0 |
| [practicalli-john/neovim-mkdocs](https://github.com/practicalli-john/neovim-mkdocs) | 0 |
@@ -1414,6 +1415,8 @@
| [rciam/keycloak-rciam-metrics-plugin](https://github.com/rciam/keycloak-rciam-metrics-plugin) | 0 |
| [beiertu-mms/sonarqube-report](https://github.com/beiertu-mms/sonarqube-report) | 0 |
| [charkchalk/backend](https://github.com/charkchalk/backend) | 0 |
+| [sarvex/next.js](https://github.com/sarvex/next.js) | 0 |
+| [sarvex/awadb](https://github.com/sarvex/awadb) | 0 |
| [jfandy1982/emby-data-check](https://github.com/jfandy1982/emby-data-check) | 0 |
| [sarvex/advent-of-code-rust](https://github.com/sarvex/advent-of-code-rust) | 0 |
| [sarvex/code-raiders](https://github.com/sarvex/code-raiders) | 0 |
diff --git a/megalinter/Linter.py b/megalinter/Linter.py
index ec385579416..ab58a577e6f 100644
--- a/megalinter/Linter.py
+++ b/megalinter/Linter.py
@@ -63,6 +63,7 @@ def __init__(self, params=None, linter_config=None):
self.linter_url = (
"Field 'linter_url' must be overridden at custom linter class level"
)
+ self.linter_icon_png_url = None
self.test_folder = None # Override only if different from language.lowercase()
self.activation_rules = []
self.test_variables = {}
diff --git a/megalinter/descriptors/ansible.megalinter-descriptor.yml b/megalinter/descriptors/ansible.megalinter-descriptor.yml
index ae11d66541e..cc6bf8f5c81 100644
--- a/megalinter/descriptors/ansible.megalinter-descriptor.yml
+++ b/megalinter/descriptors/ansible.megalinter-descriptor.yml
@@ -22,6 +22,7 @@ linters:
linter_rules_url: https://ansible-lint.readthedocs.io/rules/
linter_rules_configuration_url: https://ansible-lint.readthedocs.io/configuring/#configuration-file
linter_rules_inline_disable_url: https://ansible-lint.readthedocs.io/usage/#muting-warnings-to-avoid-false-positives
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/ansible-lint.png
config_file_name: .ansible-lint
cli_lint_mode: project
cli_config_extra_args:
diff --git a/megalinter/descriptors/bash.megalinter-descriptor.yml b/megalinter/descriptors/bash.megalinter-descriptor.yml
index cf7d39aafa1..0ed6eba9aeb 100644
--- a/megalinter/descriptors/bash.megalinter-descriptor.yml
+++ b/megalinter/descriptors/bash.megalinter-descriptor.yml
@@ -22,6 +22,7 @@ linters:
Checks if shell files are executable
Note: You can run `git add --chmod=+x myfile.sh` to make a file executable on Windows
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/bash-exec.png
linter_megalinter_ref_url: never
name: BASH_EXEC
descriptor_flavors:
@@ -56,6 +57,7 @@ linters:
linter_repo: https://github.com/koalaman/shellcheck
linter_rules_url: https://github.com/koalaman/shellcheck#gallery-of-bad-code
linter_rules_inline_disable_url: https://github.com/koalaman/shellcheck/wiki/Ignore
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/shellcheck.png
linter_megalinter_ref_url: never
cli_lint_mode: list_of_files
cli_lint_extra_args:
diff --git a/megalinter/descriptors/cloudformation.megalinter-descriptor.yml b/megalinter/descriptors/cloudformation.megalinter-descriptor.yml
index 68684fe0b28..681300671b5 100644
--- a/megalinter/descriptors/cloudformation.megalinter-descriptor.yml
+++ b/megalinter/descriptors/cloudformation.megalinter-descriptor.yml
@@ -18,6 +18,7 @@ linters:
linter_repo: https://github.com/aws-cloudformation/cfn-lint
linter_rules_url: https://github.com/aws-cloudformation/cfn-lint/blob/main/docs/rules.md
linter_banner_image_url: https://raw.githubusercontent.com/aws-cloudformation/cfn-lint/main/logo.png
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/cfn-lint.png
config_file_name: .cfnlintrc.yml
cli_config_arg_name: "--config-file"
cli_lint_mode: list_of_files
diff --git a/megalinter/descriptors/dockerfile.megalinter-descriptor.yml b/megalinter/descriptors/dockerfile.megalinter-descriptor.yml
index 6c421773351..c6c24a5a145 100644
--- a/megalinter/descriptors/dockerfile.megalinter-descriptor.yml
+++ b/megalinter/descriptors/dockerfile.megalinter-descriptor.yml
@@ -21,6 +21,7 @@ linters:
linter_repo: https://github.com/hadolint/hadolint
linter_rules_url: https://github.com/hadolint/hadolint#rules
linter_image_url: https://hadolint.github.io/hadolint/img/cat_container.png
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/hadolint.png
linter_rules_configuration_url: https://github.com/hadolint/hadolint#configure
linter_rules_inline_disable_url: https://github.com/hadolint/hadolint#inline-ignores
linter_megalinter_ref_url: https://github.com/hadolint/hadolint/blob/master/docs/INTEGRATION.md#mega-linter
diff --git a/megalinter/descriptors/kubernetes.megalinter-descriptor.yml b/megalinter/descriptors/kubernetes.megalinter-descriptor.yml
index 9e2c3d04eb7..383aca17b2f 100644
--- a/megalinter/descriptors/kubernetes.megalinter-descriptor.yml
+++ b/megalinter/descriptors/kubernetes.megalinter-descriptor.yml
@@ -20,6 +20,7 @@ linters:
linter_repo: https://github.com/yannh/kubeconform
linter_url: https://github.com/yannh/kubeconform
linter_banner_image_url: https://user-images.githubusercontent.com/19731161/142411871-f695e40c-bfa8-43ca-97c0-94c256749732.png
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/kubeconform.png
linter_text: |
`kubeconform` is a schema-aware Kubernetes manifest validation tool, that tends to have more up-to-date schema definitions than `kubeval`.
cli_version_arg_name: -v
@@ -56,6 +57,7 @@ linters:
cli_lint_extra_args:
- "lint"
linter_banner_image_url: https://helm.sh/img/helm.svg
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/helm.png
linter_text: |
`helm lint` examine a chart for possible issues.
examples:
@@ -74,6 +76,7 @@ linters:
linter_text: |
`kubescape scan` examines charts and kubernetes files for possible issues, best practices and security vulnerabilities.
linter_banner_image_url: https://www.armosec.io/wp-content/uploads/2022/11/Kubescape_BY_ARMO.png
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/kubescape.png
linter_spdx_license: Apache-2.0
active_only_if_file_found:
- Chart.yml
diff --git a/megalinter/descriptors/python.megalinter-descriptor.yml b/megalinter/descriptors/python.megalinter-descriptor.yml
index 5f01a59ccc6..483c4da5501 100644
--- a/megalinter/descriptors/python.megalinter-descriptor.yml
+++ b/megalinter/descriptors/python.megalinter-descriptor.yml
@@ -190,6 +190,7 @@ linters:
linter_rules_url: https://bandit.readthedocs.io/en/latest/plugins/index.html#complete-test-plugin-listing
linter_banner_image_url: https://github.com/PyCQA/bandit/raw/main/logo/logotype-sm.png
linter_image_url: https://github.com/PyCQA/bandit/raw/main/logo/logomark.png
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/bandit.png
linter_rules_configuration_url: https://bandit.readthedocs.io/en/latest/config.html#
linter_rules_inline_disable_url: https://bandit.readthedocs.io/en/latest/config.html#suppressing-individual-lines
cli_lint_mode: list_of_files
diff --git a/megalinter/descriptors/repository.megalinter-descriptor.yml b/megalinter/descriptors/repository.megalinter-descriptor.yml
index c41a0f64123..187d662ad18 100644
--- a/megalinter/descriptors/repository.megalinter-descriptor.yml
+++ b/megalinter/descriptors/repository.megalinter-descriptor.yml
@@ -19,6 +19,7 @@ linters:
linter_repo: https://github.com/bridgecrewio/checkov
linter_speed: 2
linter_banner_image_url: https://raw.githubusercontent.com/bridgecrewio/checkov/25388a34231e09ac17b266ad9db0b4c0e806e956/docs/web/images/checkov-logo.svg
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/checkov.png
linter_rules_configuration_url: https://github.com/bridgecrewio/checkov#configuration-using-a-config-file
linter_rules_inline_disable_url: https://www.checkov.io/2.Basics/Suppressing%20and%20Skipping%20Policies.html
linter_rules_url: https://www.checkov.io/5.Policy%20Index/all.html
@@ -63,6 +64,7 @@ linters:
linter_rules_configuration_url: https://github.com/microsoft/DevSkim/wiki/Analyze-Command
linter_rules_ignore_config_url: https://github.com/microsoft/DevSkim/wiki/Analyze-Command
linter_image_url: https://github.com/microsoft/DevSkim/raw/main/media/devskim_logo.svg
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/devskim.png
cli_lint_mode: project
cli_lint_extra_args:
- analyze
@@ -114,6 +116,7 @@ linters:
linter_url: https://github.com/Checkmarx/dustilock
linter_repo: https://github.com/Checkmarx/dustilock
linter_banner_image_url: https://user-images.githubusercontent.com/1287098/142776854-83abf265-a1ba-485f-a8b6-995da7f7ef8b.png
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/dustilock.png
cli_lint_mode: project
cli_lint_extra_args:
- --recursive
@@ -168,6 +171,7 @@ linters:
linter_rules_configuration_url: https://github.com/gitleaks/gitleaks#configuration
linter_rules_ignore_config_url: https://github.com/gitleaks/gitleaks#gitleaksignore
linter_rules_inline_disable_url: https://github.com/gitleaks/gitleaks#gitleaksallow
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/gitleaks.png
linter_text: |
## Scan only Pull Request commits
@@ -262,6 +266,7 @@ linters:
linter_repo: https://github.com/anchore/grype
linter_rules_url: https://github.com/anchore/grype#vulnerability-summary
linter_banner_image_url: https://user-images.githubusercontent.com/5199289/136855393-d0a9eef9-ccf1-4e2b-9d7c-7aad16a567e5.png
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/grype.png
linter_rules_configuration_url: https://github.com/anchore/grype#configuration
cli_lint_mode: project
cli_config_arg_name: "--config"
diff --git a/megalinter/descriptors/schemas/megalinter-descriptor.jsonschema.json b/megalinter/descriptors/schemas/megalinter-descriptor.jsonschema.json
index 5a0431ce50b..06f6f8ade8e 100644
--- a/megalinter/descriptors/schemas/megalinter-descriptor.jsonschema.json
+++ b/megalinter/descriptors/schemas/megalinter-descriptor.jsonschema.json
@@ -1083,6 +1083,16 @@
"title": "Hardcoded help content",
"type": "string"
},
+ "linter_icon_png_url": {
+ "$id": "#/properties/linters/items/properties/linter_icon_png_url",
+ "description": "URL of a PNG image representing the icon of the linter",
+ "examples": [
+ "https://github.com/stylelint/stylelint/raw/main/identity/stylelint-icon-and-text-white.png"
+ ],
+ "format": "uri",
+ "title": "Linter Icon PNG URL",
+ "type": "string"
+ },
"linter_image_url": {
"$id": "#/properties/linters/items/properties/linter_image_url",
"description": "URL of an image used in linter Markdown documentation",
diff --git a/megalinter/descriptors/terraform.megalinter-descriptor.yml b/megalinter/descriptors/terraform.megalinter-descriptor.yml
index 5bc205f5618..2c52719a19a 100644
--- a/megalinter/descriptors/terraform.megalinter-descriptor.yml
+++ b/megalinter/descriptors/terraform.megalinter-descriptor.yml
@@ -22,6 +22,7 @@ linters:
linter_rules_inline_disable_url: https://github.com/terraform-linters/tflint/blob/master/docs/guides/annotations.md
linter_text: |
> If you are using the GitHub action please use the `TERRAFORM_TFLINT_UNSECURED_ENV_VARIABLES: GITHUB_TOKEN` to prevent plugin download issues
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/tflint.png
cli_lint_mode: project
config_file_name: .tflint.hcl
cli_config_extra_args:
@@ -54,6 +55,7 @@ linters:
linter_rules_url: https://runterrascan.io/docs/usage/
linter_rules_configuration_url: https://runterrascan.io/docs/usage/config_options/
linter_banner_image_url: https://raw.githubusercontent.com/tenable/runterrascan.io/main/static/images/TerrascanTM_BY_Logo.png
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/terrascan.png
config_file_name: terrascan-config.toml
cli_config_arg_name: --config-path
cli_lint_mode: project
@@ -92,6 +94,7 @@ linters:
linter_repo: https://github.com/gruntwork-io/terragrunt
linter_rules_configuration_url: https://terragrunt.gruntwork.io/docs/getting-started/configuration/#terragrunt-configuration-file
linter_image_url: https://github.com/gruntwork-io/terragrunt/blob/master/docs/assets/img/favicon/ms-icon-310x310.png
+ linter_icon_png_url: https://raw.githubusercontent.com/oxsecurity/megalinter/main/docs/assets/icons/linters/terragrunt.png
config_file_name: terragrunt.hcl
cli_config_arg_name: "--terragrunt-config"
cli_lint_extra_args:
diff --git a/megalinter/utils_reporter.py b/megalinter/utils_reporter.py
index e9ec7af68a5..a0caed7e768 100644
--- a/megalinter/utils_reporter.py
+++ b/megalinter/utils_reporter.py
@@ -332,6 +332,8 @@ def get_linter_infos(linter):
}
if linter.cli_lint_mode in ["file", "list_of_files"]:
linter_infos["filesNumber"] = len(linter.files)
+ if linter.linter_icon_png_url is not None:
+ linter_infos["iconPngUrl"] = linter.linter_icon_png_url
return linter_infos