--- title: Deployment Scripts created: 2026-04-28 updated: 2026-04-28 type: concept tags: [concept, automation, homelab, scripts] confidence: high --- # Deployment Scripts Maintenance, deployment, and operational automation scripts for homelab management. ## Homelab Scripts (`scripts/homelab/`) | Script | Purpose | |--------|---------| | `deploy-service.py` | Deploy services to remote hosts | | `detect-drift.py` | Detect config drift between repo and hosts | | `drift_detector.py` | SSH-based container state comparison | | `generate-context.py` | Generate context for AI assistants | | `collect-host-inventory.py` | Collect host inventory information | | `validate_catalog.py` | Validate catalog consistency | ## Authentik Scripts (`scripts/authentik/`) Scripts for managing Authentik identity provider: OAuth2/OIDC providers, group bindings, branding, and SSO configuration. ## Maintenance Scripts (`scripts/maintenance/`) | Script | Purpose | |--------|---------| | `fix-permissions.py` | Fix file and directory permissions | | `fix-truenas-permissions.py` | Fix TrueNAS permissions | ## Ansible Playbooks (`ansible/`) | Playbook | Purpose | |----------|---------| | `sync-configs.yml` | Pull/push docker-compose configs | | `deploy-services.yml` | Restart Docker services | | `sync-opencode.yml` | Push OpenCode configurations | | `ping.yml` | Test connectivity to all hosts | ## Host Inventory | Host | IP | Repo Path | Purpose | |------|-----|-----------|---------| | ubuntu | 192.168.50.61 | homelab/ubuntu | Primary Docker host | | grizzley | 192.168.50.84 | homelab/grizzley | Edge ingress | | ice | 192.168.50.197 | homelab/ice | Control plane | | truenas | 192.168.50.12 | homelab/truenas | Storage host | | pve | 192.168.50.11 | homelab/proxmox | Hypervisor | ## Related - [[hermes-opencode-cluster]] — AI agent cluster using these scripts - [[traefik-ha]] — Traefik ingress deployment - [[nfs-storage]] — TrueNAS storage management - [[sso-authentik]] — Authentik SSO configuration