mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2026-08-06 07:53:06 +10:00
Remove dead metrics support from the mautrix-gvoice bridge
Bridges based on bridgev2 no longer expose a metrics endpoint, so the playbook was publishing a Traefik route which could only ever yield an HTTP 502. Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/5487
This commit is contained in:
@@ -2325,9 +2325,6 @@ matrix_bridge_mautrix_gvoice_container_labels_traefik_docker_network: "{{ matrix
|
|||||||
matrix_bridge_mautrix_gvoice_container_labels_traefik_entrypoints: "{{ traefik_entrypoint_primary }}"
|
matrix_bridge_mautrix_gvoice_container_labels_traefik_entrypoints: "{{ traefik_entrypoint_primary }}"
|
||||||
matrix_bridge_mautrix_gvoice_container_labels_traefik_tls_certResolver: "{{ traefik_certResolver_primary }}"
|
matrix_bridge_mautrix_gvoice_container_labels_traefik_tls_certResolver: "{{ traefik_certResolver_primary }}"
|
||||||
|
|
||||||
matrix_bridge_mautrix_gvoice_container_labels_metrics_middleware_basic_auth_enabled: "{{ matrix_metrics_exposure_http_basic_auth_enabled }}"
|
|
||||||
matrix_bridge_mautrix_gvoice_container_labels_metrics_middleware_basic_auth_users: "{{ matrix_metrics_exposure_http_basic_auth_users }}"
|
|
||||||
|
|
||||||
matrix_bridge_mautrix_gvoice_appservice_token: "{{ (matrix_homeserver_generic_secret_key + ':gvoice.as.token') | hash('sha512') | to_uuid }}"
|
matrix_bridge_mautrix_gvoice_appservice_token: "{{ (matrix_homeserver_generic_secret_key + ':gvoice.as.token') | hash('sha512') | to_uuid }}"
|
||||||
|
|
||||||
matrix_bridge_mautrix_gvoice_homeserver_address: "{{ matrix_addons_homeserver_client_api_url }}"
|
matrix_bridge_mautrix_gvoice_homeserver_address: "{{ matrix_addons_homeserver_client_api_url }}"
|
||||||
@@ -2346,12 +2343,6 @@ matrix_bridge_mautrix_gvoice_double_puppet_secrets_auto: |-
|
|||||||
else {}
|
else {}
|
||||||
}}
|
}}
|
||||||
|
|
||||||
matrix_bridge_mautrix_gvoice_metrics_enabled: "{{ prometheus_enabled or matrix_metrics_exposure_enabled }}"
|
|
||||||
|
|
||||||
matrix_bridge_mautrix_gvoice_metrics_proxying_enabled: "{{ matrix_bridge_mautrix_gvoice_metrics_enabled and matrix_metrics_exposure_enabled }}"
|
|
||||||
matrix_bridge_mautrix_gvoice_metrics_proxying_hostname: "{{ matrix_metrics_exposure_hostname }}"
|
|
||||||
matrix_bridge_mautrix_gvoice_metrics_proxying_path_prefix: "{{ matrix_metrics_exposure_path_prefix }}/mautrix-gvoice"
|
|
||||||
|
|
||||||
matrix_bridge_mautrix_gvoice_scheme: "{{ 'https' if matrix_playbook_ssl_enabled else 'http' }}"
|
matrix_bridge_mautrix_gvoice_scheme: "{{ 'https' if matrix_playbook_ssl_enabled else 'http' }}"
|
||||||
matrix_bridge_mautrix_gvoice_exposure_enabled: "{{ matrix_bridges_exposure_enabled }}"
|
matrix_bridge_mautrix_gvoice_exposure_enabled: "{{ matrix_bridges_exposure_enabled }}"
|
||||||
matrix_bridge_mautrix_gvoice_exposure_hostname: "{{ matrix_bridges_exposure_hostname }}"
|
matrix_bridge_mautrix_gvoice_exposure_hostname: "{{ matrix_bridges_exposure_hostname }}"
|
||||||
|
|||||||
@@ -67,17 +67,6 @@ matrix_bridge_mautrix_gvoice_container_labels_traefik_docker_network: "{{ matrix
|
|||||||
matrix_bridge_mautrix_gvoice_container_labels_traefik_entrypoints: web-secure
|
matrix_bridge_mautrix_gvoice_container_labels_traefik_entrypoints: web-secure
|
||||||
matrix_bridge_mautrix_gvoice_container_labels_traefik_tls_certResolver: default # noqa var-naming
|
matrix_bridge_mautrix_gvoice_container_labels_traefik_tls_certResolver: default # noqa var-naming
|
||||||
|
|
||||||
# Controls whether labels will be added that expose mautrix-gvoice' metrics
|
|
||||||
matrix_bridge_mautrix_gvoice_container_labels_metrics_enabled: "{{ matrix_bridge_mautrix_gvoice_metrics_enabled and matrix_bridge_mautrix_gvoice_metrics_proxying_enabled }}"
|
|
||||||
matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_rule: "Host(`{{ matrix_bridge_mautrix_gvoice_metrics_proxying_hostname }}`) && PathPrefix(`{{ matrix_bridge_mautrix_gvoice_metrics_proxying_path_prefix }}`)"
|
|
||||||
matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_priority: 0
|
|
||||||
matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_entrypoints: "{{ matrix_bridge_mautrix_gvoice_container_labels_traefik_entrypoints }}"
|
|
||||||
matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_tls: "{{ matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_entrypoints != 'web' }}"
|
|
||||||
matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_tls_certResolver: "{{ matrix_bridge_mautrix_gvoice_container_labels_traefik_tls_certResolver }}" # noqa var-naming
|
|
||||||
matrix_bridge_mautrix_gvoice_container_labels_metrics_middleware_basic_auth_enabled: false
|
|
||||||
# See: https://doc.traefik.io/traefik/middlewares/http/basicauth/#users
|
|
||||||
matrix_bridge_mautrix_gvoice_container_labels_metrics_middleware_basic_auth_users: ''
|
|
||||||
|
|
||||||
# Controls whether labels will be added that expose mautrix-gvoice' HTTP API
|
# Controls whether labels will be added that expose mautrix-gvoice' HTTP API
|
||||||
# (used by tools like mautrix-manager for bridge login) at `https://<hostname><path_prefix>`.
|
# (used by tools like mautrix-manager for bridge login) at `https://<hostname><path_prefix>`.
|
||||||
matrix_bridge_mautrix_gvoice_container_labels_exposure_enabled: "{{ matrix_bridge_mautrix_gvoice_exposure_enabled }}"
|
matrix_bridge_mautrix_gvoice_container_labels_exposure_enabled: "{{ matrix_bridge_mautrix_gvoice_exposure_enabled }}"
|
||||||
@@ -121,16 +110,6 @@ matrix_bridge_mautrix_gvoice_logging_level: 'warn'
|
|||||||
# If false, created portal rooms will never be federated.
|
# If false, created portal rooms will never be federated.
|
||||||
matrix_bridge_mautrix_gvoice_federate_rooms: true
|
matrix_bridge_mautrix_gvoice_federate_rooms: true
|
||||||
|
|
||||||
# Whether or not metrics endpoint should be enabled.
|
|
||||||
# Enabling them is usually enough for a local (in-container) Prometheus to consume them.
|
|
||||||
# If metrics need to be consumed by another (external) Prometheus server, consider exposing them via `matrix_bridge_mautrix_gvoice_metrics_proxying_enabled`.
|
|
||||||
matrix_bridge_mautrix_gvoice_metrics_enabled: false
|
|
||||||
|
|
||||||
# Controls whether metrics should be proxied (exposed) on a public URL.
|
|
||||||
matrix_bridge_mautrix_gvoice_metrics_proxying_enabled: false
|
|
||||||
matrix_bridge_mautrix_gvoice_metrics_proxying_hostname: ''
|
|
||||||
matrix_bridge_mautrix_gvoice_metrics_proxying_path_prefix: ''
|
|
||||||
|
|
||||||
# Controls whether mautrix-gvoice' HTTP API is exposed publicly (used by tools like mautrix-manager for bridge login).
|
# Controls whether mautrix-gvoice' HTTP API is exposed publicly (used by tools like mautrix-manager for bridge login).
|
||||||
matrix_bridge_mautrix_gvoice_exposure_enabled: false
|
matrix_bridge_mautrix_gvoice_exposure_enabled: false
|
||||||
matrix_bridge_mautrix_gvoice_exposure_hostname: ''
|
matrix_bridge_mautrix_gvoice_exposure_hostname: ''
|
||||||
|
|||||||
@@ -11,7 +11,19 @@
|
|||||||
Your configuration contains a variable, which now has a different name.
|
Your configuration contains a variable, which now has a different name.
|
||||||
Please rename the variable (`{{ item.old }}` -> `{{ item.new }}`) on your configuration file (vars.yml).
|
Please rename the variable (`{{ item.old }}` -> `{{ item.new }}`) on your configuration file (vars.yml).
|
||||||
when: "lookup('ansible.builtin.varnames', ('^' + item.old + '$'), wantlist=True) | length > 0"
|
when: "lookup('ansible.builtin.varnames', ('^' + item.old + '$'), wantlist=True) | length > 0"
|
||||||
with_items: []
|
with_items:
|
||||||
|
- {'old': 'matrix_bridge_mautrix_gvoice_metrics_enabled', 'new': '<removed> (mautrix-gvoice does not support metrics)'}
|
||||||
|
- {'old': 'matrix_bridge_mautrix_gvoice_metrics_proxying_enabled', 'new': '<removed> (mautrix-gvoice does not support metrics)'}
|
||||||
|
- {'old': 'matrix_bridge_mautrix_gvoice_metrics_proxying_hostname', 'new': '<removed> (mautrix-gvoice does not support metrics)'}
|
||||||
|
- {'old': 'matrix_bridge_mautrix_gvoice_metrics_proxying_path_prefix', 'new': '<removed> (mautrix-gvoice does not support metrics)'}
|
||||||
|
- {'old': 'matrix_bridge_mautrix_gvoice_container_labels_metrics_enabled', 'new': '<removed> (mautrix-gvoice does not support metrics)'}
|
||||||
|
- {'old': 'matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_rule', 'new': '<removed> (mautrix-gvoice does not support metrics)'}
|
||||||
|
- {'old': 'matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_priority', 'new': '<removed> (mautrix-gvoice does not support metrics)'}
|
||||||
|
- {'old': 'matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_entrypoints', 'new': '<removed> (mautrix-gvoice does not support metrics)'}
|
||||||
|
- {'old': 'matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_tls', 'new': '<removed> (mautrix-gvoice does not support metrics)'}
|
||||||
|
- {'old': 'matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_tls_certResolver', 'new': '<removed> (mautrix-gvoice does not support metrics)'}
|
||||||
|
- {'old': 'matrix_bridge_mautrix_gvoice_container_labels_metrics_middleware_basic_auth_enabled', 'new': '<removed> (mautrix-gvoice does not support metrics)'}
|
||||||
|
- {'old': 'matrix_bridge_mautrix_gvoice_container_labels_metrics_middleware_basic_auth_users', 'new': '<removed> (mautrix-gvoice does not support metrics)'}
|
||||||
|
|
||||||
- name: Fail if required mautrix-gvoice settings not defined
|
- name: Fail if required mautrix-gvoice settings not defined
|
||||||
ansible.builtin.fail:
|
ansible.builtin.fail:
|
||||||
@@ -23,6 +35,4 @@
|
|||||||
- {'name': 'matrix_bridge_mautrix_gvoice_homeserver_address', when: true}
|
- {'name': 'matrix_bridge_mautrix_gvoice_homeserver_address', when: true}
|
||||||
- {'name': 'matrix_bridge_mautrix_gvoice_homeserver_token', when: true}
|
- {'name': 'matrix_bridge_mautrix_gvoice_homeserver_token', when: true}
|
||||||
- {'name': 'matrix_bridge_mautrix_gvoice_database_hostname', when: "{{ matrix_bridge_mautrix_gvoice_database_engine == 'postgres' }}"}
|
- {'name': 'matrix_bridge_mautrix_gvoice_database_hostname', when: "{{ matrix_bridge_mautrix_gvoice_database_engine == 'postgres' }}"}
|
||||||
- {'name': 'matrix_bridge_mautrix_gvoice_metrics_proxying_hostname', when: "{{ matrix_bridge_mautrix_gvoice_metrics_proxying_enabled }}"}
|
|
||||||
- {'name': 'matrix_bridge_mautrix_gvoice_metrics_proxying_path_prefix', when: "{{ matrix_bridge_mautrix_gvoice_metrics_proxying_enabled }}"}
|
|
||||||
- {'name': 'matrix_bridge_mautrix_gvoice_container_network', when: true}
|
- {'name': 'matrix_bridge_mautrix_gvoice_container_network', when: true}
|
||||||
|
|||||||
@@ -12,41 +12,6 @@ traefik.enable=true
|
|||||||
traefik.docker.network={{ matrix_bridge_mautrix_gvoice_container_labels_traefik_docker_network }}
|
traefik.docker.network={{ matrix_bridge_mautrix_gvoice_container_labels_traefik_docker_network }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
traefik.http.services.matrix-mautrix-gvoice-metrics.loadbalancer.server.port=8001
|
|
||||||
|
|
||||||
{% if matrix_bridge_mautrix_gvoice_container_labels_metrics_enabled %}
|
|
||||||
############################################################
|
|
||||||
# #
|
|
||||||
# Metrics #
|
|
||||||
# #
|
|
||||||
############################################################
|
|
||||||
|
|
||||||
{% if matrix_bridge_mautrix_gvoice_container_labels_metrics_middleware_basic_auth_enabled %}
|
|
||||||
traefik.http.middlewares.matrix-mautrix-gvoice-metrics-basic-auth.basicauth.users={{ matrix_bridge_mautrix_gvoice_container_labels_metrics_middleware_basic_auth_users }}
|
|
||||||
traefik.http.routers.matrix-mautrix-gvoice-metrics.middlewares=matrix-mautrix-gvoice-metrics-basic-auth
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
traefik.http.routers.matrix-mautrix-gvoice-metrics.rule={{ matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_rule }}
|
|
||||||
|
|
||||||
{% if matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_priority | int > 0 %}
|
|
||||||
traefik.http.routers.matrix-mautrix-gvoice-metrics.priority={{ matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_priority }}
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
traefik.http.routers.matrix-mautrix-gvoice-metrics.service=matrix-mautrix-gvoice-metrics
|
|
||||||
traefik.http.routers.matrix-mautrix-gvoice-metrics.entrypoints={{ matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_entrypoints }}
|
|
||||||
|
|
||||||
traefik.http.routers.matrix-mautrix-gvoice-metrics.tls={{ matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_tls | to_json }}
|
|
||||||
{% if matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_tls %}
|
|
||||||
traefik.http.routers.matrix-mautrix-gvoice-metrics.tls.certResolver={{ matrix_bridge_mautrix_gvoice_container_labels_metrics_traefik_tls_certResolver }}
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
############################################################
|
|
||||||
# #
|
|
||||||
# /Metrics #
|
|
||||||
# #
|
|
||||||
############################################################
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if matrix_bridge_mautrix_gvoice_container_labels_exposure_enabled %}
|
{% if matrix_bridge_mautrix_gvoice_container_labels_exposure_enabled %}
|
||||||
############################################################
|
############################################################
|
||||||
# #
|
# #
|
||||||
|
|||||||
Reference in New Issue
Block a user