diff options
author | Guillaume Lambert <guillaume.lambert@orange.com> | 2021-03-08 21:49:28 +0100 |
---|---|---|
committer | Sylvain Desbureaux <sylvain.desbureaux@orange.com> | 2021-04-06 12:01:13 +0000 |
commit | d8eab71b6a1f4e89ec27df3228180912e3253051 (patch) | |
tree | ef3d78b8ec8badf0bc8833a281237dd3f09a413e | |
parent | 810890cce295aa33c1b8e2e79b2977b58837ef80 (diff) |
[COMMON] Add a checkbashisms tox profile
to identify potential bashisms in scripts
and ensure compatibility with dash and other POSIX shells
as often found in MAC OS X and BSD or UNIX systems.
Though bash is a good interactive user shell,
many UN*X systems and GNU+Linux distributions now prefers Almquist
or Kornshell variants for scripting in order to improve the system
performance and maintenability.
https://wiki.ubuntu.com/DashAsBinSh
https://mywiki.wooledge.org/Bashism
https://en.wikipedia.org/wiki/Almquist_shell
Issue-ID: OOM-2643
Signed-off-by: Guillaume Lambert <guillaume.lambert@orange.com>
Change-Id: Ibfa114f5c4797e526edc6f59397117e093868c24
-rw-r--r-- | tox.ini | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -43,6 +43,17 @@ deps = commands = gitlint +[testenv:checkbashisms] +deps = +whitelist_externals = sh + find + checkbashisms +commands = + sh -c 'which checkbashisms>/dev/null || sudo yum install devscripts-minimal || sudo apt-get install devscripts \ + || (echo "checkbashisms command not found - please install it (e.g. sudo apt-get install devscripts | \ + yum install devscripts-minimal )" >&2 && exit 1)' + find . -not -path '*/\.*' -name *.sh -exec checkbashisms -f \{\} + + [testenv:autopep8] deps = autopep8 commands = |