Skip to content

Expose ShellCheck as a vendor binary for PHP projects

License

Notifications You must be signed in to change notification settings

assertwell/shellcheck

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ShellCheck

Vidar Holen's ShellCheck is an invaluable tool for troubleshooting shell scripts, and this package makes it easy to import into the testing pipeline of your PHP-based project!

How it works

This package contains a bin/shellcheck script that serves as a proxy to the system-installed copy of ShellCheck; if the ShellCheck binary is found, arguments pass through to it normally. If ShellCheck is not found locally, users are presented with the following notice:

ShellCheck was not found in your $PATH! Please visit https://github.com/koalaman/shellcheck#installing for installation instructions.

Normally, this would result in a non-zero exit code (2), though this behavior may be suppressed with the --ignore-missing option:

$ vendor/bin/shellcheck --ignore-missing some-script.sh

ShellCheck was not found in your $PATH!
Please visit https://github.com/koalaman/shellcheck#installing for installation instructions.

$ echo $?
0

Installation

The easiest way to install this package is via Composer:

$ composer require --dev assertwell/shellcheck

You may wish to add a Composer script to make it easier for team members to run ShellCheck:

# composer.json
{
    // ...
    "scripts": {
        "test:shellcheck": [
            "shellcheck bin/*"
        ]
    },
    "scripts-descriptions": [
        "test:shellcheck": "Lint shell scripts via ShellCheck"
    ]
}

As for the installation of ShellCheck itself, please see the instructions most-relevant to your environment in the ShellCheck documentation.

License

The assertwell/shellcheck Composer package is available under the MIT license.

ShellCheck itself is the copyright of Vidar Holden and made available under the GPLv3 license.