| @@ -4462,6 +4462,10 @@ matrix_synapse_app_service_config_files_auto: "{{ matrix_homeserver_app_service_ | |||||
| # Disable creation of media repository Synapse worker when using media-repo | # Disable creation of media repository Synapse worker when using media-repo | ||||
| matrix_synapse_ext_media_repo_enabled: "{{ matrix_media_repo_enabled }}" | matrix_synapse_ext_media_repo_enabled: "{{ matrix_media_repo_enabled }}" | ||||
| # Enable Synapse statistics reporting when using synapse-usage-exporter | |||||
| matrix_synapse_report_stats: "{{ matrix_synapse_usage_exporter_enabled }}" | |||||
| matrix_synapse_report_stats_endpoint: "http://{{ matrix_synapse_usage_exporter_identifier }}:{{ matrix_synapse_usage_exporter_container_port | string }}/report-usage-stats/push" | |||||
| ###################################################################### | ###################################################################### | ||||
| # | # | ||||
| # /matrix-synapse | # /matrix-synapse | ||||
| @@ -4611,9 +4615,6 @@ matrix_synapse_usage_exporter_container_labels_traefik_docker_network: "{{ matri | |||||
| matrix_synapse_usage_exporter_container_labels_traefik_entrypoints: "{{ devture_traefik_entrypoint_primary }}" | matrix_synapse_usage_exporter_container_labels_traefik_entrypoints: "{{ devture_traefik_entrypoint_primary }}" | ||||
| matrix_synapse_usage_exporter_container_labels_traefik_tls_certResolver: "{{ devture_traefik_certResolver_primary }}" | matrix_synapse_usage_exporter_container_labels_traefik_tls_certResolver: "{{ devture_traefik_certResolver_primary }}" | ||||
| matrix_synapse_report_stats: "{{ matrix_synapse_usage_exporter_enabled }}" | |||||
| matrix_synapse_report_stats_endpoint: "http://{{ matrix_synapse_usage_exporter_identifier }}:{{ matrix_synapse_usage_exporter_container_port | string }}/report-usage-stats/push" | |||||
| ###################################################################### | ###################################################################### | ||||
| # | # | ||||
| # /matrix-synapse-usage-exporter | # /matrix-synapse-usage-exporter | ||||
| @@ -15,11 +15,11 @@ matrix_synapse_usage_exporter_container_port: 5000 | |||||
| matrix_synapse_usage_exporter_container_image_self_build: true | matrix_synapse_usage_exporter_container_image_self_build: true | ||||
| matrix_synapse_usage_exporter_container_image_self_build_repo: "https://github.com/loelkes/synapse-usage-exporter.git" | matrix_synapse_usage_exporter_container_image_self_build_repo: "https://github.com/loelkes/synapse-usage-exporter.git" | ||||
| matrix_synapse_usage_exporter_docker_image_path: "loelkes/synapse-usage-exporter" | |||||
| matrix_synapse_usage_exporter_docker_image: "{{ matrix_synapse_usage_exporter_docker_image_name_prefix }}{{ matrix_synapse_usage_exporter_docker_image_path }}:{{ matrix_synapse_usage_exporter_docker_image_tag }}" | |||||
| matrix_synapse_usage_exporter_docker_image_name_prefix: "{{ 'localhost/' if matrix_synapse_usage_exporter_container_image_self_build else matrix_container_global_registry_prefix }}" | |||||
| matrix_synapse_usage_exporter_docker_image_tag: "{{ 'main' if matrix_synapse_usage_exporter_container_image_self_build else 'latest' }}" | |||||
| matrix_synapse_usage_exporter_docker_image_force_pull: "{{ matrix_synapse_usage_exporter_docker_image.endswith(':latest') }}" | |||||
| matrix_synapse_usage_exporter_container_image_path: "loelkes/synapse-usage-exporter" | |||||
| matrix_synapse_usage_exporter_container_image: "{{ matrix_synapse_usage_exporter_container_image_name_prefix }}{{ matrix_synapse_usage_exporter_container_image_path }}:{{ matrix_synapse_usage_exporter_container_image_tag }}" | |||||
| matrix_synapse_usage_exporter_container_image_name_prefix: "{{ 'localhost/' if matrix_synapse_usage_exporter_container_image_self_build else matrix_container_global_registry_prefix }}" | |||||
| matrix_synapse_usage_exporter_container_image_tag: "{{ 'main' if matrix_synapse_usage_exporter_container_image_self_build else 'latest' }}" | |||||
| matrix_synapse_usage_exporter_container_image_force_pull: "{{ matrix_synapse_usage_exporter_container_image.endswith(':latest') }}" | |||||
| matrix_synapse_usage_exporter_base_path: "{{ matrix_base_data_path }}/{{ matrix_synapse_usage_exporter_identifier }}" | matrix_synapse_usage_exporter_base_path: "{{ matrix_base_data_path }}/{{ matrix_synapse_usage_exporter_identifier }}" | ||||
| matrix_synapse_usage_exporter_docker_src_files_path: "{{ matrix_synapse_usage_exporter_base_path }}/docker-src" | matrix_synapse_usage_exporter_docker_src_files_path: "{{ matrix_synapse_usage_exporter_base_path }}/docker-src" | ||||
| @@ -27,10 +27,10 @@ | |||||
| - name: Ensure synapse-usage-exporter Docker image is pulled | - name: Ensure synapse-usage-exporter Docker image is pulled | ||||
| community.docker.docker_image: | community.docker.docker_image: | ||||
| name: "{{ matrix_synapse_usage_exporter_docker_image }}" | |||||
| name: "{{ matrix_synapse_usage_exporter_container_image }}" | |||||
| source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}" | source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}" | ||||
| force_source: "{{ matrix_synapse_usage_exporter_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | |||||
| force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_synapse_usage_exporter_docker_image_force_pull }}" | |||||
| force_source: "{{ matrix_synapse_usage_exporter_container_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | |||||
| force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_synapse_usage_exporter_container_image_force_pull }}" | |||||
| when: "not matrix_synapse_usage_exporter_container_image_self_build | bool" | when: "not matrix_synapse_usage_exporter_container_image_self_build | bool" | ||||
| register: result | register: result | ||||
| retries: "{{ devture_playbook_help_container_retries_count }}" | retries: "{{ devture_playbook_help_container_retries_count }}" | ||||
| @@ -43,15 +43,15 @@ | |||||
| ansible.builtin.git: | ansible.builtin.git: | ||||
| repo: "{{ matrix_synapse_usage_exporter_container_image_self_build_repo }}" | repo: "{{ matrix_synapse_usage_exporter_container_image_self_build_repo }}" | ||||
| dest: "{{ matrix_synapse_usage_exporter_docker_src_files_path }}" | dest: "{{ matrix_synapse_usage_exporter_docker_src_files_path }}" | ||||
| version: "{{ matrix_synapse_usage_exporter_docker_image.split(':')[1] }}" | |||||
| version: "{{ matrix_synapse_usage_exporter_container_image.split(':')[1] }}" | |||||
| force: "yes" | force: "yes" | ||||
| become: true | become: true | ||||
| become_user: "{{ matrix_user_username }}" | become_user: "{{ matrix_user_username }}" | ||||
| register: matrix_synapse_usage_exporter_git_pull_results | register: matrix_synapse_usage_exporter_git_pull_results | ||||
| - name: Check if synapse-usage-exporter Docker image exists | - name: Check if synapse-usage-exporter Docker image exists | ||||
| ansible.builtin.command: "{{ devture_systemd_docker_base_host_command_docker }} images --quiet --filter 'reference={{ matrix_synapse_usage_exporter_docker_image }}'" | |||||
| register: matrix_synapse_usage_exporter_docker_image_check_result | |||||
| ansible.builtin.command: "{{ devture_systemd_docker_base_host_command_docker }} images --quiet --filter 'reference={{ matrix_synapse_usage_exporter_container_image }}'" | |||||
| register: matrix_synapse_usage_exporter_container_image_check_result | |||||
| changed_when: false | changed_when: false | ||||
| # Invoking the `docker build` command here, instead of calling the `docker_image` Ansible module, | # Invoking the `docker build` command here, instead of calling the `docker_image` Ansible module, | ||||
| @@ -59,11 +59,11 @@ | |||||
| # See: https://github.com/ansible-collections/community.general/issues/514 | # See: https://github.com/ansible-collections/community.general/issues/514 | ||||
| - name: Ensure synapse-usage-exporter Docker image is built | - name: Ensure synapse-usage-exporter Docker image is built | ||||
| ansible.builtin.command: | ansible.builtin.command: | ||||
| cmd: "{{ devture_systemd_docker_base_host_command_docker }} build -t {{ matrix_synapse_usage_exporter_docker_image }} -f {{ matrix_synapse_usage_exporter_docker_src_files_path }}/docker/Dockerfile {{ matrix_synapse_usage_exporter_docker_src_files_path }}" | |||||
| cmd: "{{ devture_systemd_docker_base_host_command_docker }} build -t {{ matrix_synapse_usage_exporter_container_image }} -f {{ matrix_synapse_usage_exporter_docker_src_files_path }}/docker/Dockerfile {{ matrix_synapse_usage_exporter_docker_src_files_path }}" | |||||
| environment: | environment: | ||||
| DOCKER_BUILDKIT: 1 | DOCKER_BUILDKIT: 1 | ||||
| changed_when: true | changed_when: true | ||||
| when: "matrix_synapse_usage_exporter_git_pull_results.changed | bool or matrix_synapse_usage_exporter_docker_image_check_result.stdout == ''" | |||||
| when: "matrix_synapse_usage_exporter_git_pull_results.changed | bool or matrix_synapse_usage_exporter_container_image_check_result.stdout == ''" | |||||
| - name: Ensure synapse-usage-exporter container network is created | - name: Ensure synapse-usage-exporter container network is created | ||||
| community.general.docker_network: | community.general.docker_network: | ||||
| @@ -28,7 +28,7 @@ ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} create \ | |||||
| {% for arg in matrix_synapse_usage_exporter_container_extra_arguments %} | {% for arg in matrix_synapse_usage_exporter_container_extra_arguments %} | ||||
| {{ arg }} \ | {{ arg }} \ | ||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_synapse_usage_exporter_docker_image }} | |||||
| {{ matrix_synapse_usage_exporter_container_image }} | |||||
| {% for network in matrix_synapse_usage_exporter_container_additional_networks %} | {% for network in matrix_synapse_usage_exporter_container_additional_networks %} | ||||
| ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} network connect {{ network }} {{ matrix_synapse_usage_exporter_identifier }} | ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} network connect {{ network }} {{ matrix_synapse_usage_exporter_identifier }} | ||||