superlint/lib
Ryan Moran 200f699c15 Adds --external-sources option for shellcheck
Shellcheck supports a `--external-sources` option that allows directives
like the follow to pass linting.

  ```
  # shellcheck source=SCRIPTDIR/some/source/script.sh`
  source "$(dirname "${BASH_SOURCE[0]}")/some/source/script.sh"
  ```
Without this option, we will see lots of spurious errors from shellcheck
like the following.

  ```
  # shellcheck source=SCRIPTDIR/some/source/script.sh`
  source "$(dirname "${BASH_SOURCE[0]}")/some/source/script.sh"
         ^-- SC1091: Not following: SCRIPTDIR/some/source/script.sh: openBinaryFile: does not exist (No such file or directory)
  ```

It looks like it [may be
possible](https://github.com/koalaman/shellcheck/issues/1818) to include
this option in a future version of shellcheck through the .shellcheckrc
configuration file, given that this issue is resolved, and that
super-linter supports .shellcheckrc as a configuration file for
shellcheck.
2020-08-07 15:18:40 -04:00
..
buildFileList.sh PerlCritic basic implementation 2020-08-07 14:58:40 +02:00
linter.sh Adds --external-sources option for shellcheck 2020-08-07 15:18:40 -04:00
log.sh Format (fix indentation) 2020-07-30 15:39:05 -05:00
possum.sh fixed the cool guy 2020-08-03 14:14:54 -05:00
README.md Format Markdown 2020-07-21 12:08:05 -05:00
validation.sh Format (fix indentation) 2020-07-30 15:39:05 -05:00
worker.sh Adds --external-sources option for shellcheck 2020-08-07 15:18:40 -04:00

Super-Linter Library

Main script

The file linter.sh is the main script that is called for the process and loads all other scripts as functions.

Functions

The additional files in the folder are functions to help streamline the main build process and allow for easier maintenance.

  • possum.sh
    • Official mascot of the Super-Linter
  • buildFileList.sh
    • Functions to help find files that were modified, or need to be scanned
  • validation.sh
    • Logic to see what linters are enabled
  • worker.sh
    • Calls to the various linters and the test cases for each