tools: use toolkit inventory for all ansible commands
Route ansible_cmd through ppf inventory instead of /opt/ansible default. Eliminates dynamic inventory warnings and connects via WireGuard IPs.
This commit is contained in:
@@ -10,6 +10,7 @@ set -eu
|
|||||||
PPF_DIR="${PPF_DIR:-$HOME/git/ppf}"
|
PPF_DIR="${PPF_DIR:-$HOME/git/ppf}"
|
||||||
ANSIBLE_DIR="/opt/ansible"
|
ANSIBLE_DIR="/opt/ansible"
|
||||||
ANSIBLE_VENV="${ANSIBLE_DIR}/venv/bin/activate"
|
ANSIBLE_VENV="${ANSIBLE_DIR}/venv/bin/activate"
|
||||||
|
PPF_INVENTORY="${PPF_DIR}/tools/playbooks/inventory.ini"
|
||||||
|
|
||||||
# ---------------------------------------------------------------------------
|
# ---------------------------------------------------------------------------
|
||||||
# Host topology
|
# Host topology
|
||||||
@@ -97,25 +98,25 @@ hosts_csv() {
|
|||||||
# ---------------------------------------------------------------------------
|
# ---------------------------------------------------------------------------
|
||||||
# Ansible wrapper
|
# Ansible wrapper
|
||||||
# ---------------------------------------------------------------------------
|
# ---------------------------------------------------------------------------
|
||||||
# Runs ansible with venv activated and ANSIBLE_REMOTE_TMP set.
|
# Runs ansible with toolkit inventory via venv.
|
||||||
# Usage: ansible_cmd <ansible args...>
|
# Usage: ansible_cmd <ansible args...>
|
||||||
ansible_cmd() {
|
ansible_cmd() {
|
||||||
(
|
(
|
||||||
# shellcheck disable=SC1090
|
# shellcheck disable=SC1090
|
||||||
. "$ANSIBLE_VENV"
|
. "$ANSIBLE_VENV"
|
||||||
cd "$ANSIBLE_DIR"
|
cd "$ANSIBLE_DIR"
|
||||||
ANSIBLE_REMOTE_TMP=/tmp/.ansible ansible "$@"
|
ansible -i "$PPF_INVENTORY" "$@"
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
# Runs ansible-playbook with venv activated and ANSIBLE_REMOTE_TMP set.
|
# Runs ansible-playbook with toolkit inventory via venv.
|
||||||
# Usage: ansible_playbook_cmd <ansible-playbook args...>
|
# Usage: ansible_playbook_cmd <ansible-playbook args...>
|
||||||
ansible_playbook_cmd() {
|
ansible_playbook_cmd() {
|
||||||
(
|
(
|
||||||
# shellcheck disable=SC1090
|
# shellcheck disable=SC1090
|
||||||
. "$ANSIBLE_VENV"
|
. "$ANSIBLE_VENV"
|
||||||
cd "$ANSIBLE_DIR"
|
cd "$ANSIBLE_DIR"
|
||||||
ANSIBLE_REMOTE_TMP=/tmp/.ansible ansible-playbook "$@"
|
ansible-playbook "$@"
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user