27 lines
726 B
Bash
27 lines
726 B
Bash
#!/bin/sh
|
|||
|
|
# Загружает site-a.env в environment и вызывает ansible-playbook.
|
||
|
|
# Использование: ./run.sh site-a.yml [доп. аргументы ansible-playbook]
|
||
|
|
set -e
|
||
|
|
|
||
|
|
cd "$(dirname "$0")"
|
||
|
|
|
||
|
|
ENV_FILE="${SITE_A_ENV_FILE:-site-a.env}"
|
||
|
|
if [ ! -f "$ENV_FILE" ]; then
|
||
|
|
echo "Не найден файл переменных окружения: $ENV_FILE" >&2
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
set -a
|
||
|
|
# shellcheck disable=SC1090
|
||
|
|
. "./$ENV_FILE"
|
||
|
|
set +a
|
||
|
|
|
||
|
|
PLAYBOOK="${1:-site-a.yml}"
|
||
|
|
shift 2>/dev/null || true
|
||
|
|
|
||
|
|
ANSIBLE_PLAYBOOK_BIN="ansible-playbook"
|
||
|
|
if [ -x "../venv/bin/ansible-playbook" ]; then
|
||
|
|
ANSIBLE_PLAYBOOK_BIN="../venv/bin/ansible-playbook"
|
||
|
|
fi
|
||
|
|
|
||
|
|
exec "$ANSIBLE_PLAYBOOK_BIN" -i inventory/site-a.yml "$PLAYBOOK" "$@"
|