Commit the accumulated infrastructure work that was living only in the working tree: monitoring stack, emergency access/bot, gyro allocator, grimmory, adguard, backup audit and the OpenCode agent definitions. Also ignore Python bytecode, local archives and Nix/direnv artifacts. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GTocXkGUUazHdKKd3r9k71
210 lines
7.6 KiB
YAML
210 lines
7.6 KiB
YAML
all:
|
|
vars:
|
|
ansible_python_interpreter: /usr/bin/python3
|
|
ansible_user: ansible
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab_ansible
|
|
ansible_become: true
|
|
homelab_lan_cidr: 192.168.1.0/24
|
|
homelab_service_range: 192.168.1.5-192.168.1.40
|
|
openvpn_network_cidr: 10.78.0.0/30
|
|
openvpn_listen_port: 8443
|
|
openvpn_forwarded_services:
|
|
- name: satisfactory
|
|
protocol: udp
|
|
public_port: 7777
|
|
target_host: 192.168.1.100
|
|
target_port: 7777
|
|
|
|
children:
|
|
homelab:
|
|
hosts:
|
|
ru-vps:
|
|
ansible_host: vps
|
|
monitoring_exporter_node_listen_address: 127.0.0.1:9100
|
|
openvpn_local_ip: 10.78.0.1
|
|
openvpn_peer_ip: 10.78.0.2
|
|
openvpn_role: server
|
|
|
|
pve_nodes:
|
|
hosts:
|
|
cloud-pc:
|
|
ansible_host: 192.168.1.5
|
|
ansible_ssh_common_args: >-
|
|
-o ProxyCommand="ssh -i ~/.ssh/id_ed25519_homelab_ansible -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new -p 3422 -W %h:%p ansible@157.22.231.198"
|
|
expected_lan_ip: 192.168.1.5
|
|
storage_mounts:
|
|
- src: UUID=ae278333-4116-4225-9b95-595496fadd26
|
|
path: /opt/data
|
|
fstype: ext4
|
|
- src: UUID=940a9a4e-10cf-4380-9d22-a71549066561
|
|
path: /mnt/backup
|
|
fstype: ext4
|
|
|
|
mini-pc:
|
|
ansible_host: 192.168.1.10
|
|
ansible_ssh_common_args: >-
|
|
-o ProxyCommand="ssh -i ~/.ssh/id_ed25519_homelab_ansible -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new -p 3422 -W %h:%p ansible@157.22.231.198"
|
|
expected_lan_ip: 192.168.1.10
|
|
|
|
lxc_infra:
|
|
hosts:
|
|
pbs:
|
|
ansible_host: 192.168.1.20
|
|
ansible_user: root
|
|
ansible_become: false
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab
|
|
expected_lan_ip: 192.168.1.20
|
|
|
|
ovpn-mini:
|
|
ansible_host: 192.168.1.23
|
|
ansible_user: root
|
|
ansible_become: false
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab
|
|
expected_lan_ip: 192.168.1.23
|
|
openvpn_local_ip: 10.78.0.2
|
|
openvpn_peer_ip: 10.78.0.1
|
|
openvpn_role: gateway
|
|
|
|
adguard:
|
|
ansible_host: 192.168.1.28
|
|
ansible_user: root
|
|
ansible_become: false
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab
|
|
ansible_ssh_common_args: >-
|
|
-o ProxyCommand="ssh -i ~/.ssh/id_ed25519_homelab_ansible -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new -p 3422 -W %h:%p ansible@157.22.231.198"
|
|
expected_lan_ip: 192.168.1.28
|
|
|
|
docker-test:
|
|
ansible_host: 192.168.1.29
|
|
ansible_user: root
|
|
ansible_become: false
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab
|
|
ansible_ssh_common_args: >-
|
|
-o ProxyCommand="ssh -i ~/.ssh/id_ed25519_homelab_ansible -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new -p 3422 -W %h:%p ansible@157.22.231.198"
|
|
expected_lan_ip: 192.168.1.29
|
|
|
|
vaultwarden:
|
|
ansible_host: 192.168.1.24
|
|
ansible_user: root
|
|
ansible_become: false
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab
|
|
ansible_ssh_common_args: >-
|
|
-o ProxyCommand="ssh -i ~/.ssh/id_ed25519_homelab_ansible -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new -p 3422 -W %h:%p ansible@157.22.231.198"
|
|
expected_lan_ip: 192.168.1.24
|
|
|
|
gitea:
|
|
ansible_host: 192.168.1.25
|
|
ansible_user: root
|
|
ansible_become: false
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab
|
|
ansible_ssh_common_args: >-
|
|
-o ProxyCommand="ssh -i ~/.ssh/id_ed25519_homelab_ansible -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new -p 3422 -W %h:%p ansible@157.22.231.198"
|
|
expected_lan_ip: 192.168.1.25
|
|
|
|
memoir-bot:
|
|
ansible_host: 192.168.1.26
|
|
ansible_user: root
|
|
ansible_become: false
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab
|
|
ansible_ssh_common_args: >-
|
|
-o ProxyCommand="ssh -i ~/.ssh/id_ed25519_homelab_ansible -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new -p 3422 -W %h:%p ansible@157.22.231.198"
|
|
expected_lan_ip: 192.168.1.26
|
|
|
|
mihomo:
|
|
ansible_host: 192.168.1.27
|
|
ansible_user: root
|
|
ansible_become: false
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab
|
|
ansible_ssh_common_args: >-
|
|
-o ProxyCommand="ssh -i ~/.ssh/id_ed25519_homelab_ansible -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new -p 3422 -W %h:%p ansible@157.22.231.198"
|
|
expected_lan_ip: 192.168.1.27
|
|
|
|
monitoring:
|
|
ansible_host: 192.168.1.30
|
|
ansible_user: root
|
|
ansible_become: false
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab
|
|
ansible_ssh_common_args: >-
|
|
-o ProxyCommand="ssh -i ~/.ssh/id_ed25519_homelab_ansible -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new -p 3422 -W %h:%p ansible@157.22.231.198"
|
|
expected_lan_ip: 192.168.1.30
|
|
|
|
hermes-ai:
|
|
ansible_host: 192.168.1.31
|
|
ansible_user: root
|
|
ansible_become: false
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab
|
|
ansible_ssh_common_args: >-
|
|
-o ProxyCommand="ssh -i ~/.ssh/id_ed25519_homelab_ansible -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new -p 3422 -W %h:%p ansible@157.22.231.198"
|
|
expected_lan_ip: 192.168.1.31
|
|
bash_config_proxy_http_url: http://192.168.1.27:7890
|
|
bash_config_proxy_socks_url: socks5h://192.168.1.27:7890
|
|
|
|
emergency-bot:
|
|
ansible_host: 192.168.1.32
|
|
ansible_user: root
|
|
ansible_become: false
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab
|
|
ansible_ssh_common_args: >-
|
|
-o ProxyCommand="ssh -i ~/.ssh/id_ed25519_homelab_ansible -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new -p 3422 -W %h:%p ansible@157.22.231.198"
|
|
expected_lan_ip: 192.168.1.32
|
|
|
|
grimmory:
|
|
ansible_host: 192.168.1.34
|
|
ansible_user: root
|
|
ansible_become: false
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab
|
|
ansible_ssh_common_args: >-
|
|
-o ProxyCommand="ssh -i ~/.ssh/id_ed25519_homelab_ansible -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new -p 3422 -W %h:%p ansible@157.22.231.198"
|
|
expected_lan_ip: 192.168.1.34
|
|
|
|
gyro:
|
|
ansible_host: 192.168.1.35
|
|
ansible_user: root
|
|
ansible_become: false
|
|
ansible_ssh_private_key_file: ~/.ssh/id_ed25519_homelab
|
|
ansible_ssh_common_args: >-
|
|
-o ProxyCommand="ssh -i ~/.ssh/id_ed25519_homelab_ansible -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new -p 3422 -W %h:%p ansible@157.22.231.198"
|
|
expected_lan_ip: 192.168.1.35
|
|
|
|
monitoring_exporters:
|
|
hosts:
|
|
ru-vps:
|
|
cloud-pc:
|
|
mini-pc:
|
|
pbs:
|
|
ovpn-mini:
|
|
vaultwarden:
|
|
gitea:
|
|
memoir-bot:
|
|
mihomo:
|
|
adguard:
|
|
monitoring:
|
|
grimmory:
|
|
|
|
monitoring_smart_exporters:
|
|
hosts:
|
|
cloud-pc:
|
|
mini-pc:
|
|
|
|
monitoring_server:
|
|
hosts:
|
|
monitoring:
|
|
|
|
vpn_openvpn:
|
|
hosts:
|
|
ru-vps:
|
|
ovpn-mini:
|
|
|
|
shell_hosts:
|
|
hosts:
|
|
ru-vps:
|
|
cloud-pc:
|
|
mini-pc:
|
|
hermes-ai:
|
|
|
|
servers:
|
|
children:
|
|
homelab:
|
|
pve_nodes:
|
|
lxc_infra:
|