diff --git a/README.md b/README.md index 12793ce..7d18fbb 100644 --- a/README.md +++ b/README.md @@ -9,29 +9,10 @@ ansible-playbook deploy_matrix.yml -i inventory/hosts.yml --check --diff ## Deploy ## ``` -ansible-playbook secure.yml -i inventory/hosts.yml --check --diff +ansible-playbook secure.yml -i inventory/hosts.yml ``` ``` -ansible-playbook deploy_matrix.yml -i inventory/hosts.yml --check --diff +ansible-playbook deploy_matrix.yml -i inventory/hosts.yml ``` -``` -ansible-galaxy collection install containers.podman -``` -``` -ssh-keygen -t ed25519 -C "matrix-deploy" -# Press Enter to save default: ~/.ssh/id_ed25519 -``` -``` -ssh-copy-id deploy@matrix.example.com -# Replace with your actual server IP/hostname & user -``` -## Deployment ## -``` -# Just re-run (idempotent): -ansible-playbook playbook.yml -i inventory/hosts.yml --ask-become-pass - -# Or re-run only nginx role (if you changed site/Nginx) -ansible-playbook playbook.yml --tags nginx-proxy --ask-vault-pass -``` \ No newline at end of file diff --git a/deploy_matrix.yml b/deploy_matrix.yml index 286c868..8f7fa5c 100644 --- a/deploy_matrix.yml +++ b/deploy_matrix.yml @@ -96,8 +96,8 @@ - name: Render landing page index.html ansible.builtin.template: - src: landing.html.j2 # path relative to this playbook file - dest: "{{ nginx_html_path }}" # we already defined this variable in vars.yml + src: landing.html.j2 + dest: "{{ nginx_html_path }}" mode: "0644" - name: Render Synapse Secret key @@ -178,9 +178,9 @@ volumes: - "{{ vol_synapse }}:/data" - "{{ vol_media }}:/data/media_store" - - "{{ synapse_cfg_path }}:/data/homeserver.yaml:ro:Z" - - "{{ synapse_secret_key_path }}:/data/my.matrix.host.signing.key:ro:Z" - - "{{ synapse_log_config }}:/data/matrix.fpov.space.log.config:ro:Z" + - "{{ synapse_cfg_path }}:/data/homeserver.yaml:Z" + - "{{ synapse_secret_key_path }}:/data/my.matrix.host.signing.key:Z" + - "{{ synapse_log_config }}:/data/matrix.fpov.space.log.config:Z" network: "{{ podman_network }}" restart_policy: always @@ -204,6 +204,8 @@ containers.podman.podman_container: name: "{{ teamspeak_container_name }}" image: "{{ teamspeak_image }}" + env: + TSSERVER_LICENSE_ACCEPTED: 1 state: started ports: # UDP voice port – exposed directly on the host (no Traefik) diff --git a/templates/homeserver.yaml.j2 b/templates/homeserver.yaml.j2 index fa51417..144a367 100644 --- a/templates/homeserver.yaml.j2 +++ b/templates/homeserver.yaml.j2 @@ -22,15 +22,6 @@ turn_uris: turn_shared_secret: "{{ turn_secret }}" turn_user_lifetime: "86400000" # 1 day in ms (optional) -# ----------------------------------------------------------------- -# NEW – Google OIDC provider -# ----------------------------------------------------------------- -oidc_providers: - - idp_id: google - issuer: "https://accounts.google.com" - client_id: "{{ google_oidc_client_id }}" - client_secret: "{{ google_oidc_client_secret }}" - scopes: {{ google_oidc_scopes | to_nice_yaml | indent(6) }} # ----------------------------------------------------------------- # Database provider diff --git a/vars/vars.yml b/vars/vars.yml index fd50c46..8315ad1 100644 --- a/vars/vars.yml +++ b/vars/vars.yml @@ -81,5 +81,14 @@ google_oidc_scopes: - email - profile - +# -------------------------------------------------------------- +# Landing page HTML +# -------------------------------------------------------------- +matrix_domain: "matrix.example.com" +landing_title: "Welcome to {{ matrix_domain }}" # you can embed other vars here +landing_tagline: "Matrix + Traefik + Teamspeak – all in one stack" +landing_message: | + This host runs a Matrix homeserver (Synapse), a reverse-proxy (Traefik) with + automatic Let’s Encrypt certificates, a TURN server for voice/video, and a + simple landing page.