5c38f3cea2
This version just gets the relevant paths from PluginLoader and then uses the existing imp.find_plugin() calls in the AnsiballZ code to load the proper module_utils. Modify PluginLoader to optionally omit subdirectories (module_utils needs to operate on top level dirs, not on subdirs because it has a hierarchical namespace whereas all other plugins use a flat namespace). Rename snippet* variables to module_utils* Add a small number of unittests for recursive_finder Add a larger number of integration tests to demonstrate that module_utils is working. Whitelist module-style shebang in test target library dirs Prefix module_data variable with b_ to be clear that it holds bytes data
23 lines
818 B
Bash
Executable file
23 lines
818 B
Bash
Executable file
#!/bin/sh
|
|
|
|
grep '^#!' -rIn . \
|
|
--exclude-dir .git \
|
|
--exclude-dir .tox \
|
|
| grep ':1:' | sed 's/:1:/:/' | grep -v -E \
|
|
-e '^\./lib/ansible/modules/' \
|
|
-e '^\./test/integration/targets/[^/]*/library/[^/]*:#!powershell$' \
|
|
-e '^\./test/integration/targets/[^/]*/library/[^/]*:#!/usr/bin/python$' \
|
|
-e '^\./test/sanity/validate-modules/validate-modules:#!/usr/bin/env python2$' \
|
|
-e '^\./hacking/cherrypick.py:#!/usr/bin/env python3$' \
|
|
-e ':#!/bin/sh$' \
|
|
-e ':#!/bin/bash( -[eux]|$)' \
|
|
-e ':#!/usr/bin/make -f$' \
|
|
-e ':#!/usr/bin/env python$' \
|
|
-e ':#!/usr/bin/env bash$' \
|
|
-e ':#!/usr/bin/env fish$' \
|
|
|
|
if [ $? -ne 1 ]; then
|
|
echo "One or more file(s) listed above have an unexpected shebang."
|
|
echo "See $0 for the list of acceptable values."
|
|
exit 1
|
|
fi
|