#!/bin/bash set -euxo pipefail -o noglob export LC_ALL=C.UTF-8 export LANG=C.UTF-8 _PATH='roles' _EXCLUDE="" while [[ $# -gt 0 ]] ; do case $1 in -e|--exclude) _EXCLUDE="${_EXCLUDE} -not -path ${_PATH}/$2/*" shift shift ;; -i|--include) _PATH="${_PATH}/$2" shift shift ;; -h|--help) echo "Usage: molecule_run.sh [-h|--help] [-e|--exclude] [-i|--include]" exit 0 ;; esac done for d in $(find ${_PATH} ${_EXCLUDE} -name molecule -type d) do pushd $(dirname $d) molecule test --all popd done