## Why Ansible fails to run against `relay-server` because it cannot find a Python interpreter at the default path `/usr/bin/python3`. The remote host does not have Python installed at that location, causing `ansible.legacy.setup` (fact gathering) to fail with `rc: 127`. ## What Changes - Install Python 3 on the relay server via a raw task (which doesn't require Python) before any other plays run. - Configure `ansible_python_interpreter` to use auto-discovery so Ansible can locate Python regardless of install path. ## Capabilities ### New Capabilities - `python-bootstrap`: Ensure Python 3 is installed on remote hosts before Ansible modules are used, using raw/shell commands that don't require Python. ### Modified Capabilities - `server-base`: Add `ansible_python_interpreter` configuration to handle hosts where Python may not be at the default path. ## Impact - `inventory/hosts.yml` or `group_vars/all.yml`: Add `ansible_python_interpreter: auto` setting. - `site.yml`: Add a pre-play that uses `raw` module to install Python 3 on hosts that lack it. - All hosts in the inventory are affected, but the bootstrap is idempotent and safe for hosts that already have Python installed.