36 lines
838 B
Bash
Executable File
36 lines
838 B
Bash
Executable File
#!/bin/bash
|
|
|
|
EXTRA_ARGS=()
|
|
|
|
OPTSTRING=":i:l:"
|
|
while getopts ${OPTSTRING} opt; do
|
|
case ${opt} in
|
|
i)
|
|
INVENTORY="$OPTARG"
|
|
;;
|
|
l)
|
|
LIMIT="$OPTARG"
|
|
;;
|
|
esac
|
|
done
|
|
|
|
if [ -f .passbolt.yml ]; then
|
|
EXTRA_ARGS+=("--extra-vars" "@.passbolt.yml")
|
|
fi
|
|
if [ -f .vault-pass ]; then
|
|
EXTRA_ARGS+=("--vault-password-file" ".vault-pass")
|
|
fi
|
|
if [[ -n "${LIMIT:-}" && -n "${INVENTORY:-}" ]]; then
|
|
INVENTORY_DIR=$(dirname "$INVENTORY")
|
|
LOCAL_HOST_VARS="$INVENTORY_DIR/host_vars/$LIMIT.local"
|
|
if [ -f "$LOCAL_HOST_VARS.yml" ]; then
|
|
EXTRA_ARGS+=("--extra-vars" "@$LOCAL_HOST_VARS.yml")
|
|
fi
|
|
if [ -f "$LOCAL_HOST_VARS.yaml" ]; then
|
|
EXTRA_ARGS+=("--extra-vars" "@$LOCAL_HOST_VARS.yaml")
|
|
fi
|
|
fi
|
|
|
|
#export PYTHONPATH=./venv/lib/python3.12/site-packages/
|
|
ansible-playbook ${EXTRA_ARGS[@]} $@
|