This commit captures the infrastructure state immediately following the "Post-Tyranny Tech" workshop on January 23rd, 2026. Infrastructure Status: - 13 client servers deployed (white, valk, zwaan, specht, das, uil, vos, haas, wolf, ree, mees, mus, mol, kikker) - Services: Authentik SSO, Nextcloud, Collabora Office, Traefik - Private network architecture with edge NAT gateway - OIDC integration between Authentik and Nextcloud - Automated recovery flows and invitation system - Container update monitoring with Diun - Uptime monitoring with Uptime Kuma Changes include: - Multiple new client host configurations - Network architecture improvements (private IPs + NAT) - DNS management automation - Container update notifications - Email configuration via Mailgun - SSH key generation for all clients - Encrypted secrets for all deployments - Health check and diagnostic scripts Known Issues to Address: - Nextcloud version pinned to v30 (should use 'latest' or v32) - Zitadel references in templates (migrated to Authentik but templates not updated) - Traefik dynamic config has obsolete static routes 🤖 Generated with Claude Code (https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
40 lines
876 B
INI
40 lines
876 B
INI
[defaults]
|
|
# Inventory configuration
|
|
# inventory = hcloud.yml # Disabled - use -i flag instead
|
|
host_key_checking = False
|
|
interpreter_python = auto_silent
|
|
|
|
# Performance
|
|
forks = 10
|
|
gathering = smart
|
|
fact_caching = jsonfile
|
|
fact_caching_connection = /tmp/ansible_facts
|
|
fact_caching_timeout = 86400
|
|
|
|
# Output
|
|
stdout_callback = default
|
|
result_format = yaml
|
|
bin_ansible_callbacks = True
|
|
display_skipped_hosts = False
|
|
|
|
# SSH
|
|
remote_user = root
|
|
private_key_file = ~/.ssh/ptt_infrastructure
|
|
timeout = 30
|
|
|
|
# Roles
|
|
roles_path = ./roles
|
|
|
|
[inventory]
|
|
# Enable inventory plugins
|
|
enable_plugins = hetzner.hcloud.hcloud, ini, yaml, auto
|
|
|
|
[privilege_escalation]
|
|
become = True
|
|
become_method = sudo
|
|
become_user = root
|
|
become_ask_pass = False
|
|
|
|
[ssh_connection]
|
|
pipelining = True
|
|
ssh_args = -o ControlMaster=auto -o ControlPersist=60s -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no
|