Commit graph

794 commits

Author SHA1 Message Date
Kurt von Laven
8227f79074
Add a template config file for ShellCheck (#1900)
* Improve wording of LINTER_RULES_PATH docs (#1634).

* Add a template config file for ShellCheck (#1633).

Instruct ShellCheck to search SCRIPTDIR, the directory that the script
being linted is in, for other scripts that are sourced. Otherwise, the
commonly-used source command results in linter error SC1091. See
https://github.com/koalaman/shellcheck/wiki/SC1091 for more details.

* fix line ending

Co-authored-by: Lukas Gravley <admiralawkbar@github.com>
2021-08-30 11:19:56 -05:00
Lukas Gravley
5f65429f2c
adding tflint (#1899)
* adding tflint

* fixed array

* i thought this was fixed
2021-08-30 09:47:50 -05:00
Lukas Gravley
148622b273
Sqlfluff (#1834)
* adding sqlfluff

* adding sqlfluff

* update test

* adding sql file array
2021-08-05 15:32:27 -05:00
Xiao Liang
f6910e3ee9
feat: support bats (#1778)
Support linting of bats files by identifying them as shell scripts (they actually are)
2021-07-19 09:30:44 -05:00
Lukas Gravley
ab24b82199
Adding actionlint (#1775)
* Adding action lint

* adding tests

* adding tests

* Update Dockerfile

Co-authored-by: Masaya Suzuki <15100604+massongit@users.noreply.github.com>

* cleanup name

* fix test

* typo

* fix file name

* fix our own errors

* more cleanup

* angry

* make it happy

* stop double jobs

Co-authored-by: Masaya Suzuki <15100604+massongit@users.noreply.github.com>
2021-07-19 09:28:49 -05:00
Lukas Gravley
1481793072
adding clang (#1762)
* adding clang

* fix hado

* adding files

* fixing naming

* fixing test

* fixing space

* removing config file

* fix tests

* fix tests

* fix file array
2021-07-14 14:43:10 -05:00
Aldana Vaca
8b75fbf345
Adding terrascan config file (#1761)
* adding terrascan config file

* fix line ending

Co-authored-by: Admiral Awkbar <admiralawkbar@github.com>
2021-07-14 10:20:24 -05:00
Thomas Iguchi
fad8d1cde2
Added support for changing Checkstyle rules file name (#1760)
Resolves https://github.com/github/super-linter/issues/680
2021-07-14 09:45:07 -05:00
Lukas Gravley
b3e0c02dc5
yamllint format (#1754)
* standard

* parsable
2021-07-13 11:04:58 -05:00
Lukas Gravley
100c674c6d
adding tflint config (#1753) 2021-07-13 09:44:27 -05:00
Lukas Gravley
d24eb27b4c
move from jsonlint to eslint (#1752)
* move from jsonlint to eslint

* move from jsonlint to eslint

* adding test
2021-07-13 09:10:37 -05:00
Ayodeji Osagie
f187b0b3ab
Fix terragrunt file picker from selecting packer files (#1707)
Co-authored-by: Lukas Gravley <admiralawkbar@github.com>
2021-06-28 08:40:31 -05:00
Stepan Koltsov
e059100991
Ignore files marked with @generated marker (#1689)
* Ignore files marked with @generated marker

`@generated` marker is used by certain tools to understand that the
file is generated, so it should be treated differently than a file
written by a human:
* these files do not need to be reformatted,
* diffs in these files are less important,
* and linters should not be invoked on these files.

This PR proposes builtin support for `@generated` marker (and
`@not-generated` marker to mark file as not generated when it
contains `@generated` marker, like `README.md`).

I have not found a standard for a generated file marker, but:
* Facebook [uses `@generated` marker](https://tinyurl.com/fb-generated)
* Phabricator tool which was spawned from Facebook internal tool
  [also understands `@generated` marker](https://git.io/JnVHa)
* Cargo inserts `@generated` marker into [generated Cargo.lock files](https://git.io/JnVHP)

Super-linter supports regex includes and excludes, but they are
harder to maintain (each repository needs to be configured) than
patching the tools which generate the files.

My personal story is that I maintain rust-protobuf crate, which
started emitting `@generated` markers [six years ago](https://git.io/JnV5h)
after a request of a Phabricator user.

Test Plan:

Create a test file `test.sh`:

```
echo $a
```

Run:

```
docker run -e RUN_LOCAL=true -v $HOME/tmp/g:/tmp/lint super-linter-test
```

Result is:

```
In /tmp/lint/test.sh line 1:
echo $a
^-- SC2148: Tips depend on target shell and yours is unknown. Add a shebang or a 'shell' directive.
     ^-- SC2154: a is referenced but not assigned.
     ^-- SC2086: Double quote to prevent globbing and word splitting.
...
2021-06-22 23:46:16 [ERROR]   ERRORS FOUND in BASH:[1]
```

Now add `@generated` to the file and run again:

```
2021-06-22 23:47:13 [NOTICE]   All file(s) linted successfully with no errors detected
```

Additionally, add `@not-generated` in addition to `@generated`, and
linter error pops up again.

* cleanup

* remove space

* fix non utf return

* fix non utf return

Co-authored-by: Lukas Gravley <admiralawkbar@github.com>
2021-06-28 07:59:11 -05:00
Lukas Gravley
c4280ea4e1
LINTER_RULE_PATH fix (#1649)
* adding root code

* removbe a typio
2021-06-10 13:09:24 -05:00
Lukas Gravley
2c135d4a17
adding rules file (#1644)
* adding rules file

* fix naming

* cleanup

* make smart

* fixing the make

* adding template

* white space

* not sure how i got windows

* found the space
2021-06-09 11:53:11 -05:00
Lukas Gravley
4faa6433ab
adding find algorithm (#1640)
* adding find

* add default value
2021-06-08 10:40:59 -05:00
Lukas Gravley
6ce478c991
Kube (#1609)
* adding var

* adding var

* bug

* spacing

* better name
2021-06-01 15:04:25 -05:00
Lukas Gravley
ebf6194d0e
wildcard search (#1608) 2021-06-01 12:17:13 -05:00
Lukas Gravley
83badbc49c
Image 4.0 (#1565)
* adding new one...

* adding automation

* linter

* pull apart for faster builds

* maybe

* update automation

* fix that

* prime is smart

* fixed it

* quotes

* fix build image

* inpec

* typo

* forgot backslash

* fixed hairbrain logic

* this should help cleanup

* i hate r

* order

* maybe fix r

* maybe fix r

* update readme

* remove spaces

* update
2021-05-25 10:14:43 -05:00
DanEmord
3dc85fc3bc
Allow ansible-lint with git diffs (#1554)
* Allow ansible-lint with git diffs

super-linter checks the path of the file in lib/functions/detectFiles.sh to determine whether the file is an ansible playbook. When VALIDATE_ALL_CODEBASE=true, a list of absolute paths is generated which matches the expected path but when VALIDATE_ALL_CODEBASE=false, a list of relative paths is generated so no files are "detected" as ansible playbooks. This change outputs everything as an absolute path so diffs will also work.

* fix quotes

* Include eval to interpret pipe in cmd substitution

* more quotes

Co-authored-by: Admiral Awkbar <admiralawkbar@github.com>
2021-05-12 09:59:31 -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
Lukas Gravley
5d96acadf1
remove more dead weight (#1530)
* remove more dead weight

* more cleaner

* falling into place

* tie dotnet to version

* new low
2021-05-10 09:58:30 -05:00
Lukas Gravley
5d2ea81f00
Cpp (#1492)
* adding cpp

* adding cpp

* tests

* make test better

* fix test
2021-05-04 13:24:41 -05:00
Lukas Gravley
1a00fc3790
adding fixes (#1516)
* adding fixes

* happy

* happy

* fix local files

* fix spacing

* i hate space

* spacing pt3 the space wars

* further down the bunny trail
2021-05-04 11:33:21 -05:00
Lukas Gravley
72cbbfc4e5
Inspec additional Tests (#1497)
* adding tests

* adding more

* cleanup vars

* dumb

* dumb

* fix r lib

* adding test

* quotes

* quotes

* more test

* adding brackets

* typos

* dumb

* slashes
2021-05-03 16:30:02 -05:00
dependabot[bot]
63caefd599
Bump alpine/terragrunt from 0.14.5 to 0.14.7 (#1230)
* Bump alpine/terragrunt from 0.14.5 to 0.14.7

Bumps alpine/terragrunt from 0.14.5 to 0.14.7.

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

* set log level to error

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Admiral Awkbar <admiralawkbar@github.com>
Co-authored-by: Marco Ferrari <ferrari.marco@gmail.com>
2021-04-30 14:56:47 -05:00
Lukas Gravley
5f5904883d
remove tap and tests (#1496)
* remove tap and tests

* fix proto

* remove dumb test
2021-04-30 12:46:24 -05:00
Marco Ferrari
0c8db849aa
Implement a test suite with InSpec (#1466)
* Implement a test suite with InSpec

* make ruby happy

* adding file

* Fix inspec and add make target

* Run inspec

* adding binaries

* make ruby happy

* fix linter order

* cleanup

* adding version check

* adding notes

* cleanup

* cleanup

* fixed r test

* fixed copy paste

* dynamic tests

* fix hash

* fix notation

* docker ps

* Fix makefile

* Fix makefile

Co-authored-by: Admiral Awkbar <admiralawkbar@github.com>
2021-04-30 11:29:15 -05:00
Lukas Gravley
e0e4a67f3a
Certs (#1470)
* adding cert

* update readme

* typo

* make exec

* spaces

* adding better way

* adding example

* make shell happy

* fix space

* adding notes

* bad var

* duh
2021-04-26 09:00:42 -05:00
Marco Ferrari
527c5a3986
Generate a code coverage report (#1353)
* Generate a code coverage report

* make linters happy

* adding action and badge

* no report for me

* Upload the test report

* adding folders

* spaces not tabs

* makefiles love tabs

* spacing is important

* rawr

* Fix makefile

* Add diagnostic info

* Set UID and GID

* Make info

* Add docker images in diagnostic info

* Move info before testing the local action

* Add missing -C to git diff-tree

* Reset ownership

* Add missing quotes

* Sudo

* Attempt to fix ARM test

* Attempt to fix go test

Co-authored-by: Admiral Awkbar <admiralawkbar@github.com>
2021-04-22 13:56:18 -05:00
Erik Godding Boye
a908937c78
Add new ENV VAR to set ansible-lint config file (#1424) 2021-04-11 20:24:43 -07:00
Lukas Gravley
08a586cf3b
adding Python MyPy (#1401)
* adding fun

* fix whitespace

* adding tests

* adding the array

* bug in file name

* fix tap

* makes no sense

* adding the hammer

* adding some extra protbuf
2021-03-24 14:00:23 -05:00
Andreas Fritzler
1367534603
Allow to override github api url (#1395) 2021-03-23 13:26:14 -05:00
Lukas Gravley
3d39df7f0e
adding it (#1396)
* adding it

* i kant read

* make go go away
2021-03-23 12:02:16 -05:00
Lukas Gravley
bf70afb2a9
Fix Root path for rust (#1373)
* fix path

* quiet

* rules for ktlint

* correct name
2021-03-17 13:28:51 -05:00
Andreas Fritzler
130b6ac1a5
Added support for custom github domain for status target url (#1367) 2021-03-15 15:19:54 -05:00
Tom Pansino
7b8e3189d8
Support custom markdownlint rules (#1306)
* Support custom rules with markdownlint

* Add MARKDOWN_CUSTOM_RULE_GLOBS to README.md

* Fix shellcheck issues and use bash array for globs

* Fix shfmt issues

Co-authored-by: Gabriel Diaz <gabo.fdc@gmail.com>
2021-03-10 09:06:06 -06:00
Gabriel Diaz
07a16ed119
Fix to lint other .env.* files (#1336) 2021-03-10 08:38:31 -06:00
Antonio Yang
60e2561b15
Add clippy for rust (#1277)
* Add clippy for Rust

* Update ARM test cases

- fix arm good test case
- update tap report

* Lint github workflows release config
2021-03-08 14:13:04 -06:00
Gabriel Diaz
f58e607c4b
Fix buggy diff cmd (#1314)
* Fix buggy diff cmd

* Fix new line for diff cmd output

Co-authored-by: Lukas Gravley <admiralawkbar@github.com>
2021-03-05 11:25:31 -06:00
Kim SeungSu
68c8bf9f11
fix, checkout DEFAULT_BRANCH for diff base (#1308) 2021-03-05 08:57:16 -06:00
Gabriel Diaz
11720172cb
Fix get file diff on pr event (#1305)
* Fix pr event sha

* Improve cmd

* Fix space
2021-03-04 13:51:44 -06:00
Gabriel Diaz
46df94844c
Add debug info for multi status api calls (#1287)
* Add debug info for multi status api calls

* Add test for clean action

* Add more verbose

* Test in action context

* Test use local build as action

* Improve debug for raw file array

* Fix shallow fetch

* Fix error messages on diff cmd

* Changed repeated code to function

* Fix quotes
2021-03-02 08:29:12 -06:00
Max Held
0b756c57e8
only error on rstats lintr errors, not all lints (#1233)
* only error on lintr errors

* ensure that dockerfile includes purrr

* update tap snapshot

* add actual lint error

* add snapshot for actual error

Co-authored-by: Gabriel Diaz <gabo.fdc@gmail.com>
Co-authored-by: Lukas Gravley <admiralawkbar@github.com>
2021-02-26 08:49:08 -06:00
Antonio Yang
f47b363f71
Add rustfmt for Rust (#1250)
* Add linter for Rust

- add 2015 edition
- add 2018 edition

* Add tap reports

- add tap reports
- fix good test case

* 1 command=lesslayers

Co-authored-by: Lukas Gravley <admiralawkbar@github.com>
2021-02-26 08:47:21 -06:00
Gabriel Diaz
71d36c41c2
Add logic to check command output before maping the files (#1259) 2021-02-25 18:15:51 +00:00
dependabot[bot]
7c4842d2d2
Bump ansible-lint from 5.0.1 to 5.0.2 in /dependencies (#1248)
* Bump ansible-lint from 5.0.1 to 5.0.2 in /dependencies

Bumps [ansible-lint](https://github.com/ansible-community/ansible-lint) from 5.0.1 to 5.0.2.
- [Release notes](https://github.com/ansible-community/ansible-lint/releases)
- [Commits](https://github.com/ansible-community/ansible-lint/compare/v5.0.1...v5.0.2)

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

* fix ansible

* fix ansible

* looking

* maybe baby

* adding details

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Admiral Awkbar <admiralawkbar@github.com>
2021-02-24 07:45:39 -06:00
Eric Nemchik
389fe11f9b
Use git ls-tree to build file list (#1192)
* Ignore files that are ignored by Git (#1185)

* Ignore files that are ignored by Git

* Add missing continue statement

* Fix linting errors

* Fix linting errors

* like it

* like it

* Add the IGNORE_GITIGNORED_FILES variable

* Fix setting the Ansible directory when running tests

* Fix var export

* Update linter.sh

Co-authored-by: Admiral Awkbar <admiralawkbar@github.com>

* Remove RenameTestFolder

* Update action.yml

* removing the dockignore from our test...

* fixed it

Co-authored-by: Marco Ferrari <ferrari.marco@gmail.com>
Co-authored-by: Admiral Awkbar <admiralawkbar@github.com>
2021-02-23 11:51:34 -06:00
Lukas Gravley
9bfc6158b9
Fix Tap report spacing (#1240)
* cleaner

* fix go

* fix go

* going ham

* fix typo

* fix typo

* fix typo

* fix mapfile

* fix mapfile

* fixed spacing
2021-02-22 11:28:49 -06:00
Marco Ferrari
b6bbc88e8e
Ignore files that are ignored by Git (#1185)
* Ignore files that are ignored by Git

* Add missing continue statement

* Fix linting errors

* Fix linting errors

* like it

* like it

* Add the IGNORE_GITIGNORED_FILES variable

* Fix setting the Ansible directory when running tests

* Fix var export

* Update linter.sh

Co-authored-by: Admiral Awkbar <admiralawkbar@github.com>
2021-02-18 12:15:50 -06:00