From f624bf03dbcf167a365636ea66b39f91addfb987 Mon Sep 17 00:00:00 2001 From: "F.R.I.D.A.Y." Date: Wed, 3 Jun 2026 13:51:00 -0400 Subject: [PATCH] draft: Add fleet inventory.yml appendix to Ansible WebUI PRD --- .../ansible-automation-webui-comparison.md | 148 ++++++++++++++++++ 1 file changed, 148 insertions(+) diff --git a/PRD Drafts/ansible-automation-webui-comparison.md b/PRD Drafts/ansible-automation-webui-comparison.md index 2c85151..afdff91 100644 --- a/PRD Drafts/ansible-automation-webui-comparison.md +++ b/PRD Drafts/ansible-automation-webui-comparison.md @@ -314,3 +314,151 @@ volumes: --- *End of PRD — Iron Legion Labs* + +--- + +## Appendix: Iron Legion Fleet Inventory (`inventory.yml`) + +This inventory file is the authoritative source for Ansible targeting across the fleet. It is structured for **Semaphore UI**, **AWX**, or **command-line Ansible** consumption. + +**File:** `inventories/iron-legion.yml` + +```yaml +# Iron Legion Fleet Inventory +# Generated: 2026-06-03 +# Source: fleet documentation + live SSH config + +--- +all: + children: + fleet_nodes: + children: + core_services: + hosts: + mk7: + ansible_host: 192.168.7.7 + ansible_user: jarvis + node_role: swarm_manager + docker_host: true + + nebuchadnezzar: + ansible_host: 192.168.192.24 + ansible_user: jarvis + node_role: docker_host + docker_host: true + + pve_workers: + hosts: + mk33: + ansible_host: 192.168.7.33 + ansible_user: root + node_role: pve_worker + pve_api_url: "https://192.168.7.33:8006/" + + mk34: + ansible_host: 192.168.7.34 + ansible_user: root + node_role: pve_worker + pve_api_url: "https://192.168.7.34:8006/" + + mk39: + ansible_host: 192.168.7.39 + ansible_user: root + node_role: pve_worker + pve_api_url: "https://192.168.7.39:8006/" + + physical_agents: + hosts: + artemis: + ansible_host: 192.168.15.182 + ansible_user: jarvis + node_role: discord_gateway + hermes_agent: true + + mark44: + ansible_host: 192.168.5.214 + ansible_user: jarvis + node_role: gpu_host + gpu: true + + mark5: + ansible_host: 192.168.6.5 + ansible_user: jarvis + node_role: tbd + + mk42: + ansible_host: 192.168.0.196 + ansible_user: jarvis + node_role: pve_worker + + infrastructure: + hosts: + shield: + ansible_host: 192.168.27.205 + ansible_user: jarvis + node_role: pxe_server + + igor: + ansible_host: 192.168.10.211 + ansible_user: jarvis + node_role: nas + + tailscale_fallback: + hosts: + ts-mk7: + ansible_host: 100.66.70.51 + ansible_user: jarvis + ts-mk33: + ansible_host: 100.125.155.41 + ansible_user: jarvis + ts-mk34: + ansible_host: 100.94.190.43 + ansible_user: jarvis + + docker_hosts: + children: + swarm_manager: + hosts: + mk7: + standalone_docker: + hosts: + nebuchadnezzar: + + vars: + ansible_ssh_private_key_file: "~/.ssh/artemis_key" + ansible_python_interpreter: /usr/bin/python3 + ansible_connection: ssh + ansible_ssh_common_args: ">- + -o StrictHostKeyChecking=accept-new + -o ConnectTimeout=5" + fleet_domain: ai.home + +pve_workers: + vars: + ansible_ssh_private_key_file: "~/.ssh/vscode_ed25519" + ansible_become: true + ansible_become_user: root + +core_services: + vars: + ansible_become: true + ansible_become_user: root + ansible_ssh_private_key_file: "~/.ssh/artemis_key" + +physical_agents: + vars: + ansible_become: false + ansible_ssh_private_key_file: "~/.ssh/artemis_key" +``` + +**Usage:** +```bash +# Test reachability +ansible all -m ping -i inventories/iron-legion.yml + +# Target PVE workers only +ansible pve_workers -m setup -i inventories/iron-legion.yml + +# Check Docker services on swarm manager +ansible swarm_manager -a "docker service ls" -i inventories/iron-legion.yml +```