diff --git a/docs/configuring-playbook-bridge-postmoogle.md b/docs/configuring-playbook-bridge-postmoogle.md index 772f18b6e..8e1e4c728 100644 --- a/docs/configuring-playbook-bridge-postmoogle.md +++ b/docs/configuring-playbook-bridge-postmoogle.md @@ -24,7 +24,7 @@ Open the following ports on your server to be able to receive incoming emails: If you don't open these ports, you will still be able to send emails, but not receive any. -These port numbers are configurable via the `matrix_postmoogle_smtp_host_bind_port` and `matrix_postmoogle_submission_host_bind_port` variables, but other email servers will try to deliver on these default (standard) ports, so changing them is of little use. +These port numbers are configurable via the `matrix_bridge_postmoogle_smtp_host_bind_port` and `matrix_bridge_postmoogle_submission_host_bind_port` variables, but other email servers will try to deliver on these default (standard) ports, so changing them is of little use. ## Adjusting DNS records @@ -44,17 +44,17 @@ To make Postmoogle enable its email sending features, you need to configure MX a Add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file: ```yaml -matrix_postmoogle_enabled: true +matrix_bridge_postmoogle_enabled: true # Uncomment and adjust this part if you'd like to use a username different than the default -# matrix_postmoogle_login: postmoogle +# matrix_bridge_postmoogle_login: postmoogle # Generate a strong password for the bot. You can create one with a command like `pwgen -s 64 1`. -matrix_postmoogle_password: PASSWORD_FOR_THE_BOT +matrix_bridge_postmoogle_password: PASSWORD_FOR_THE_BOT # Uncomment to add one or more admins to this bridge: # -# matrix_postmoogle_admins: +# matrix_bridge_postmoogle_admins: # - '@yourAdminAccount:{{ matrix_domain }}' # # … unless you've made yourself an admin of all bots/bridges like this: @@ -87,7 +87,7 @@ ansible-playbook -i inventory/hosts setup.yml --tags=setup-all,ensure-matrix-use `just install-all` is useful for maintaining your setup quickly ([2x-5x faster](../CHANGELOG.md#2x-5x-performance-improvements-in-playbook-runtime) than `just setup-all`) when its components remain unchanged. If you adjust your `vars.yml` to remove other components, you'd need to run `just setup-all`, or these components will still remain installed. -- If you change the bridge's bot password (`matrix_postmoogle_password` in your `vars.yml` file) subsequently, the bot user's credentials on the homeserver won't be updated automatically. If you'd like to change the bot user's password, use a tool like [Ketesa](configuring-playbook-ketesa.md) to change it, and then update `matrix_postmoogle_password` to let the bot know its new password. +- If you change the bridge's bot password (`matrix_bridge_postmoogle_password` in your `vars.yml` file) subsequently, the bot user's credentials on the homeserver won't be updated automatically. If you'd like to change the bot user's password, use a tool like [Ketesa](configuring-playbook-ketesa.md) to change it, and then update `matrix_bridge_postmoogle_password` to let the bot know its new password. ## Usage @@ -108,5 +108,5 @@ As with all other services, you can find the logs in [systemd-journald](https:// The default logging level for this component is `INFO`. If you want to increase the verbosity, add the following configuration to your `vars.yml` file and re-run the playbook: ```yaml -matrix_postmoogle_loglevel: 'DEBUG' +matrix_bridge_postmoogle_loglevel: 'DEBUG' ``` diff --git a/group_vars/matrix_servers b/group_vars/matrix_servers index 96ec26371..e37f233f1 100755 --- a/group_vars/matrix_servers +++ b/group_vars/matrix_servers @@ -534,9 +534,9 @@ devture_systemd_service_manager_services_list_auto: | ([{ 'name': 'matrix-postmoogle.service', 'priority': 2200, - 'restart_necessary': (matrix_postmoogle_restart_necessary | bool), + 'restart_necessary': (matrix_bridge_postmoogle_restart_necessary | bool), 'groups': ['matrix', 'bridges', 'postmoogle'], - }] if matrix_postmoogle_enabled else []) + }] if matrix_bridge_postmoogle_enabled else []) + ([{ 'name': 'matrix-sms-bridge.service', @@ -2775,13 +2775,13 @@ matrix_bridge_mx_puppet_groupme_database_password: "{{ (matrix_homeserver_generi ###################################################################### # We don't enable bridges by default. -matrix_postmoogle_enabled: false +matrix_bridge_postmoogle_enabled: false -matrix_postmoogle_container_image_registry_prefix_upstream: "{{ matrix_container_global_registry_prefix_override if matrix_container_global_registry_prefix_override else matrix_postmoogle_container_image_registry_prefix_upstream_default }}" +matrix_bridge_postmoogle_container_image_registry_prefix_upstream: "{{ matrix_container_global_registry_prefix_override if matrix_container_global_registry_prefix_override else matrix_bridge_postmoogle_container_image_registry_prefix_upstream_default }}" -matrix_postmoogle_container_image_self_build: "{{ matrix_architecture not in ['amd64', 'arm64'] }}" +matrix_bridge_postmoogle_container_image_self_build: "{{ matrix_architecture not in ['amd64', 'arm64'] }}" -matrix_postmoogle_ssl_path: |- +matrix_bridge_postmoogle_ssl_path: |- {{ { 'playbook-managed-traefik': (traefik_certs_dumper_dumped_certificates_path if traefik_certs_dumper_enabled else ''), @@ -2790,10 +2790,10 @@ matrix_postmoogle_ssl_path: |- }[matrix_playbook_reverse_proxy_type] }} -matrix_playbook_bridge_postmoogle_traefik_tls_cert: "{% for domain in matrix_postmoogle_domains %}/ssl/{{ domain }}/certificate.crt {% endfor %}" -matrix_playbook_bridge_postmoogle_traefik_key: "{% for domain in matrix_postmoogle_domains %}/ssl/{{ domain }}/privatekey.key {% endfor %}" +matrix_playbook_bridge_postmoogle_traefik_tls_cert: "{% for domain in matrix_bridge_postmoogle_domains %}/ssl/{{ domain }}/certificate.crt {% endfor %}" +matrix_playbook_bridge_postmoogle_traefik_key: "{% for domain in matrix_bridge_postmoogle_domains %}/ssl/{{ domain }}/privatekey.key {% endfor %}" -matrix_postmoogle_tls_cert: |- +matrix_bridge_postmoogle_tls_cert: |- {{ { 'playbook-managed-traefik': (matrix_playbook_bridge_postmoogle_traefik_tls_cert if traefik_certs_dumper_enabled else ''), @@ -2802,7 +2802,7 @@ matrix_postmoogle_tls_cert: |- }[matrix_playbook_reverse_proxy_type] }} -matrix_postmoogle_tls_key: |- +matrix_bridge_postmoogle_tls_key: |- {{ { 'playbook-managed-traefik': (matrix_playbook_bridge_postmoogle_traefik_key if traefik_certs_dumper_enabled else ''), @@ -2811,27 +2811,27 @@ matrix_postmoogle_tls_key: |- }[matrix_playbook_reverse_proxy_type] }} -matrix_playbook_bridge_postmoogle_traefik_certs_dumper_waiter_services: "{% for domain in matrix_postmoogle_domains %}{{ traefik_certs_dumper_identifier }}-wait-for-domain@{{ domain }}.service {% endfor %}" +matrix_playbook_bridge_postmoogle_traefik_certs_dumper_waiter_services: "{% for domain in matrix_bridge_postmoogle_domains %}{{ traefik_certs_dumper_identifier }}-wait-for-domain@{{ domain }}.service {% endfor %}" -matrix_postmoogle_systemd_required_services_list_auto: | +matrix_bridge_postmoogle_systemd_required_services_list_auto: | {{ matrix_addons_homeserver_systemd_services_list + - ([postgres_identifier ~ '.service'] if postgres_enabled and matrix_postmoogle_database_hostname == matrix_postmoogle_database_hostname else []) + ([postgres_identifier ~ '.service'] if postgres_enabled and matrix_bridge_postmoogle_database_hostname == matrix_bridge_postmoogle_database_hostname else []) + (matrix_playbook_bridge_postmoogle_traefik_certs_dumper_waiter_services | trim | split(' ') if matrix_playbook_reverse_proxy_type in ['playbook-managed-traefik', 'other-traefik-container'] and traefik_certs_dumper_enabled else []) }} # Postgres is the default, except if not using internal Postgres server -matrix_postmoogle_database_engine: "{{ 'postgres' if postgres_enabled else 'sqlite' }}" -matrix_postmoogle_database_hostname: "{{ postgres_connection_hostname if postgres_enabled else '' }}" -matrix_postmoogle_database_password: "{{ (matrix_homeserver_generic_secret_key + ':postmoogle.db') | hash('sha512') | to_uuid }}" +matrix_bridge_postmoogle_database_engine: "{{ 'postgres' if postgres_enabled else 'sqlite' }}" +matrix_bridge_postmoogle_database_hostname: "{{ postgres_connection_hostname if postgres_enabled else '' }}" +matrix_bridge_postmoogle_database_password: "{{ (matrix_homeserver_generic_secret_key + ':postmoogle.db') | hash('sha512') | to_uuid }}" -matrix_postmoogle_homeserver: "{{ matrix_addons_homeserver_client_api_url }}" +matrix_bridge_postmoogle_homeserver: "{{ matrix_addons_homeserver_client_api_url }}" -matrix_postmoogle_container_network: "{{ matrix_addons_container_network }}" +matrix_bridge_postmoogle_container_network: "{{ matrix_addons_container_network }}" -matrix_postmoogle_container_additional_networks_auto: |- +matrix_bridge_postmoogle_container_additional_networks_auto: |- {{ ( ([] if matrix_addons_homeserver_container_network == '' else [matrix_addons_homeserver_container_network]) @@ -4123,10 +4123,10 @@ postgres_managed_databases_auto: | }] if (matrix_bot_honoroit_enabled and matrix_bot_honoroit_database_engine == 'postgres' and matrix_bot_honoroit_database_hostname == postgres_connection_hostname) else []) + ([{ - 'name': matrix_postmoogle_database_name, - 'username': matrix_postmoogle_database_username, - 'password': matrix_postmoogle_database_password, - }] if (matrix_postmoogle_enabled and matrix_postmoogle_database_engine == 'postgres' and matrix_postmoogle_database_hostname == postgres_connection_hostname) else []) + 'name': matrix_bridge_postmoogle_database_name, + 'username': matrix_bridge_postmoogle_database_username, + 'password': matrix_bridge_postmoogle_database_password, + }] if (matrix_bridge_postmoogle_enabled and matrix_bridge_postmoogle_database_engine == 'postgres' and matrix_bridge_postmoogle_database_hostname == postgres_connection_hostname) else []) + ([{ 'name': matrix_bot_maubot_database_name, @@ -5095,8 +5095,8 @@ matrix_ketesa_config_asManagedUsers_auto: | ] if matrix_bot_maubot_enabled else []) + ([ - '^@'+(matrix_postmoogle_login | default('') | regex_escape) +':'+(matrix_domain | regex_escape)+'$', - ] if matrix_postmoogle_enabled else []) + '^@'+(matrix_bridge_postmoogle_login | default('') | regex_escape) +':'+(matrix_domain | regex_escape)+'$', + ] if matrix_bridge_postmoogle_enabled else []) + ([ '^@_discord_[a-zA-Z0-9]+:'+(matrix_domain | regex_escape)+'$', @@ -5874,10 +5874,10 @@ matrix_user_creator_users_auto: | }] if matrix_bot_honoroit_enabled else []) + ([{ - 'username': matrix_postmoogle_login, - 'initial_password': matrix_postmoogle_password, + 'username': matrix_bridge_postmoogle_login, + 'initial_password': matrix_bridge_postmoogle_password, 'initial_type': 'bot', - }] if matrix_postmoogle_enabled else []) + }] if matrix_bridge_postmoogle_enabled else []) + ([{ 'username': matrix_bot_buscarron_login, diff --git a/roles/custom/matrix-bridge-postmoogle/defaults/main.yml b/roles/custom/matrix-bridge-postmoogle/defaults/main.yml index 17f4cccdc..7a2f588c6 100644 --- a/roles/custom/matrix-bridge-postmoogle/defaults/main.yml +++ b/roles/custom/matrix-bridge-postmoogle/defaults/main.yml @@ -10,180 +10,180 @@ # postmoogle is an email to Matrix bridge using its bot user # Project source code URL: https://github.com/etkecc/postmoogle -matrix_postmoogle_enabled: true +matrix_bridge_postmoogle_enabled: true -matrix_postmoogle_container_image_self_build: false -matrix_postmoogle_container_repo: "https://github.com/etkecc/postmoogle.git" -matrix_postmoogle_container_repo_version: "{{ 'main' if matrix_postmoogle_version == 'latest' else matrix_postmoogle_version }}" -matrix_postmoogle_container_src_files_path: "{{ matrix_base_data_path }}/postmoogle/docker-src" +matrix_bridge_postmoogle_container_image_self_build: false +matrix_bridge_postmoogle_container_repo: "https://github.com/etkecc/postmoogle.git" +matrix_bridge_postmoogle_container_repo_version: "{{ 'main' if matrix_bridge_postmoogle_version == 'latest' else matrix_bridge_postmoogle_version }}" +matrix_bridge_postmoogle_container_src_files_path: "{{ matrix_base_data_path }}/postmoogle/docker-src" # renovate: datasource=docker depName=ghcr.io/etkecc/postmoogle -matrix_postmoogle_version: v0.9.31 -matrix_postmoogle_container_image: "{{ matrix_postmoogle_container_image_registry_prefix }}etkecc/postmoogle:{{ matrix_postmoogle_version }}" -matrix_postmoogle_container_image_registry_prefix: "{{ 'localhost/' if matrix_postmoogle_container_image_self_build else matrix_postmoogle_container_image_registry_prefix_upstream }}" -matrix_postmoogle_container_image_registry_prefix_upstream: "{{ matrix_postmoogle_container_image_registry_prefix_upstream_default }}" -matrix_postmoogle_container_image_registry_prefix_upstream_default: "ghcr.io/" +matrix_bridge_postmoogle_version: v0.9.31 +matrix_bridge_postmoogle_container_image: "{{ matrix_bridge_postmoogle_container_image_registry_prefix }}etkecc/postmoogle:{{ matrix_bridge_postmoogle_version }}" +matrix_bridge_postmoogle_container_image_registry_prefix: "{{ 'localhost/' if matrix_bridge_postmoogle_container_image_self_build else matrix_bridge_postmoogle_container_image_registry_prefix_upstream }}" +matrix_bridge_postmoogle_container_image_registry_prefix_upstream: "{{ matrix_bridge_postmoogle_container_image_registry_prefix_upstream_default }}" +matrix_bridge_postmoogle_container_image_registry_prefix_upstream_default: "ghcr.io/" -matrix_postmoogle_base_path: "{{ matrix_base_data_path }}/postmoogle" -matrix_postmoogle_config_path: "{{ matrix_postmoogle_base_path }}/config" -matrix_postmoogle_data_path: "{{ matrix_postmoogle_base_path }}/data" +matrix_bridge_postmoogle_base_path: "{{ matrix_base_data_path }}/postmoogle" +matrix_bridge_postmoogle_config_path: "{{ matrix_bridge_postmoogle_base_path }}/config" +matrix_bridge_postmoogle_data_path: "{{ matrix_bridge_postmoogle_base_path }}/data" -matrix_postmoogle_container_network: "" +matrix_bridge_postmoogle_container_network: "" -matrix_postmoogle_container_additional_networks: "{{ matrix_postmoogle_container_additional_networks_auto + matrix_postmoogle_container_additional_networks_custom }}" -matrix_postmoogle_container_additional_networks_auto: [] -matrix_postmoogle_container_additional_networks_custom: [] +matrix_bridge_postmoogle_container_additional_networks: "{{ matrix_bridge_postmoogle_container_additional_networks_auto + matrix_bridge_postmoogle_container_additional_networks_custom }}" +matrix_bridge_postmoogle_container_additional_networks_auto: [] +matrix_bridge_postmoogle_container_additional_networks_custom: [] # A list of extra arguments to pass to the container -matrix_postmoogle_container_extra_arguments: [] +matrix_bridge_postmoogle_container_extra_arguments: [] # List of systemd services that matrix-postmoogle.service depends on -matrix_postmoogle_systemd_required_services_list: "{{ matrix_postmoogle_systemd_required_services_list_default + matrix_postmoogle_systemd_required_services_list_auto + matrix_postmoogle_systemd_required_services_list_custom }}" -matrix_postmoogle_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}" -matrix_postmoogle_systemd_required_services_list_auto: [] -matrix_postmoogle_systemd_required_services_list_custom: [] +matrix_bridge_postmoogle_systemd_required_services_list: "{{ matrix_bridge_postmoogle_systemd_required_services_list_default + matrix_bridge_postmoogle_systemd_required_services_list_auto + matrix_bridge_postmoogle_systemd_required_services_list_custom }}" +matrix_bridge_postmoogle_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}" +matrix_bridge_postmoogle_systemd_required_services_list_auto: [] +matrix_bridge_postmoogle_systemd_required_services_list_custom: [] # List of systemd services that matrix-postmoogle.service wants -matrix_postmoogle_systemd_wanted_services_list: [] +matrix_bridge_postmoogle_systemd_wanted_services_list: [] # Database-related configuration fields. # # To use SQLite, stick to these defaults. # # To use Postgres: -# - change the engine (`matrix_postmoogle_database_engine: 'postgres'`) -# - adjust your database credentials via the `matrix_postmoogle_database_*` variables -matrix_postmoogle_database_engine: 'sqlite' +# - change the engine (`matrix_bridge_postmoogle_database_engine: 'postgres'`) +# - adjust your database credentials via the `matrix_bridge_postmoogle_database_*` variables +matrix_bridge_postmoogle_database_engine: 'sqlite' -matrix_postmoogle_sqlite_database_path_local: "{{ matrix_postmoogle_data_path }}/bot.db" -matrix_postmoogle_sqlite_database_path_in_container: "/data/bot.db" +matrix_bridge_postmoogle_sqlite_database_path_local: "{{ matrix_bridge_postmoogle_data_path }}/bot.db" +matrix_bridge_postmoogle_sqlite_database_path_in_container: "/data/bot.db" -matrix_postmoogle_database_username: 'postmoogle' -matrix_postmoogle_database_password: 'some-password' -matrix_postmoogle_database_hostname: '' -matrix_postmoogle_database_port: 5432 -matrix_postmoogle_database_name: 'postmoogle' -matrix_postmoogle_database_sslmode: disable +matrix_bridge_postmoogle_database_username: 'postmoogle' +matrix_bridge_postmoogle_database_password: 'some-password' +matrix_bridge_postmoogle_database_hostname: '' +matrix_bridge_postmoogle_database_port: 5432 +matrix_bridge_postmoogle_database_name: 'postmoogle' +matrix_bridge_postmoogle_database_sslmode: disable -matrix_postmoogle_database_connection_string: 'postgres://{{ matrix_postmoogle_database_username }}:{{ matrix_postmoogle_database_password }}@{{ matrix_postmoogle_database_hostname }}:{{ matrix_postmoogle_database_port }}/{{ matrix_postmoogle_database_name }}?sslmode={{ matrix_postmoogle_database_sslmode }}' +matrix_bridge_postmoogle_database_connection_string: 'postgres://{{ matrix_bridge_postmoogle_database_username }}:{{ matrix_bridge_postmoogle_database_password }}@{{ matrix_bridge_postmoogle_database_hostname }}:{{ matrix_bridge_postmoogle_database_port }}/{{ matrix_bridge_postmoogle_database_name }}?sslmode={{ matrix_bridge_postmoogle_database_sslmode }}' -matrix_postmoogle_storage_database: "{{ { - 'sqlite': matrix_postmoogle_sqlite_database_path_in_container, - 'postgres': matrix_postmoogle_database_connection_string, -}[matrix_postmoogle_database_engine] }}" +matrix_bridge_postmoogle_storage_database: "{{ { + 'sqlite': matrix_bridge_postmoogle_sqlite_database_path_in_container, + 'postgres': matrix_bridge_postmoogle_database_connection_string, +}[matrix_bridge_postmoogle_database_engine] }}" -matrix_postmoogle_database_dialect: "{{ { +matrix_bridge_postmoogle_database_dialect: "{{ { 'sqlite': 'sqlite3', 'postgres': 'postgres', -}[matrix_postmoogle_database_engine] }}" +}[matrix_bridge_postmoogle_database_engine] }}" # The bot's username. This user needs to be created manually beforehand. -# Also see `matrix_postmoogle_password` or `matrix_postmoogle_sharedsecret` -matrix_postmoogle_login: "postmoogle" +# Also see `matrix_bridge_postmoogle_password` or `matrix_bridge_postmoogle_sharedsecret` +matrix_bridge_postmoogle_login: "postmoogle" # The password that the bot uses to authenticate. -matrix_postmoogle_password: '' +matrix_bridge_postmoogle_password: '' -# Alternative to password - shared secret requires matrix_postmoogle_login to be MXID -matrix_postmoogle_sharedsecret: '' +# Alternative to password - shared secret requires matrix_bridge_postmoogle_login to be MXID +matrix_bridge_postmoogle_sharedsecret: '' -matrix_postmoogle_homeserver: "" +matrix_bridge_postmoogle_homeserver: "" # Command prefix -matrix_postmoogle_prefix: '!pm' +matrix_bridge_postmoogle_prefix: '!pm' # Max email size in megabytes, including attachments -matrix_postmoogle_maxsize: '1024' +matrix_bridge_postmoogle_maxsize: '1024' # Optional SMTP relay mode -matrix_postmoogle_relay_host: '' -matrix_postmoogle_relay_port: '' -matrix_postmoogle_relay_username: '' -matrix_postmoogle_relay_password: '' +matrix_bridge_postmoogle_relay_host: '' +matrix_bridge_postmoogle_relay_port: '' +matrix_bridge_postmoogle_relay_username: '' +matrix_bridge_postmoogle_relay_password: '' # A list of admins # Example set of rules: -# matrix_postmoogle_admins: +# matrix_bridge_postmoogle_admins: # - '@alice:example.com' # - '@bob:example.com' # - '@bot.*:example.com' # - '@*:example.net' -matrix_postmoogle_admins: "{{ [matrix_admin] if matrix_admin else [] }}" +matrix_bridge_postmoogle_admins: "{{ [matrix_admin] if matrix_admin else [] }}" -# Sentry DSN. Deprecated, use matrix_postmoogle_monitoring_sentry_dsn -matrix_postmoogle_sentry: '' +# Sentry DSN. Deprecated, use matrix_bridge_postmoogle_monitoring_sentry_dsn +matrix_bridge_postmoogle_sentry: '' # Sentry integration -matrix_postmoogle_monitoring_sentry_dsn: "{{ matrix_postmoogle_sentry }}" -matrix_postmoogle_monitoring_sentry_rate: 20 +matrix_bridge_postmoogle_monitoring_sentry_dsn: "{{ matrix_bridge_postmoogle_sentry }}" +matrix_bridge_postmoogle_monitoring_sentry_rate: 20 # healthchecks.io integration -matrix_postmoogle_monitoring_healthchecks_uuid: '' -matrix_postmoogle_monitoring_healthchecks_duration: 60 +matrix_bridge_postmoogle_monitoring_healthchecks_uuid: '' +matrix_bridge_postmoogle_monitoring_healthchecks_duration: 60 # Log level -matrix_postmoogle_loglevel: 'INFO' +matrix_bridge_postmoogle_loglevel: 'INFO' -# deprecated, use matrix_postmoogle_domains -matrix_postmoogle_domain: "{{ matrix_server_fqn_matrix }}" +# deprecated, use matrix_bridge_postmoogle_domains +matrix_bridge_postmoogle_domain: "{{ matrix_server_fqn_matrix }}" -matrix_postmoogle_domains: - - "{{ matrix_postmoogle_domain }}" # backward compatibility +matrix_bridge_postmoogle_domains: + - "{{ matrix_bridge_postmoogle_domain }}" # backward compatibility # Password (passphrase) to encrypt account data -matrix_postmoogle_data_secret: "" +matrix_bridge_postmoogle_data_secret: "" # in-container ports -matrix_postmoogle_port: '2525' -matrix_postmoogle_tls_port: '25587' +matrix_bridge_postmoogle_port: '2525' +matrix_bridge_postmoogle_tls_port: '25587' # on-host ports -matrix_postmoogle_smtp_host_bind_port: '25' -matrix_postmoogle_submission_host_bind_port: '587' +matrix_bridge_postmoogle_smtp_host_bind_port: '25' +matrix_bridge_postmoogle_submission_host_bind_port: '587' ### SSL ## on-host SSL dir -matrix_postmoogle_ssl_path: "" +matrix_bridge_postmoogle_ssl_path: "" ## in-container SSL paths -# matrix_postmoogle_tls_cert is the SSL certificates' certificates. +# matrix_bridge_postmoogle_tls_cert is the SSL certificates' certificates. # This var is likely set via group_vars/matrix_servers, so you don't need to set certs manually. # If you do need to set it manually, note that this is an in-container path. -# To mount a certificates volumes into the container, use matrix_postmoogle_ssl_path -# Example value: /ssl/live/{{ matrix_postmoogle_domain }}/fullchain.pem -matrix_postmoogle_tls_cert: "" +# To mount a certificates volumes into the container, use matrix_bridge_postmoogle_ssl_path +# Example value: /ssl/live/{{ matrix_bridge_postmoogle_domain }}/fullchain.pem +matrix_bridge_postmoogle_tls_cert: "" -# matrix_postmoogle_tls_key is the SSL certificates' keys. +# matrix_bridge_postmoogle_tls_key is the SSL certificates' keys. # This var is likely set via group_vars/matrix_servers, so you don't need to set keys manually. # If you do need to set it manually, note that this is an in-container path. -# To mount a certificates volumes into the container, use matrix_postmoogle_ssl_path -# Example value: /ssl/live/{{ matrix_postmoogle_domain }}/privkey.pem -matrix_postmoogle_tls_key: "" +# To mount a certificates volumes into the container, use matrix_bridge_postmoogle_ssl_path +# Example value: /ssl/live/{{ matrix_bridge_postmoogle_domain }}/privkey.pem +matrix_bridge_postmoogle_tls_key: "" # Mandatory TLS, even on plain SMTP port -matrix_postmoogle_tls_required: false +matrix_bridge_postmoogle_tls_required: false # trusted proxies -matrix_postmoogle_proxies: [] +matrix_bridge_postmoogle_proxies: [] # known forwarders -matrix_postmoogle_mailboxes_forwarded: [] +matrix_bridge_postmoogle_mailboxes_forwarded: [] # reserved mailboxes -matrix_postmoogle_mailboxes_reserved: [] +matrix_bridge_postmoogle_mailboxes_reserved: [] # mailbox activation flow -matrix_postmoogle_mailboxes_activation: none +matrix_bridge_postmoogle_mailboxes_activation: none # Additional environment variables to pass to the postmoogle container # # Example: -# matrix_postmoogle_environment_variables_extension: | +# matrix_bridge_postmoogle_environment_variables_extension: | # postmoogle_TEXT_DONE=Done -matrix_postmoogle_environment_variables_extension: '' +matrix_bridge_postmoogle_environment_variables_extension: '' -# matrix_postmoogle_restart_necessary controls whether the service +# matrix_bridge_postmoogle_restart_necessary controls whether the service # will be restarted (when true) or merely started (when false) by the # systemd service manager role (when conditional restart is enabled). # @@ -191,4 +191,4 @@ matrix_postmoogle_environment_variables_extension: '' # any configuration files, the systemd service file, or the container image changed. # The default of `false` means "no restart needed" — appropriate when the role's # installation tasks haven't run (e.g., due to --tags skipping them). -matrix_postmoogle_restart_necessary: false +matrix_bridge_postmoogle_restart_necessary: false diff --git a/roles/custom/matrix-bridge-postmoogle/tasks/main.yml b/roles/custom/matrix-bridge-postmoogle/tasks/main.yml index ecbbff69a..61b9fd6aa 100644 --- a/roles/custom/matrix-bridge-postmoogle/tasks/main.yml +++ b/roles/custom/matrix-bridge-postmoogle/tasks/main.yml @@ -12,15 +12,15 @@ - install-all - install-postmoogle block: - - when: matrix_postmoogle_enabled | bool + - when: matrix_bridge_postmoogle_enabled | bool ansible.builtin.include_tasks: "{{ role_path }}/tasks/validate_config.yml" - - when: matrix_postmoogle_enabled | bool + - when: matrix_bridge_postmoogle_enabled | bool ansible.builtin.include_tasks: "{{ role_path }}/tasks/setup_install.yml" - tags: - setup-all - setup-postmoogle block: - - when: not matrix_postmoogle_enabled | bool + - when: not matrix_bridge_postmoogle_enabled | bool ansible.builtin.include_tasks: "{{ role_path }}/tasks/setup_uninstall.yml" diff --git a/roles/custom/matrix-bridge-postmoogle/tasks/setup_install.yml b/roles/custom/matrix-bridge-postmoogle/tasks/setup_install.yml index 1dcdeb91d..ac4d3a862 100644 --- a/roles/custom/matrix-bridge-postmoogle/tasks/setup_install.yml +++ b/roles/custom/matrix-bridge-postmoogle/tasks/setup_install.yml @@ -32,29 +32,29 @@ path: "{{ devture_systemd_docker_base_systemd_path }}/matrix-bot-postmoogle.service" state: absent -- when: "matrix_postmoogle_database_engine == 'postgres'" +- when: "matrix_bridge_postmoogle_database_engine == 'postgres'" block: - name: Check if an SQLite database already exists ansible.builtin.stat: - path: "{{ matrix_postmoogle_sqlite_database_path_local }}" - register: matrix_postmoogle_sqlite_database_path_local_stat_result + path: "{{ matrix_bridge_postmoogle_sqlite_database_path_local }}" + register: matrix_bridge_postmoogle_sqlite_database_path_local_stat_result - - when: "matrix_postmoogle_sqlite_database_path_local_stat_result.stat.exists | bool" + - when: "matrix_bridge_postmoogle_sqlite_database_path_local_stat_result.stat.exists | bool" block: - ansible.builtin.include_role: name: galaxy/postgres tasks_from: migrate_db_to_postgres vars: postgres_db_migration_request: - src: "{{ matrix_postmoogle_sqlite_database_path_local }}" - dst: "{{ matrix_postmoogle_database_connection_string }}" + src: "{{ matrix_bridge_postmoogle_sqlite_database_path_local }}" + dst: "{{ matrix_bridge_postmoogle_database_connection_string }}" caller: "{{ role_path | basename }}" - engine_variable_name: 'matrix_postmoogle_database_engine' + engine_variable_name: 'matrix_bridge_postmoogle_database_engine' engine_old: 'sqlite' systemd_services_to_stop: ['matrix-postmoogle.service'] - ansible.builtin.set_fact: - matrix_postmoogle_migration_requires_restart: true + matrix_bridge_postmoogle_migration_requires_restart: true - name: Ensure postmoogle paths exist ansible.builtin.file: @@ -64,56 +64,56 @@ owner: "{{ matrix_user_name }}" group: "{{ matrix_group_name }}" with_items: - - {path: "{{ matrix_postmoogle_config_path }}", when: true} - - {path: "{{ matrix_postmoogle_data_path }}", when: true} - - {path: "{{ matrix_postmoogle_container_src_files_path }}", when: "{{ matrix_postmoogle_container_image_self_build }}"} + - {path: "{{ matrix_bridge_postmoogle_config_path }}", when: true} + - {path: "{{ matrix_bridge_postmoogle_data_path }}", when: true} + - {path: "{{ matrix_bridge_postmoogle_container_src_files_path }}", when: "{{ matrix_bridge_postmoogle_container_image_self_build }}"} when: "item.when | bool" - name: Ensure postmoogle environment variables file created ansible.builtin.template: src: "{{ role_path }}/templates/env.j2" - dest: "{{ matrix_postmoogle_config_path }}/env" + dest: "{{ matrix_bridge_postmoogle_config_path }}/env" owner: "{{ matrix_user_name }}" group: "{{ matrix_group_name }}" mode: '0640' - register: matrix_postmoogle_env_result + register: matrix_bridge_postmoogle_env_result - name: Ensure postmoogle image is pulled community.docker.docker_image_pull: - name: "{{ matrix_postmoogle_container_image }}" + name: "{{ matrix_bridge_postmoogle_container_image }}" pull: always - when: "not matrix_postmoogle_container_image_self_build | bool" - register: matrix_postmoogle_container_image_pull_result + when: "not matrix_bridge_postmoogle_container_image_self_build | bool" + register: matrix_bridge_postmoogle_container_image_pull_result retries: "{{ devture_playbook_help_container_retries_count }}" delay: "{{ devture_playbook_help_container_retries_delay }}" - until: matrix_postmoogle_container_image_pull_result is not failed + until: matrix_bridge_postmoogle_container_image_pull_result is not failed - name: Ensure postmoogle repository is present on self-build ansible.builtin.git: - repo: "{{ matrix_postmoogle_container_repo }}" - version: "{{ matrix_postmoogle_container_repo_version }}" - dest: "{{ matrix_postmoogle_container_src_files_path }}" + repo: "{{ matrix_bridge_postmoogle_container_repo }}" + version: "{{ matrix_bridge_postmoogle_container_repo_version }}" + dest: "{{ matrix_bridge_postmoogle_container_src_files_path }}" force: "yes" become: true become_user: "{{ matrix_user_name }}" - register: matrix_postmoogle_git_pull_results - when: "matrix_postmoogle_container_image_self_build | bool" + register: matrix_bridge_postmoogle_git_pull_results + when: "matrix_bridge_postmoogle_container_image_self_build | bool" - name: Ensure postmoogle image is built community.docker.docker_image_build: - name: "{{ matrix_postmoogle_container_image }}" + name: "{{ matrix_bridge_postmoogle_container_image }}" dockerfile: Dockerfile - path: "{{ matrix_postmoogle_container_src_files_path }}" + path: "{{ matrix_bridge_postmoogle_container_src_files_path }}" pull: true - rebuild: "{{ 'always' if matrix_postmoogle_git_pull_results.changed | bool else 'never' }}" - when: "matrix_postmoogle_container_image_self_build | bool" - register: matrix_postmoogle_container_image_build_result + rebuild: "{{ 'always' if matrix_bridge_postmoogle_git_pull_results.changed | bool else 'never' }}" + when: "matrix_bridge_postmoogle_container_image_self_build | bool" + register: matrix_bridge_postmoogle_container_image_build_result - name: Ensure postmoogle container network is created - when: matrix_postmoogle_container_network != 'host' + when: matrix_bridge_postmoogle_container_network != 'host' community.general.docker_network: enable_ipv6: "{{ devture_systemd_docker_base_ipv6_enabled }}" - name: "{{ matrix_postmoogle_container_network }}" + name: "{{ matrix_bridge_postmoogle_container_network }}" driver: bridge driver_options: "{{ devture_systemd_docker_base_container_networks_driver_options }}" @@ -122,15 +122,15 @@ src: "{{ role_path }}/templates/systemd/matrix-postmoogle.service.j2" dest: "{{ devture_systemd_docker_base_systemd_path }}/matrix-postmoogle.service" mode: '0644' - register: matrix_postmoogle_systemd_service_result + register: matrix_bridge_postmoogle_systemd_service_result - name: Determine whether matrix-postmoogle needs a restart ansible.builtin.set_fact: - matrix_postmoogle_restart_necessary: >- + matrix_bridge_postmoogle_restart_necessary: >- {{ - matrix_postmoogle_migration_requires_restart | default(false) - or matrix_postmoogle_env_result.changed | default(false) - or matrix_postmoogle_systemd_service_result.changed | default(false) - or matrix_postmoogle_container_image_pull_result.changed | default(false) - or matrix_postmoogle_container_image_build_result.changed | default(false) + matrix_bridge_postmoogle_migration_requires_restart | default(false) + or matrix_bridge_postmoogle_env_result.changed | default(false) + or matrix_bridge_postmoogle_systemd_service_result.changed | default(false) + or matrix_bridge_postmoogle_container_image_pull_result.changed | default(false) + or matrix_bridge_postmoogle_container_image_build_result.changed | default(false) }} diff --git a/roles/custom/matrix-bridge-postmoogle/tasks/setup_uninstall.yml b/roles/custom/matrix-bridge-postmoogle/tasks/setup_uninstall.yml index 9db50fc5c..5ea461ebc 100644 --- a/roles/custom/matrix-bridge-postmoogle/tasks/setup_uninstall.yml +++ b/roles/custom/matrix-bridge-postmoogle/tasks/setup_uninstall.yml @@ -10,9 +10,9 @@ - name: Check existence of matrix-postmoogle service ansible.builtin.stat: path: "{{ devture_systemd_docker_base_systemd_path }}/matrix-postmoogle.service" - register: matrix_postmoogle_service_stat + register: matrix_bridge_postmoogle_service_stat -- when: matrix_postmoogle_service_stat.stat.exists | bool +- when: matrix_bridge_postmoogle_service_stat.stat.exists | bool block: - name: Ensure matrix-postmoogle is stopped ansible.builtin.service: @@ -28,5 +28,5 @@ - name: Ensure Matrix postmoogle paths don't exist ansible.builtin.file: - path: "{{ matrix_postmoogle_base_path }}" + path: "{{ matrix_bridge_postmoogle_base_path }}" state: absent diff --git a/roles/custom/matrix-bridge-postmoogle/tasks/validate_config.yml b/roles/custom/matrix-bridge-postmoogle/tasks/validate_config.yml index 790424a67..d16747441 100644 --- a/roles/custom/matrix-bridge-postmoogle/tasks/validate_config.yml +++ b/roles/custom/matrix-bridge-postmoogle/tasks/validate_config.yml @@ -12,16 +12,16 @@ The variable `{{ item.old }}` is deprecated. Please use `{{ item.new }}` instead. when: "lookup('ansible.builtin.varnames', ('^' + item.old + '$'), wantlist=True) | length > 0" with_items: - - {'old': 'matrix_postmoogle_docker_image_name_prefix', 'new': 'matrix_postmoogle_container_image_registry_prefix'} - - {'old': 'matrix_postmoogle_docker_image', 'new': 'matrix_postmoogle_container_image'} - - {'old': 'matrix_postmoogle_docker_image_force_pull', 'new': 'matrix_postmoogle_container_image_force_pull'} - - {'old': 'matrix_postmoogle_docker_image_registry_prefix', 'new': 'matrix_postmoogle_container_image_registry_prefix'} - - {'old': 'matrix_postmoogle_docker_image_registry_prefix_upstream', 'new': 'matrix_postmoogle_container_image_registry_prefix_upstream'} - - {'old': 'matrix_postmoogle_docker_image_registry_prefix_upstream_default', 'new': 'matrix_postmoogle_container_image_registry_prefix_upstream_default'} - - {'old': 'matrix_postmoogle_docker_repo', 'new': 'matrix_postmoogle_container_repo'} - - {'old': 'matrix_postmoogle_docker_repo_version', 'new': 'matrix_postmoogle_container_repo_version'} - - {'old': 'matrix_postmoogle_docker_src_files_path', 'new': 'matrix_postmoogle_container_src_files_path'} - - {'old': 'matrix_postmoogle_container_image_force_pull', 'new': ' (the new community.docker.docker_image_pull module handles this natively)'} + - {'old': 'matrix_bridge_postmoogle_docker_image_name_prefix', 'new': 'matrix_bridge_postmoogle_container_image_registry_prefix'} + - {'old': 'matrix_bridge_postmoogle_docker_image', 'new': 'matrix_bridge_postmoogle_container_image'} + - {'old': 'matrix_bridge_postmoogle_docker_image_force_pull', 'new': 'matrix_bridge_postmoogle_container_image_force_pull'} + - {'old': 'matrix_bridge_postmoogle_docker_image_registry_prefix', 'new': 'matrix_bridge_postmoogle_container_image_registry_prefix'} + - {'old': 'matrix_bridge_postmoogle_docker_image_registry_prefix_upstream', 'new': 'matrix_bridge_postmoogle_container_image_registry_prefix_upstream'} + - {'old': 'matrix_bridge_postmoogle_docker_image_registry_prefix_upstream_default', 'new': 'matrix_bridge_postmoogle_container_image_registry_prefix_upstream_default'} + - {'old': 'matrix_bridge_postmoogle_docker_repo', 'new': 'matrix_bridge_postmoogle_container_repo'} + - {'old': 'matrix_bridge_postmoogle_docker_repo_version', 'new': 'matrix_bridge_postmoogle_container_repo_version'} + - {'old': 'matrix_bridge_postmoogle_docker_src_files_path', 'new': 'matrix_bridge_postmoogle_container_src_files_path'} + - {'old': 'matrix_bridge_postmoogle_container_image_force_pull', 'new': ' (the new community.docker.docker_image_pull module handles this natively)'} - name: Fail if required Postmoogle settings not defined ansible.builtin.fail: @@ -29,7 +29,7 @@ You need to define a required configuration setting (`{{ item.name }}`). when: "item.when | bool and lookup('vars', item.name, default='') | string | length == 0" with_items: - - {'name': 'matrix_postmoogle_password', when: true} - - {'name': 'matrix_postmoogle_container_network', when: true} - - {'name': 'matrix_postmoogle_homeserver', when: true} - - {'name': 'matrix_postmoogle_database_hostname', when: "{{ matrix_postmoogle_database_engine == 'postgres' }}"} + - {'name': 'matrix_bridge_postmoogle_password', when: true} + - {'name': 'matrix_bridge_postmoogle_container_network', when: true} + - {'name': 'matrix_bridge_postmoogle_homeserver', when: true} + - {'name': 'matrix_bridge_postmoogle_database_hostname', when: "{{ matrix_bridge_postmoogle_database_engine == 'postgres' }}"} diff --git a/roles/custom/matrix-bridge-postmoogle/templates/env.j2 b/roles/custom/matrix-bridge-postmoogle/templates/env.j2 index a2a8348bf..1d9c038f5 100644 --- a/roles/custom/matrix-bridge-postmoogle/templates/env.j2 +++ b/roles/custom/matrix-bridge-postmoogle/templates/env.j2 @@ -6,34 +6,34 @@ SPDX-FileCopyrightText: 2024 Suguru Hirahara SPDX-License-Identifier: AGPL-3.0-or-later #} -POSTMOOGLE_LOGIN={{ matrix_postmoogle_login }} -POSTMOOGLE_PASSWORD={{ matrix_postmoogle_password }} -POSTMOOGLE_SHAREDSECRET={{ matrix_postmoogle_sharedsecret }} -POSTMOOGLE_HOMESERVER={{ matrix_postmoogle_homeserver }} -POSTMOOGLE_DOMAINS={{ matrix_postmoogle_domains | join(' ') }} -POSTMOOGLE_PORT={{ matrix_postmoogle_port }} -POSTMOOGLE_DB_DSN={{ matrix_postmoogle_database_connection_string }} -POSTMOOGLE_DB_DIALECT={{ matrix_postmoogle_database_dialect }} -POSTMOOGLE_PREFIX={{ matrix_postmoogle_prefix }} -POSTMOOGLE_MAXSIZE={{ matrix_postmoogle_maxsize }} -POSTMOOGLE_LOGLEVEL={{ matrix_postmoogle_loglevel }} -POSTMOOGLE_ADMINS={{ matrix_postmoogle_admins | join(' ') }} -POSTMOOGLE_TLS_PORT={{ matrix_postmoogle_tls_port }} -POSTMOOGLE_TLS_CERT={{ matrix_postmoogle_tls_cert }} -POSTMOOGLE_TLS_KEY={{ matrix_postmoogle_tls_key }} -POSTMOOGLE_TLS_REQUIRED={{ matrix_postmoogle_tls_required }} -POSTMOOGLE_DATA_SECRET={{ matrix_postmoogle_data_secret }} -POSTMOOGLE_PROXIES={{ matrix_postmoogle_proxies | join(' ') }} -POSTMOOGLE_RELAY_HOST={{ matrix_postmoogle_relay_host }} -POSTMOOGLE_RELAY_PORT={{ matrix_postmoogle_relay_port }} -POSTMOOGLE_RELAY_USERNAME={{ matrix_postmoogle_relay_username }} -POSTMOOGLE_RELAY_PASSWORD={{ matrix_postmoogle_relay_password }} -POSTMOOGLE_MONITORING_SENTRY_DSN={{ matrix_postmoogle_monitoring_sentry_dsn }} -POSTMOOGLE_MONITORING_SENTRY_RATE={{ matrix_postmoogle_monitoring_sentry_rate }} -POSTMOOGLE_MONITORING_HEALTHCHECKS_UUID={{ matrix_postmoogle_monitoring_healthchecks_uuid }} -POSTMOOGLE_MONITORING_HEALTHCHECKS_DURATION={{ matrix_postmoogle_monitoring_healthchecks_duration }} -POSTMOOGLE_MAILBOXES_FORWARDED={{ matrix_postmoogle_mailboxes_forwarded | join(' ') }} -POSTMOOGLE_MAILBOXES_RESERVED={{ matrix_postmoogle_mailboxes_reserved | join(' ') }} -POSTMOOGLE_MAILBOXES_ACTIVATION={{ matrix_postmoogle_mailboxes_activation }} +POSTMOOGLE_LOGIN={{ matrix_bridge_postmoogle_login }} +POSTMOOGLE_PASSWORD={{ matrix_bridge_postmoogle_password }} +POSTMOOGLE_SHAREDSECRET={{ matrix_bridge_postmoogle_sharedsecret }} +POSTMOOGLE_HOMESERVER={{ matrix_bridge_postmoogle_homeserver }} +POSTMOOGLE_DOMAINS={{ matrix_bridge_postmoogle_domains | join(' ') }} +POSTMOOGLE_PORT={{ matrix_bridge_postmoogle_port }} +POSTMOOGLE_DB_DSN={{ matrix_bridge_postmoogle_database_connection_string }} +POSTMOOGLE_DB_DIALECT={{ matrix_bridge_postmoogle_database_dialect }} +POSTMOOGLE_PREFIX={{ matrix_bridge_postmoogle_prefix }} +POSTMOOGLE_MAXSIZE={{ matrix_bridge_postmoogle_maxsize }} +POSTMOOGLE_LOGLEVEL={{ matrix_bridge_postmoogle_loglevel }} +POSTMOOGLE_ADMINS={{ matrix_bridge_postmoogle_admins | join(' ') }} +POSTMOOGLE_TLS_PORT={{ matrix_bridge_postmoogle_tls_port }} +POSTMOOGLE_TLS_CERT={{ matrix_bridge_postmoogle_tls_cert }} +POSTMOOGLE_TLS_KEY={{ matrix_bridge_postmoogle_tls_key }} +POSTMOOGLE_TLS_REQUIRED={{ matrix_bridge_postmoogle_tls_required }} +POSTMOOGLE_DATA_SECRET={{ matrix_bridge_postmoogle_data_secret }} +POSTMOOGLE_PROXIES={{ matrix_bridge_postmoogle_proxies | join(' ') }} +POSTMOOGLE_RELAY_HOST={{ matrix_bridge_postmoogle_relay_host }} +POSTMOOGLE_RELAY_PORT={{ matrix_bridge_postmoogle_relay_port }} +POSTMOOGLE_RELAY_USERNAME={{ matrix_bridge_postmoogle_relay_username }} +POSTMOOGLE_RELAY_PASSWORD={{ matrix_bridge_postmoogle_relay_password }} +POSTMOOGLE_MONITORING_SENTRY_DSN={{ matrix_bridge_postmoogle_monitoring_sentry_dsn }} +POSTMOOGLE_MONITORING_SENTRY_RATE={{ matrix_bridge_postmoogle_monitoring_sentry_rate }} +POSTMOOGLE_MONITORING_HEALTHCHECKS_UUID={{ matrix_bridge_postmoogle_monitoring_healthchecks_uuid }} +POSTMOOGLE_MONITORING_HEALTHCHECKS_DURATION={{ matrix_bridge_postmoogle_monitoring_healthchecks_duration }} +POSTMOOGLE_MAILBOXES_FORWARDED={{ matrix_bridge_postmoogle_mailboxes_forwarded | join(' ') }} +POSTMOOGLE_MAILBOXES_RESERVED={{ matrix_bridge_postmoogle_mailboxes_reserved | join(' ') }} +POSTMOOGLE_MAILBOXES_ACTIVATION={{ matrix_bridge_postmoogle_mailboxes_activation }} -{{ matrix_postmoogle_environment_variables_extension }} +{{ matrix_bridge_postmoogle_environment_variables_extension }} diff --git a/roles/custom/matrix-bridge-postmoogle/templates/systemd/matrix-postmoogle.service.j2 b/roles/custom/matrix-bridge-postmoogle/templates/systemd/matrix-postmoogle.service.j2 index 80ebb5608..15d1e086f 100644 --- a/roles/custom/matrix-bridge-postmoogle/templates/systemd/matrix-postmoogle.service.j2 +++ b/roles/custom/matrix-bridge-postmoogle/templates/systemd/matrix-postmoogle.service.j2 @@ -1,11 +1,11 @@ #jinja2: lstrip_blocks: True [Unit] Description=Matrix Postmoogle bridge -{% for service in matrix_postmoogle_systemd_required_services_list %} +{% for service in matrix_bridge_postmoogle_systemd_required_services_list %} Requires={{ service }} After={{ service }} {% endfor %} -{% for service in matrix_postmoogle_systemd_wanted_services_list %} +{% for service in matrix_bridge_postmoogle_systemd_wanted_services_list %} Wants={{ service }} {% endfor %} DefaultDependencies=no @@ -23,23 +23,23 @@ ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} create \ --user={{ matrix_user_uid }}:{{ matrix_user_gid }} \ --cap-drop=ALL \ --read-only \ - --network={{ matrix_postmoogle_container_network }} \ - --env-file={{ matrix_postmoogle_config_path }}/env \ - -p {{ matrix_postmoogle_smtp_host_bind_port }}:{{ matrix_postmoogle_port }} \ - {% if matrix_postmoogle_ssl_path %} - -p {{ matrix_postmoogle_submission_host_bind_port }}:{{ matrix_postmoogle_tls_port }} \ + --network={{ matrix_bridge_postmoogle_container_network }} \ + --env-file={{ matrix_bridge_postmoogle_config_path }}/env \ + -p {{ matrix_bridge_postmoogle_smtp_host_bind_port }}:{{ matrix_bridge_postmoogle_port }} \ + {% if matrix_bridge_postmoogle_ssl_path %} + -p {{ matrix_bridge_postmoogle_submission_host_bind_port }}:{{ matrix_bridge_postmoogle_tls_port }} \ {% endif %} - --mount type=bind,src={{ matrix_postmoogle_data_path }},dst=/data \ - {% if matrix_postmoogle_ssl_path %} - --mount type=bind,src={{ matrix_postmoogle_ssl_path }},dst=/ssl \ + --mount type=bind,src={{ matrix_bridge_postmoogle_data_path }},dst=/data \ + {% if matrix_bridge_postmoogle_ssl_path %} + --mount type=bind,src={{ matrix_bridge_postmoogle_ssl_path }},dst=/ssl \ {% endif %} - {% for arg in matrix_postmoogle_container_extra_arguments %} + {% for arg in matrix_bridge_postmoogle_container_extra_arguments %} {{ arg }} \ {% endfor %} - {{ matrix_postmoogle_container_image }} + {{ matrix_bridge_postmoogle_container_image }} -{% if matrix_postmoogle_container_network != 'host' %} -{% for network in matrix_postmoogle_container_additional_networks %} +{% if matrix_bridge_postmoogle_container_network != 'host' %} +{% for network in matrix_bridge_postmoogle_container_additional_networks %} ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} network connect {{ network }} matrix-postmoogle {% endfor %} {% endif %} diff --git a/roles/custom/matrix_playbook_migration/defaults/main.yml b/roles/custom/matrix_playbook_migration/defaults/main.yml index 720067dab..ff69689cc 100644 --- a/roles/custom/matrix_playbook_migration/defaults/main.yml +++ b/roles/custom/matrix_playbook_migration/defaults/main.yml @@ -70,8 +70,8 @@ matrix_playbook_migration_matrix_aux_migration_validation_enabled: true # Controls if (`matrix_jitsi` -> `jitsi`) validation will run. matrix_playbook_migration_matrix_jitsi_migration_validation_enabled: true -# Controls if (`matrix_bot_postmoogle_` -> `matrix_postmoogle_`) validation will run. -matrix_playbook_migration_matrix_postmoogle_migration_validation_enabled: true +# Controls if (`matrix_bot_postmoogle_` -> `matrix_bridge_postmoogle_`) validation will run. +matrix_playbook_migration_matrix_bridge_postmoogle_migration_validation_enabled: true # Controls if the old apt repository (likely without a `signed-by` option) on Debian-based systems will be removed. # diff --git a/roles/custom/matrix_playbook_migration/tasks/validate_config.yml b/roles/custom/matrix_playbook_migration/tasks/validate_config.yml index 601c2d21b..7042b31dc 100644 --- a/roles/custom/matrix_playbook_migration/tasks/validate_config.yml +++ b/roles/custom/matrix_playbook_migration/tasks/validate_config.yml @@ -360,7 +360,7 @@ The following variables in your configuration need to be renamed: {{ matrix_playbook_migration_jitsi_migration_vars.keys() | join(', ') }} when: "matrix_playbook_migration_jitsi_migration_vars | length > 0" -- when: matrix_playbook_migration_matrix_postmoogle_migration_validation_enabled | bool +- when: matrix_playbook_migration_matrix_bridge_postmoogle_migration_validation_enabled | bool block: - ansible.builtin.set_fact: matrix_playbook_migration_postmoogle_migration_vars: |- @@ -371,7 +371,7 @@ msg: >- Your configuration contains a variable, which now has a different name. - Please rename all variables (`matrix_bot_postmoogle_` -> `matrix_postmoogle_`) on your configuration file (vars.yml). + Please rename all variables (`matrix_bot_postmoogle_` -> `matrix_bridge_postmoogle_`) on your configuration file (vars.yml). The following variables in your configuration need to be renamed: {{ matrix_playbook_migration_postmoogle_migration_vars.keys() | join(', ') }} when: "matrix_playbook_migration_postmoogle_migration_vars | length > 0"