# Home Lab Host Inventory
# Used by sync-configs.sh for configuration management

# Host Types:
#   - proxmox: Proxmox VE hypervisor (LXC/VM configs)
#   - docker: Hosts running Docker containers
#   - local: Local machine (no SSH needed)

hosts:
  # Proxmox Hypervisor
  proxmox:
    type: proxmox
    ssh_alias: proxmox
    ip: 10.10.0.11
    user: root
    description: "Main Proxmox VE hypervisor"
    config_paths:
      lxc: /etc/pve/nodes/proxmox/lxc
      qemu: /etc/pve/nodes/proxmox/qemu-server

  # Ubuntu Server (Physical)
  ubuntu-manticore:
    type: docker
    ssh_alias: ubuntu-manticore
    ip: 10.10.0.226
    user: cal
    description: "Physical Ubuntu server - media services and secondary DNS"
    config_paths:
      docker-compose: /home/cal/docker
    services:
      - jellyfin
      - tdarr
      - watchstate
      - pihole
      - orbital-sync
    documentation: media-servers/jellyfin-ubuntu-manticore.md
    dns_config:
      pihole_webui: http://10.10.0.226:8053/admin
      role: secondary  # Part of dual Pi-hole HA setup

  # Discord Bots VM (Proxmox)
  discord-bots:
    type: docker
    ssh_alias: discord-bots
    ip: 10.10.0.33
    user: cal
    description: "Discord bots and game services"
    config_paths:
      docker-compose: /home/cal/container-data
    services:
      - mln-ghost-ball
      - postgres
      - home-run-derby
      - grizzlies-pa
      - foundry
      - major-domo
      - fallout-dice
      - forever-werewolf
      - sbadev-database
      - mln-central
      - sand-trap-scramble

  # SBA Bots VM (Proxmox)
  sba-bots:
    type: docker
    ssh_alias: sba-bots
    ip: 10.10.0.88
    user: cal
    description: "SBA/Paper Dynasty production bots"
    config_paths:
      docker-compose: /home/cal/container-data
    services:
      - paper-dynasty
      - major-domo
      - sba-website
      - sba-ghost

  # Database VM (Proxmox)
  strat-database:
    type: docker
    ssh_alias: strat-database
    ip: 10.10.0.42
    user: cal
    description: "Database services"
    config_paths:
      docker-compose: /home/cal/container-data
    services:
      - sba-cards
      - pd-database
      - postgres-database
      - sba-database
      - dev-pd-database
      - dev-sba-database

  # Arr Stack LXC (Proxmox)
  arr-stack:
    type: docker
    ssh_alias: arr-stack
    ip: 10.10.0.221
    user: root
    description: "Media automation stack (Sonarr, Radarr, etc.)"
    config_paths:
      docker-compose: /opt/arr-stack
    services:
      - arr-stack

  # n8n LXC (Proxmox)
  n8n:
    type: docker
    ssh_alias: n8n
    ip: 10.10.0.210
    user: root
    description: "n8n workflow automation and utility tools"
    config_paths:
      docker-compose: /opt/n8n
    services:
      - n8n
      - omni-tools
      - termix

  # Foundry VTT LXC (Proxmox)
  foundry-lxc:
    type: docker
    ssh_alias: foundry-lxc
    ip: 10.10.0.223
    user: root
    description: "Foundry VTT tabletop gaming server"
    config_paths:
      docker-compose: /opt/foundry
    services:
      - foundry

  # OpenClaw LXC (Proxmox)
  openclaw:
    type: docker
    ssh_alias: openclaw
    ip: 10.10.0.224
    user: root
    description: "OpenClaw personal AI assistant"
    config_paths:
      docker-compose: /opt/openclaw
    services:
      - openclaw

  # Gitea LXC (Proxmox)
  gitea:
    type: lxc
    ssh_alias: gitea
    ip: 10.10.0.225
    user: root
    vmid: 225
    description: "Gitea self-hosted Git server with CI/CD"
    url: https://git.manticorum.com
    config_paths:
      gitea: /etc/gitea
      data: /var/lib/gitea
    services:
      - gitea
    database:
      type: postgresql
      version: "12"
      name: gitea
      user: gitea

  # Home Assistant VM (Proxmox)
  home-assistant:
    type: homeassistant
    ip: 10.0.0.28
    vmid: 109
    user: root
    description: "Home Assistant OS - smart home automation"
    api:
      port: 8123
      env_file: server-configs/home-assistant/.env
    integrations:
      - matter
      - mobile_app
      - met_weather
    services:
      - home-assistant-core
      - matter-server

  # Local Development Machine
  nobara-desktop:
    type: local
    ip: null
    user: cal
    description: "Local development workstation"
    config_paths:
      docker-compose:
        - /mnt/NV2/Development/major-domo/discord-app-v2
        - /mnt/NV2/Development/strat-gameplay-webapp
    services:
      - major-domo-dev
      - strat-gameplay-webapp

  # NPM + Pi-hole Host
  npm-pihole:
    type: docker
    ssh_alias: npm-pihole
    ip: 10.10.0.16
    user: cal
    description: "Nginx Proxy Manager + Pi-hole DNS server"
    config_paths:
      scripts: /home/cal/scripts
    services:
      - nginx-proxy-manager
      - pihole
    documentation: server-configs/networking/nginx-proxy-manager-pihole.md
    automation:
      dns_sync: /home/cal/scripts/npm-pihole-sync.sh
      cron: "0 * * * *"  # Hourly

  # Uptime Kuma LXC (Proxmox)
  uptime-kuma:
    type: docker
    ssh_alias: uptime-kuma
    ip: 10.10.0.227
    user: root
    vmid: 227
    description: "Uptime Kuma - service uptime monitoring"
    config_paths:
      docker-compose: /opt/uptime-kuma
    services:
      - uptime-kuma
    web_ui: http://10.10.0.227:3001
    url: https://status.manticorum.com

  # Akamai Cloud Server
  akamai:
    type: docker
    ssh_alias: akamai
    ip: 172.237.147.99
    user: root
    description: "Akamai Linode - public-facing services"
    config_paths:
      docker-compose: /root/container-data
    services:
      - nginx-proxy-manager
      - major-domo
      - dev-paper-dynasty
      - sba-database
      - postgres
      - sba-website
      - sqlite-major-domo
      - temp-postgres

# Decommissioned hosts (kept for reference)
# decommissioned:
#   tdarr-old:
#     ip: 10.10.0.43
#     note: "Replaced by ubuntu-manticore tdarr"
#   docker-home:
#     ip: 10.10.0.124
#     note: "Decommissioned"
