all: hosts: production-vps: ansible_host: 217.154.211.139 ansible_user: root ansible_ssh_private_key_file: ~/.ssh/id_rsa vars: # No Forgejo on production — code is pulled from git.skick.app install_forgejo: false # 4 GB swap file: absorbs docker-build peaks on the 8 GB host swap_size_mb: 4096 # Docker docker_network: church-website-net # PostgreSQL postgres_container_name: postgres postgres_image: postgis/postgis:16-3.4 postgres_volume: pgdata # Tuned for 4 vCPU / 4 GB shared with the Next.js app and on-server builds postgres_server_args: >- -c max_connections=40 -c shared_buffers=256MB -c effective_cache_size=1GB -c work_mem=8MB -c maintenance_work_mem=64MB -c checkpoint_completion_target=0.9 -c max_wal_size=1GB -c random_page_cost=1.1 -c effective_io_concurrency=200 # Databases databases: - name: church_website user: church_website password: "{{ vault_db_password }}" # Caddy caddy_domains: - domain: hl-mutter-teresa-chemnitz.de proxy_port: 3001 caddy_redirects: - from: www.hl-mutter-teresa-chemnitz.de to: hl-mutter-teresa-chemnitz.de # Parish shortcut subdomains (replace the HTTP-only IONOS forwards; # to_path drops the incoming URI and redirects to a fixed page) - from: st-antonius.hl-mutter-teresa-chemnitz.de to: hl-mutter-teresa-chemnitz.de to_path: /gemeinde/st-antonius - from: st-franziskus.hl-mutter-teresa-chemnitz.de to: hl-mutter-teresa-chemnitz.de to_path: /gemeinde/st-franziskus - from: st-johannes-nepomuk.hl-mutter-teresa-chemnitz.de to: hl-mutter-teresa-chemnitz.de to_path: /gemeinde/st-johannes-nepomuk - from: st-joseph.hl-mutter-teresa-chemnitz.de to: hl-mutter-teresa-chemnitz.de to_path: /gemeinde/st-joseph - from: st-marien.hl-mutter-teresa-chemnitz.de to: hl-mutter-teresa-chemnitz.de to_path: /gemeinde/st-marien-zschopau # App environments app_environments: - name: production port: 3001 domain: hl-mutter-teresa-chemnitz.de db_name: church_website db_user: church_website db_password: "{{ vault_db_password }}" payload_secret: "{{ vault_payload_secret }}" site_id: chemnitz google_bucket: "{{ vault_google_bucket }}" resend_api_key: "{{ vault_resend_api_key }}" # Repo repo_dir: /opt/church-website/repo envs_dir: /opt/church-website/envs scripts_dir: /opt/church-website/scripts repo_url: "{{ vault_repo_url }}" repo_branch: staging