Commit graph

102 commits

Author SHA1 Message Date
Marco Ferrari
5d6e3fcecc
feat: lint commit messages with commitlint (#6118)
Some checks failed
Publish Images / Build and Test (push) Has been cancelled
Build and Test / Set build metadata (push) Has been cancelled
Build and Test / Build test suite matrix (push) Has been cancelled
Build and Test / preview-release-notes (push) Has been cancelled
Lint commit / commitlint (push) Has been cancelled
Publish Images / Release (push) Has been cancelled
Build and Test / Build and Test (push) Has been cancelled
Build and Test / Test the Super-linter GitHub Action (push) Has been cancelled
Build and Test / Run test cases (push) Has been cancelled
Build and Test / Check if all the tests passed (push) Has been cancelled
Add support to run Commitlint against commit messages. It supports the
current modes:

- Lint the commit message of the last commit
- Lint the commit messages of the pushed commits in case there is more
  than one pushed commit

This commit also removes stuff that we used to run commitlint as a
standalone tool because we can now use the commitlint instance that
Super-linter ships:

- lint-commit steps in lint-commit the GitHub Actions workflow
- lint-commit Make target
- commitlint and its dependencies in package.json and package-lock.json
2024-09-19 08:53:13 +00:00
Nito Buendia
5b13acee46
feat: add pyink as a Python formatter (#6083) 2024-08-27 15:00:51 +00:00
Marco Ferrari
11d4aac68c
chore: format super-linter summaries (#6063)
Run Prettier to format the Super-linter summary file to produce
summaries with consistent formatting.
2024-08-25 19:43:33 +02:00
Marco Ferrari
8ceae0f304
feat: lint and format dotnet solutions (#6039)
Close #736
2024-08-16 16:23:52 +02:00
Marco Ferrari
1d12a31fce
feat: prettier for additional languages (#6025)
- CSS, Sass, SCSS
- HTML
- JSON
- JSX
- GraphQL
- Vue
- YAML
2024-08-15 11:46:02 +02:00
Marco Ferrari
2664cb3b19
chore: fix formatting issues (#6028) 2024-08-15 10:21:26 +02:00
Marco Ferrari
91dc6d7234
fix: add missing fix mode options and test cases (#5987)
- Add missing fix mode options for: CLANG_FORMAT, ENV,
  GOOGLE_JAVA_FORMAT, NATURAL_LANGUAGE, PYTHON_ISORT, RUST_CLIPPY.
- Refactor linter tests to make them shorter because there's no need to
  have big test files.
- Refactor 'bad' linter tests for linters that support fix mode so they
  contain only automatically fixable issues. This is needed to avoid
  adding another set of 'bad' linter tests for fix mode.
- Provide configuration files for linters that support fix mode and for
  which the default configuration is not suitable to enable fix mode:
  ansible-lint, ESLint, golangci-lint.
- Add a test case for linter commands options for linters that support
  fix mode, to ensure that fix mode and check-only mode options have
  been defined.
- Refactor the fix mode test to check if linters actually applied
  modifications to files.
- Update documentation about adding test cases for linters that support
  fix mode.
- Don't exit with a fatal error if VALIDATE_xxx is false when testing
  fix mode because not all linters support fix mode. To enable this, set
  the new FIX_MODE_TEST_CASE_RUN variable to true.
2024-08-12 12:31:38 +02:00
Marco Ferrari
70e0239117
chore: remove duplicated configuration files (#5928)
Remove duplicated linter configuration files when they match with the
default ones..
2024-07-28 19:43:03 +02:00
Marco Ferrari
2daf461143
feat: allow using both prettier and standardjs (#5679)
- Allow using both Prettier and StandardJS at the same time by removing
  JAVASCRIPT_DEFAULT_STYLE and TYPESCRIPT_DEFAULT_STYLE
  configuration variables. They create a confusing corner case that
  Super-linter already handles with its core logic that's in place to
  enable and disable linters.
- Document VALIDATE_JAVASCRIPT_PRETTIER and VALIDATE_TYPESCRIPT_PRETTIER
  because they were missing from the README.
- Add missing TYPESCRIPT_PRETTIER tests.
2024-07-19 05:04:43 +00:00
Marco Ferrari
57c86588c3
feat: write github actions step summary (#5867)
This also removes an unneeded textlint configuration file because it
matches with the default one.

Close #5650
2024-07-11 08:01:11 +00:00
Marco Ferrari
d74351fda7
feat: add the kustomize binary for checkov (#5763)
Checkov needs the kustomize binary to enable related checks, otherwise
these checks are silently skipped.

Ref https://www.checkov.io/7.Scan%20Examples/Kustomize.html
2024-06-27 19:03:16 +02:00
Marco Ferrari
90f3fef29d
ci: move local action test to a dedicated job (#5629) 2024-05-17 10:39:22 +02:00
Masaya Suzuki
03b4aa0798
fix: fix a shadowing setting in .golangci.yml (#5654) 2024-05-16 17:15:23 +00:00
Masaya Suzuki
0873f46704
ci: ignore github_conf in jscpd (#5533) 2024-04-16 07:08:41 +00:00
Junya Okabe
e71a37d49d
feat: add depndency (#5456)
feat: configure ruff

feat: update the orchestration scripts

feat: update the test suite

docs: update README

feat: add test cases for ruff

fix: CI error

chore: del .github/linters/.ruff.toml

fix: CI error

fix: README

update: LINTER_NAMES_ARRAY

fix: Dockerfile

fix: .github/linters/.jscpd.json

fix: test files

fix: del version_command
2024-04-10 12:02:28 +00:00
Marco Ferrari
99e41ce451
feat: run linters in parallel (#5177) 2024-01-30 19:24:55 +00:00
Marco Ferrari
cf2038d903
fix: fix GITHUB_BEFORE_SHA initalization for push (#5098) 2024-01-05 23:07:39 +01:00
Marco Ferrari
11b70102c3
feat!: run linters against the workspace (#5041)
- Run jscpd, gitleaks, textlint  against the entire workspace instead of
  running them over single files, one by one.
- Implement a warning function for deprecated variables.
- Deprecate the VALIDATE_JSCPD_ALL_CODEBASE variable.
- Remove duplicate configuration files when they are the same as the
  ones we provide in TEMPLATES.
- Add a missing tests for ansible-lint.
- Move ANSIBLE_DIRECTORY configuration when running tests in
  buildFileList, where similar configs are.
- Simplify ansible-lint test cases to include only what's necessary, and
  not an entire set of roles, playbooks, and inventory.
- Write instructions about major upgrades in the upgrade guide.
2023-12-24 17:56:15 +01:00
Marco Ferrari
9d7268fb99
feat: add support for checkov to lint iac files (#4925)
- Add support to run Checkov against infrastructure as code descriptors
  that are in a given (configurable) directory. Defaults to lint the
  whole workspace.
- Establish a baseline for our own codebase so we don't have to fix
  issues right away with this change.
2023-12-22 13:22:15 +01:00
Marco Ferrari
93b5ede1e8
ci: configure release-please (#5016)
- Configure release-please to automatically create pull requests and
  releases.
- Run release-please and tag update in the CD workflow.
- Update Git tags pointing to latest, major.minor, and major versions as
  part of the CD workflow.
- Remove workflows (draft-release, release) that are not necessary
  anymore, and related configuration files.
- Handle automatic updates to README.md, action.yml, and action.yaml
- Mount .github to /tmp/lint/.github so super-linter finds config files,
  and the GitHub Actions to lint.
2023-12-20 14:58:25 +01:00
Marco Ferrari
117318f55c
ci: don't validate dependabot commits (#5026)
Dependabot doesn't allow configuring the max commit message line length
until https://github.com/dependabot/dependabot-core/issues/2445 is
resolved, so we cannot validate Dependabot commits at this time.
2023-12-20 09:12:02 +01:00
Marco Ferrari
9db632f0e1
ci: configure commitlint (#5014)
- Check if the PR contains a single commit, and fail otherwise.
- Enable commitlint to check if commits adhere to the
  conventialcommits.org spec.
- Update the the pull request template to point to the conventional
  commit spec.
- Update the dependabot configuration to add the "build(...)" prefix to
  commits.
2023-12-19 19:37:16 +01:00
Marco Ferrari
22564fb65c
Switch to tflint image because tflint-bundle is deprecated (#4990)
* Switch to tflint image because tflint-bundle is deprecated

* Fix version string

* Don't copy plugins

* Don't copy plugins

* Set terraform log vars globally

* Fix tflint error
2023-12-15 09:29:34 +00:00
Marco Ferrari
e6cf8d3845
Move tests to the test directory (#4985)
* Move tests to the test directory

* Fix linting errors

* Add states back

* Add xml back
2023-12-15 08:50:35 +00:00
Marco Ferrari
2c548620af
Move instructions from the wiki to docs (#4957)
* Move instructions from the wiki to docs

* Add missing code

* Fix linting errors

* Fix indentation

* Don't add deleted docs back

* Remove slim readme
2023-12-12 08:41:41 +01:00
Zack Koppert
071f051633
Update google java format and JDK (#4848)
* Update google java format and JDK

* update to use non-deprecated function

* update jdk to v18

* update to jdk v18

* try v17 jdk

* try v17 jdk
2023-11-10 22:46:25 -08:00
Zack Koppert
102cb5dc38
Add exception for type-linting (#4470)
* Add exception for type-linting

since we are linting file by file to avoid running into https://typescript-eslint.io/linting/troubleshooting#i-get-errors-telling-me-eslint-was-configured-to-run--however-that-tsconfig-does-not--none-of-those-tsconfigs-include-this-file

* Update tsconfig.json

* remove trailing commas for last entries
2023-09-17 12:35:36 +00:00
Barry Pollard
d90a5dcb97 Update SQLFluff config 2023-04-16 23:53:26 -04:00
Marco Ferrari
81c370a611
Validate if we the test suite runs both good and bad tests (#3811)
Also, remove the ansible-lint configuration file because we can rely on the default one
2023-01-11 17:24:48 +01:00
Marco Ferrari
9bcd243020 Remove unneeded eslint configuration files 2023-01-07 09:15:33 -05:00
Brett Logan
cedda7c156 Revert psd1 extension change and ignore PSMissingModuleManifestField
Signed-off-by: Brett Logan <lindluni@github.com>
2023-01-05 09:46:51 -05:00
Brett Logan
5a6cf6864c Add actionlint.yaml
Signed-off-by: Brett Logan <lindluni@github.com>
2023-01-05 09:46:51 -05:00
dependabot[bot]
718f2d6dfd
Bump cljkondo/clj-kondo from 2022.03.09-alpine to 2022.09.08-alpine (#3305)
* Bump cljkondo/clj-kondo from 2022.03.09-alpine to 2022.09.08-alpine

Bumps cljkondo/clj-kondo from 2022.03.09-alpine to 2022.09.08-alpine.

---
updated-dependencies:
- dependency-name: cljkondo/clj-kondo
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* Disable name mismatch to avoid refactoring our test logic

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marco Ferrari <ferrari.marco@gmail.com>
2022-09-29 11:57:36 +02:00
Charlie Miller
7be44d6ddb
added black profile to isort to simplify configuration (#3252)
Co-authored-by: Viridius <76791633+Viridius@users.noreply.github.com>
2022-08-18 13:18:50 -05:00
Stephen Abbene
f0a07fdc80
Remove disabled pylint checks from config file to work with pylint 2.14.1 (#3038)
* update pylint config file to work with pylint 2.14.1

* update templay pylint config file with checks removed by pylint 2.14.1

Co-authored-by: Stephen Abbene <sabbene@nvidia.com>
2022-06-16 15:12:16 -05:00
Admiral Awkbar
f46ec83ec0 fix our rule 2022-05-23 13:27:57 -05:00
Masaya Suzuki
8129a432c7
Disable flake8 rule E203 (#2821)
* Disable flake8 rule E203

* Fix test case

* Fix test case

* Fix test case

* empty commit

* Ignore W503

* Change settings
2022-05-02 09:28:30 -05:00
Barry Pollard
d597ca4472
SQLFluff 0.12.0 upgrade (#2786) 2022-04-12 10:28:29 -05:00
Masaya Suzuki
e277edca06
Use ts-standard instead of standard as TYPESCRIPT_STANDARD (#2614)
* Use ts-standard instead of standard as TYPESCRIPT_STANDARD

* Add ts-standard

* Update test case

* Update test case

* Add tsconfig.json

* Add tsconfig.json environment value

* Fix "TypeScript"

* Fix package version

* Fix package version

* Fix package version

* Fix package version

* Fix settings

* Remove config file env

* Fix version

* Fix eslintrc

* Fix project path

* Fix project path

* Fix setting

* Fix env

* Add .eslintrc.yml for ts-standard

* Fix README

* Fix settings

* Change include paths

* Change include paths

* Change include paths

* Change include paths

* Fix dependencies

* Fix dependencies

* Fix dependence versions
2022-03-16 10:21:57 -05:00
Marco Ferrari
4b16b5b473
Lint the whole Ansible directory (#2576) 2022-03-14 20:47:04 +01:00
Colwyn Fritze-Moor
ecb6625a21 fix: enable tflint module mode 2022-02-22 01:19:52 -05:00
Barry Pollard
19abf45423
Correct SQLFluff config filename (#2366) 2022-01-24 09:01:37 -06:00
Barry Pollard
3d54fce1f0
Allow SQLFluff configuration file to be used from standard Super Linter location (#2361) 2022-01-20 09:02:30 -06:00
Brett Logan
f0e69a5a7d
Cleanup YAML Linting and Enable Rules (#2301)
* Fix yaml linting issues

* Enable yamllint rules

* Replace comment

* Address linting and set line-length longer

Co-authored-by: Lukas Gravley <admiralawkbar@github.com>
2022-01-06 09:59:15 -06:00
Lukas Gravley
42981a4a7a
Update additional scala extensions (#2296)
* Update buildFileList.sh

add new extension

* fix space

* turn this down a hair

* update

* fix rule

* fixed dumb stuff

* fix indent

* hangry
2022-01-06 09:28:26 -06:00
Marco Ferrari
f90bf96db8
Install R directly and don't report npm-groovy-lint usage stats (#2202)
* Install R directly

* Don't install zip

* Copy etc/R

* Move back to /home/r-library

* Copy directory contents

* Copy files

* mkdir

* recursive copy

* copy -r

* Revert R etc

* Don't create etc dir

* Disable ClassNameSameAsFilename rule

* insight kills

Co-authored-by: Admiral Awkbar <admiralawkbar@github.com>
2021-12-07 12:10:26 -06:00
Masaya Suzuki
fafdcd214e
Add textlint (#2021)
* Add textlint

* Fix by textlint

* Fix package-lock.json

* Fix package-lock.json
2021-10-05 08:29:05 -05:00
Masaya Suzuki
3472ac360c
Add textlint (#2006)
* Add textlint

* Add new final newline

* Validate only markdown files

* txt -> md
2021-09-30 13:40:44 -05:00
Lukas Gravley
695dd0832a
fixed go issues (#1890)
* fixed

* govet

* ughhh
2021-08-25 09:21:26 -05:00
Lukas Gravley
3e0bd7fff4
Eslint for json jsonc and json5 (#1524)
* adding it

* fix typo

* fix tests

* adding back jsonlint

* adding back jsonlint

* fix spacing

* found the typo

* add tests

* adding rules for json

* add to local
2021-05-11 10:54:58 -05:00