From af193043ab20af99e49b4ce94f1afa5a2ac29d92 Mon Sep 17 00:00:00 2001 From: Slavi Pantaleev Date: Fri, 13 Feb 2026 12:21:45 +0200 Subject: [PATCH] Upgrade Traefik (v2.0.0-2 -> v3.0.0-0) - adding support for conditional restarting --- group_vars/matrix_servers | 808 +++++++++++++++++++++++++++++--------- requirements.yml | 2 +- 2 files changed, 630 insertions(+), 180 deletions(-) diff --git a/group_vars/matrix_servers b/group_vars/matrix_servers index 96a72138d..b8d4d3fe1 100755 --- a/group_vars/matrix_servers +++ b/group_vars/matrix_servers @@ -267,185 +267,635 @@ matrix_addons_homeserver_systemd_services_list: | # - services which aren't time-sensitive (various crons and timers) get a level of 5000 — they can start later than all-of-Matrix devture_systemd_service_manager_services_list_auto: | {{ - ([{'name': (backup_borg_identifier + '.timer'), 'priority': 5000, 'groups': ['matrix', 'backup', 'borg']}] if backup_borg_enabled else []) - + - ([{'name': 'matrix-alertmanager-receiver.service', 'priority': 2200, 'groups': ['matrix', 'alertmanager-receiver']}] if matrix_alertmanager_receiver_enabled else []) - + - ([{'name': 'matrix-authentication-service.service', 'priority': 2200, 'groups': ['matrix', 'matrix-authentication-service']}] if matrix_authentication_service_enabled else []) - + - ([{'name': 'matrix-bot-buscarron.service', 'priority': 2200, 'groups': ['matrix', 'bots', 'buscarron', 'bot-buscarron']}] if matrix_bot_buscarron_enabled else []) - + - ([{'name': 'matrix-bot-baibot.service', 'priority': 2200, 'groups': ['matrix', 'bots', 'baibot', 'bot-baibot']}] if matrix_bot_baibot_enabled else []) - + - ([{'name': 'matrix-bot-go-neb.service', 'priority': 2200, 'groups': ['matrix', 'bots', 'go-neb', 'bot-go-neb']}] if matrix_bot_go_neb_enabled else []) - + - ([{'name': 'matrix-bot-honoroit.service', 'priority': 2200, 'groups': ['matrix', 'bots', 'honoroit', 'bot-honoroit']}] if matrix_bot_honoroit_enabled else []) - + - ([{'name': 'matrix-bot-matrix-registration-bot.service', 'priority': 2200, 'groups': ['matrix', 'bots', 'registration-bot', 'bot-matrix-registration-bot']}] if matrix_bot_matrix_registration_bot_enabled else []) - + - ([{'name': 'matrix-bot-matrix-reminder-bot.service', 'priority': 2200, 'groups': ['matrix', 'bots', 'reminder-bot', 'bot-matrix-reminder-bot']}] if matrix_bot_matrix_reminder_bot_enabled else []) - + - ([{'name': 'matrix-bot-maubot.service', 'priority': 2200, 'groups': ['matrix', 'bots', 'maubot', 'bot-maubot']}] if matrix_bot_maubot_enabled else []) - + - ([{'name': 'matrix-bot-mjolnir.service', 'priority': 4000, 'groups': ['matrix', 'bots', 'mjolnir', 'bot-mjolnir']}] if matrix_bot_mjolnir_enabled else []) - + - ([{'name': 'matrix-bot-draupnir.service', 'priority': 4000, 'groups': ['matrix', 'bots', 'draupnir', 'bot-draupnir']}] if matrix_bot_draupnir_enabled else []) - + - ([{'name': 'matrix-appservice-discord.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'appservice-discord']}] if matrix_appservice_discord_enabled else []) - + - ([{'name': 'matrix-appservice-draupnir-for-all.service', 'priority': 4000, 'groups': ['matrix', 'bridges', 'draupnir-for-all', 'appservice-draupnir-for-all']}] if matrix_appservice_draupnir_for_all_enabled else []) - + - ([{'name': 'matrix-appservice-irc.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'appservice-irc']}] if matrix_appservice_irc_enabled else []) - + - ([{'name': 'matrix-appservice-kakaotalk.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'appservice-kakaotalk']}] if matrix_appservice_kakaotalk_enabled else []) - + - ([{'name': 'matrix-appservice-kakaotalk-node.service', 'priority': 1900, 'groups': ['matrix', 'bridges', 'appservice-kakaotalk', 'appservice-kakaotalk-node']}] if matrix_appservice_kakaotalk_enabled else []) - + - ([{'name': 'matrix-appservice-slack.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'appservice-slack']}] if matrix_appservice_slack_enabled else []) - + - ([{'name': 'matrix-beeper-linkedin.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'beeper-linkedin']}] if matrix_beeper_linkedin_enabled else []) - + - ([{'name': 'matrix-wechat.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'wechat']}] if matrix_wechat_enabled else []) - + - ([{'name': 'matrix-wechat-agent.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'wechat']}] if matrix_wechat_enabled else []) - + - ([{'name': 'matrix-heisenbridge.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'heisenbridge']}] if matrix_heisenbridge_enabled else []) - + - ([{'name': 'matrix-hookshot.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'hookshot', 'bridge-hookshot']}] if matrix_hookshot_enabled else []) - + - ([{'name': 'matrix-mautrix-bluesky.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'mautrix-bluesky']}] if matrix_mautrix_bluesky_enabled else []) - + - ([{'name': 'matrix-mautrix-discord.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'mautrix-discord']}] if matrix_mautrix_discord_enabled else []) - + - ([{'name': 'matrix-mautrix-slack.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'mautrix-slack']}] if matrix_mautrix_slack_enabled else []) - + - ([{'name': 'matrix-mautrix-googlechat.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'mautrix-googlechat']}] if matrix_mautrix_googlechat_enabled else []) - + - ([{'name': 'matrix-mautrix-signal.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'mautrix-signal', 'mautrix-signal']}] if matrix_mautrix_signal_enabled else []) - + - ([{'name': (matrix_mautrix_meta_messenger_identifier + '.service'), 'priority': 2000, 'groups': ['matrix', 'bridges', 'mautrix-meta', 'mautrix-meta-messenger']}] if matrix_mautrix_meta_messenger_enabled else []) - + - ([{'name': (matrix_mautrix_meta_instagram_identifier + '.service'), 'priority': 2000, 'groups': ['matrix', 'bridges', 'mautrix-meta', 'mautrix-meta-instagram']}] if matrix_mautrix_meta_instagram_enabled else []) - + - ([{'name': 'matrix-mautrix-telegram.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'mautrix-telegram']}] if matrix_mautrix_telegram_enabled else []) - + - ([{'name': 'matrix-mautrix-twitter.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'mautrix-twitter']}] if matrix_mautrix_twitter_enabled else []) - + - ([{'name': 'matrix-mautrix-gmessages.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'mautrix-gmessages']}] if matrix_mautrix_gmessages_enabled else []) - + - ([{'name': 'matrix-mautrix-whatsapp.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'mautrix-whatsapp']}] if matrix_mautrix_whatsapp_enabled else []) - + - ([{'name': 'matrix-mautrix-wsproxy.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'mautrix-wsproxy']}] if matrix_mautrix_wsproxy_enabled else []) - + - ([{'name': 'matrix-mautrix-wsproxy-syncproxy.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'mautrix-wsproxy-syncproxy']}] if matrix_mautrix_wsproxy_enabled else []) - + - ([{'name': 'matrix-mx-puppet-groupme.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'mx-puppet-groupme']}] if matrix_mx_puppet_groupme_enabled else []) - + - ([{'name': 'matrix-mx-puppet-steam.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'mx-puppet-steam']}] if matrix_mx_puppet_steam_enabled else []) - + - ([{'name': 'matrix-postmoogle.service', 'priority': 2200, 'groups': ['matrix', 'bridges', 'postmoogle']}] if matrix_postmoogle_enabled else []) - + - ([{'name': 'matrix-sms-bridge.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'sms']}] if matrix_sms_bridge_enabled else []) - + - ([{'name': 'matrix-steam-bridge.service', 'priority': 2000, 'groups': ['matrix', 'bridges', 'matrix-steam-bridge']}] if matrix_steam_bridge_enabled else []) - + - ([{'name': 'matrix-cactus-comments.service', 'priority': 2000, 'groups': ['matrix', 'cactus-comments']}] if matrix_cactus_comments_enabled else []) - + - ([{'name': 'matrix-cactus-comments-client.service', 'priority': 2000, 'groups': ['matrix', 'cactus-comments-client']}] if matrix_cactus_comments_client_enabled else []) - + - ([{'name': (cinny_identifier + '.service'), 'priority': 2000, 'groups': ['matrix', 'clients', 'cinny', 'client-cinny']}] if cinny_enabled else []) - + - ([{'name': 'matrix-client-element.service', 'priority': 2000, 'groups': ['matrix', 'clients', 'element', 'client-element']}] if matrix_client_element_enabled else []) - + - ([{'name': (hydrogen_identifier + '.service'), 'priority': 2000, 'groups': ['matrix', 'clients', 'hydrogen', 'client-hydrogen']}] if hydrogen_enabled else []) - + - ([{'name': 'matrix-client-schildichat.service', 'priority': 2000, 'groups': ['matrix', 'clients', 'schildichat', 'client-schildichat']}] if matrix_client_schildichat_enabled else []) - + - ([{'name': 'matrix-client-fluffychat.service', 'priority': 2000, 'groups': ['matrix', 'clients', 'fluffychat', 'client-fluffychat']}] if matrix_client_fluffychat_enabled else []) - + - ([{'name': ('matrix-' + matrix_homeserver_implementation + '.service'), 'priority': 1000, 'groups': ['matrix', 'homeservers', matrix_homeserver_implementation]}] if matrix_homeserver_enabled else []) - + - ([{'name': 'matrix-corporal.service', 'priority': 1500, 'groups': ['matrix', 'corporal']}] if matrix_corporal_enabled else []) - + - ([{'name': (coturn_identifier + '.service'), 'priority': (1500 if devture_systemd_service_manager_service_restart_mode == 'one-by-one' else 900), 'groups': ['matrix', 'coturn']}] if coturn_enabled else []) - + - ([{'name': 'matrix-matrixto.service', 'priority': 4000, 'groups': ['matrix', 'matrixto']}] if matrix_matrixto_enabled else []) - + - ([{'name': 'matrix-rageshake.service', 'priority': 4000, 'groups': ['matrix', 'rageshake']}] if matrix_rageshake_enabled else []) - + - ([{'name': (coturn_identifier + '-reload.timer'), 'priority': 5000, 'groups': ['matrix', 'coturn']}] if (coturn_enabled and coturn_tls_enabled) else []) - + - ([{'name': (ddclient_identifier + '.service'), 'priority': 5000, 'groups': ['matrix', 'ddclient', 'dynamic-dns']}] if ddclient_enabled else []) - + - ([{'name': (etherpad_identifier + '.service'), 'priority': 4000, 'groups': ['matrix', 'etherpad']}] if etherpad_enabled else []) - + - ([{'name': (grafana_identifier + '.service'), 'priority': 4000, 'groups': ['matrix', 'monitoring', 'grafana']}] if grafana_enabled else []) - + - ([{'name': (jitsi_identifier + '-web.service'), 'priority': 4200, 'groups': ['matrix', 'jitsi', 'jitsi-web']}] if jitsi_enabled else []) - + - ([{'name': (jitsi_identifier + '-prosody.service'), 'priority': 4000, 'groups': ['matrix', 'jitsi', 'jitsi-prosody']}] if jitsi_enabled else []) - + - ([{'name': (jitsi_identifier + '-jicofo.service'), 'priority': 4100, 'groups': ['matrix', 'jitsi', 'jitsi-jicofo']}] if jitsi_enabled else []) - + - ([{'name': (jitsi_identifier + '-jvb.service'), 'priority': 4100, 'groups': ['matrix', 'jitsi', 'jitsi-jvb']}] if jitsi_enabled else []) - + - ([{'name': 'matrix-ldap-registration-proxy.service', 'priority': 2000, 'groups': ['matrix', 'ldap-registration-proxy']}] if matrix_ldap_registration_proxy_enabled else []) - + - ([{'name': (matrix_media_repo_identifier + '.service'), 'priority': 4000, 'groups': ['matrix', 'matrix-media-repo']}] if matrix_media_repo_enabled else []) - + - ([{'name': (exim_relay_identifier ~ '.service'), 'priority': 800, 'groups': ['matrix', 'mailer', 'exim-relay']}] if exim_relay_enabled else []) - + - ([{'name': (ntfy_identifier + '.service'), 'priority': 800, 'groups': ['matrix', 'ntfy']}] if ntfy_enabled else []) - + - ([{'name': (postgres_identifier + '.service'), 'priority': 500, 'groups': ['matrix', 'postgres']}] if postgres_enabled else []) - + - ([{'name': (postgres_backup_identifier + '.service'), 'priority': 5000, 'groups': ['matrix', 'backup', 'postgres-backup']}] if postgres_backup_enabled else []) - + - ([{'name': (prometheus_identifier + '.service'), 'priority': 4000, 'groups': ['matrix', 'monitoring', 'prometheus']}] if prometheus_enabled else []) - + - ([{'name': (prometheus_node_exporter_identifier + '.service'), 'priority': 3900, 'groups': ['matrix', 'monitoring', 'prometheus-exporters', 'prometheus-node-exporter']}] if prometheus_node_exporter_enabled else []) - + - ([{'name': (prometheus_postgres_exporter_identifier + '.service'), 'priority': 3900, 'groups': ['matrix', 'monitoring', 'prometheus-exporters', 'prometheus-postgres-exporter']}] if prometheus_postgres_exporter_enabled else []) - + - ([{'name': 'matrix-prometheus-nginxlog-exporter.service', 'priority': 3900, 'groups': ['matrix', 'monitoring', 'prometheus-exporters', 'prometheus-nginxlog-exporter']}] if matrix_prometheus_nginxlog_exporter_enabled else []) - + - ([{'name': (valkey_identifier + '.service'), 'priority': 750, 'groups': ['matrix', 'valkey']}] if valkey_enabled else []) - + - ([{'name': 'matrix-pantalaimon.service', 'priority': 4000, 'groups': ['matrix', 'pantalaimon']}] if matrix_pantalaimon_enabled else []) - + - ([{'name': 'matrix-element-admin.service', 'priority': 4000, 'groups': ['matrix', 'element-admin']}] if matrix_element_admin_enabled else []) - + - ([{'name': 'matrix-element-call.service', 'priority': 4000, 'groups': ['matrix', 'element-call']}] if matrix_element_call_enabled else []) - + - ([{'name': 'matrix-livekit-jwt-service.service', 'priority': 3500, 'groups': ['matrix', 'livekit-jwt-service']}] if matrix_livekit_jwt_service_enabled else []) - + - ([{'name': (livekit_server_identifier + '.service'), 'priority': 3000, 'groups': ['matrix', 'livekit-server']}] if livekit_server_enabled else []) - + - ([{'name': 'matrix-registration.service', 'priority': 4000, 'groups': ['matrix', 'registration', 'matrix-registration']}] if matrix_registration_enabled else []) - + - ([{'name': 'matrix-sygnal.service', 'priority': 800, 'groups': ['matrix', 'sygnal']}] if matrix_sygnal_enabled else []) - + - ([{'name': 'matrix-goofys.service', 'priority': 800, 'groups': ['matrix', 'goofys']}] if matrix_s3_media_store_enabled else []) - + - ([{'name': 'matrix-synapse-s3-storage-provider-migrate.timer', 'priority': 5000, 'groups': ['matrix']}] if matrix_synapse_ext_synapse_s3_storage_provider_enabled else []) - + - ([{'name': 'matrix-synapse-auto-compressor.timer', 'priority': 5000, 'groups': ['matrix', 'synapse-auto-compressor']}] if matrix_synapse_auto_compressor_enabled else []) - + - ([{'name': 'matrix-synapse-admin.service', 'priority': 4000, 'groups': ['matrix', 'synapse-admin']}] if matrix_synapse_admin_enabled else []) - + - ([{'name': (matrix_synapse_usage_exporter_identifier + '.service'), 'priority': 4000, 'groups': ['matrix', 'synapse-usage-exporter']}] if matrix_synapse_usage_exporter_enabled else []) - + - ([{'name': 'matrix-synapse-reverse-proxy-companion.service', 'priority': 1500, 'groups': ['matrix', 'homeservers', 'synapse', 'synapse-reverse-proxy-companion', 'reverse-proxies']}] if matrix_synapse_reverse_proxy_companion_enabled else []) - + - ([{'name': 'matrix-user-verification-service.service', 'priority': 800, 'groups': ['matrix', 'matrix-user-verification-service']}] if matrix_user_verification_service_enabled else []) - + - ([{'name': (matrix_static_files_identifier + '.service'), 'priority': 4000, 'groups': ['matrix', 'matrix-static-files']}] if matrix_static_files_enabled else []) - + - ([{'name': (container_socket_proxy_identifier + '.service'), 'priority': 200, 'groups': ['matrix', 'reverse-proxies', 'container-socket-proxy']}] if container_socket_proxy_enabled else []) - + - ([{'name': (traefik_identifier + '.service'), 'priority': 250, 'groups': ['matrix', 'traefik', 'reverse-proxies']}] if traefik_enabled else []) - + - ([{'name': (traefik_certs_dumper_identifier + '.service'), 'priority': 300, 'groups': ['matrix', 'traefik-certs-dumper']}] if traefik_certs_dumper_enabled else []) + ([{ + 'name': (backup_borg_identifier + '.timer'), + 'priority': 5000, + 'restart_necessary': true, + 'groups': ['matrix', 'backup', 'borg'], + }] if backup_borg_enabled else []) + + + ([{ + 'name': 'matrix-alertmanager-receiver.service', + 'priority': 2200, + 'restart_necessary': true, + 'groups': ['matrix', 'alertmanager-receiver'], + }] if matrix_alertmanager_receiver_enabled else []) + + + ([{ + 'name': 'matrix-authentication-service.service', + 'priority': 2200, + 'restart_necessary': true, + 'groups': ['matrix', 'matrix-authentication-service'], + }] if matrix_authentication_service_enabled else []) + + + ([{ + 'name': 'matrix-bot-buscarron.service', + 'priority': 2200, + 'restart_necessary': true, + 'groups': ['matrix', 'bots', 'buscarron', 'bot-buscarron'], + }] if matrix_bot_buscarron_enabled else []) + + + ([{ + 'name': 'matrix-bot-baibot.service', + 'priority': 2200, + 'restart_necessary': true, + 'groups': ['matrix', 'bots', 'baibot', 'bot-baibot'], + }] if matrix_bot_baibot_enabled else []) + + + ([{ + 'name': 'matrix-bot-go-neb.service', + 'priority': 2200, + 'restart_necessary': true, + 'groups': ['matrix', 'bots', 'go-neb', 'bot-go-neb'], + }] if matrix_bot_go_neb_enabled else []) + + + ([{ + 'name': 'matrix-bot-honoroit.service', + 'priority': 2200, + 'restart_necessary': true, + 'groups': ['matrix', 'bots', 'honoroit', 'bot-honoroit'], + }] if matrix_bot_honoroit_enabled else []) + + + ([{ + 'name': 'matrix-bot-matrix-registration-bot.service', + 'priority': 2200, + 'restart_necessary': true, + 'groups': ['matrix', 'bots', 'registration-bot', 'bot-matrix-registration-bot'], + }] if matrix_bot_matrix_registration_bot_enabled else []) + + + ([{ + 'name': 'matrix-bot-matrix-reminder-bot.service', + 'priority': 2200, + 'restart_necessary': true, + 'groups': ['matrix', 'bots', 'reminder-bot', 'bot-matrix-reminder-bot'], + }] if matrix_bot_matrix_reminder_bot_enabled else []) + + + ([{ + 'name': 'matrix-bot-maubot.service', + 'priority': 2200, + 'restart_necessary': true, + 'groups': ['matrix', 'bots', 'maubot', 'bot-maubot'], + }] if matrix_bot_maubot_enabled else []) + + + ([{ + 'name': 'matrix-bot-mjolnir.service', + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'bots', 'mjolnir', 'bot-mjolnir'], + }] if matrix_bot_mjolnir_enabled else []) + + + ([{ + 'name': 'matrix-bot-draupnir.service', + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'bots', 'draupnir', 'bot-draupnir'], + }] if matrix_bot_draupnir_enabled else []) + + + ([{ + 'name': 'matrix-appservice-discord.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'appservice-discord'], + }] if matrix_appservice_discord_enabled else []) + + + ([{ + 'name': 'matrix-appservice-draupnir-for-all.service', + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'draupnir-for-all', 'appservice-draupnir-for-all'], + }] if matrix_appservice_draupnir_for_all_enabled else []) + + + ([{ + 'name': 'matrix-appservice-irc.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'appservice-irc'], + }] if matrix_appservice_irc_enabled else []) + + + ([{ + 'name': 'matrix-appservice-kakaotalk.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'appservice-kakaotalk'], + }] if matrix_appservice_kakaotalk_enabled else []) + + + ([{ + 'name': 'matrix-appservice-kakaotalk-node.service', + 'priority': 1900, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'appservice-kakaotalk', 'appservice-kakaotalk-node'], + }] if matrix_appservice_kakaotalk_enabled else []) + + + ([{ + 'name': 'matrix-appservice-slack.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'appservice-slack'], + }] if matrix_appservice_slack_enabled else []) + + + ([{ + 'name': 'matrix-beeper-linkedin.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'beeper-linkedin'], + }] if matrix_beeper_linkedin_enabled else []) + + + ([{ + 'name': 'matrix-wechat.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'wechat'], + }] if matrix_wechat_enabled else []) + + + ([{ + 'name': 'matrix-wechat-agent.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'wechat'], + }] if matrix_wechat_enabled else []) + + + ([{ + 'name': 'matrix-heisenbridge.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'heisenbridge'], + }] if matrix_heisenbridge_enabled else []) + + + ([{ + 'name': 'matrix-hookshot.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'hookshot', 'bridge-hookshot'], + }] if matrix_hookshot_enabled else []) + + + ([{ + 'name': 'matrix-mautrix-bluesky.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mautrix-bluesky'], + }] if matrix_mautrix_bluesky_enabled else []) + + + ([{ + 'name': 'matrix-mautrix-discord.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mautrix-discord'], + }] if matrix_mautrix_discord_enabled else []) + + + ([{ + 'name': 'matrix-mautrix-slack.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mautrix-slack'], + }] if matrix_mautrix_slack_enabled else []) + + + ([{ + 'name': 'matrix-mautrix-googlechat.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mautrix-googlechat'], + }] if matrix_mautrix_googlechat_enabled else []) + + + ([{ + 'name': 'matrix-mautrix-signal.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mautrix-signal', 'mautrix-signal'], + }] if matrix_mautrix_signal_enabled else []) + + + ([{ + 'name': (matrix_mautrix_meta_messenger_identifier + '.service'), + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mautrix-meta', 'mautrix-meta-messenger'], + }] if matrix_mautrix_meta_messenger_enabled else []) + + + ([{ + 'name': (matrix_mautrix_meta_instagram_identifier + '.service'), + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mautrix-meta', 'mautrix-meta-instagram'], + }] if matrix_mautrix_meta_instagram_enabled else []) + + + ([{ + 'name': 'matrix-mautrix-telegram.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mautrix-telegram'], + }] if matrix_mautrix_telegram_enabled else []) + + + ([{ + 'name': 'matrix-mautrix-twitter.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mautrix-twitter'], + }] if matrix_mautrix_twitter_enabled else []) + + + ([{ + 'name': 'matrix-mautrix-gmessages.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mautrix-gmessages'], + }] if matrix_mautrix_gmessages_enabled else []) + + + ([{ + 'name': 'matrix-mautrix-whatsapp.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mautrix-whatsapp'], + }] if matrix_mautrix_whatsapp_enabled else []) + + + ([{ + 'name': 'matrix-mautrix-wsproxy.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mautrix-wsproxy'], + }] if matrix_mautrix_wsproxy_enabled else []) + + + ([{ + 'name': 'matrix-mautrix-wsproxy-syncproxy.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mautrix-wsproxy-syncproxy'], + }] if matrix_mautrix_wsproxy_enabled else []) + + + ([{ + 'name': 'matrix-mx-puppet-groupme.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mx-puppet-groupme'], + }] if matrix_mx_puppet_groupme_enabled else []) + + + ([{ + 'name': 'matrix-mx-puppet-steam.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'mx-puppet-steam'], + }] if matrix_mx_puppet_steam_enabled else []) + + + ([{ + 'name': 'matrix-postmoogle.service', + 'priority': 2200, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'postmoogle'], + }] if matrix_postmoogle_enabled else []) + + + ([{ + 'name': 'matrix-sms-bridge.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'sms'], + }] if matrix_sms_bridge_enabled else []) + + + ([{ + 'name': 'matrix-steam-bridge.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'bridges', 'matrix-steam-bridge'], + }] if matrix_steam_bridge_enabled else []) + + + ([{ + 'name': 'matrix-cactus-comments.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'cactus-comments'], + }] if matrix_cactus_comments_enabled else []) + + + ([{ + 'name': 'matrix-cactus-comments-client.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'cactus-comments-client'], + }] if matrix_cactus_comments_client_enabled else []) + + + ([{ + 'name': (cinny_identifier + '.service'), + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'clients', 'cinny', 'client-cinny'], + }] if cinny_enabled else []) + + + ([{ + 'name': 'matrix-client-element.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'clients', 'element', 'client-element'], + }] if matrix_client_element_enabled else []) + + + ([{ + 'name': (hydrogen_identifier + '.service'), + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'clients', 'hydrogen', 'client-hydrogen'], + }] if hydrogen_enabled else []) + + + ([{ + 'name': 'matrix-client-schildichat.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'clients', 'schildichat', 'client-schildichat'], + }] if matrix_client_schildichat_enabled else []) + + + ([{ + 'name': 'matrix-client-fluffychat.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'clients', 'fluffychat', 'client-fluffychat'], + }] if matrix_client_fluffychat_enabled else []) + + + ([{ + 'name': ('matrix-' + matrix_homeserver_implementation + '.service'), + 'priority': 1000, + 'restart_necessary': true, + 'groups': ['matrix', 'homeservers', matrix_homeserver_implementation], + }] if matrix_homeserver_enabled else []) + + + ([{ + 'name': 'matrix-corporal.service', + 'priority': 1500, + 'restart_necessary': true, + 'groups': ['matrix', 'corporal'], + }] if matrix_corporal_enabled else []) + + + ([{ + 'name': (coturn_identifier + '.service'), + 'priority': (1500 if devture_systemd_service_manager_service_restart_mode == 'one-by-one' else 900), + 'restart_necessary': true, + 'groups': ['matrix', 'coturn'], + }] if coturn_enabled else []) + + + ([{ + 'name': 'matrix-matrixto.service', + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'matrixto'], + }] if matrix_matrixto_enabled else []) + + + ([{ + 'name': 'matrix-rageshake.service', + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'rageshake'], + }] if matrix_rageshake_enabled else []) + + + ([{ + 'name': (coturn_identifier + '-reload.timer'), + 'priority': 5000, + 'restart_necessary': true, + 'groups': ['matrix', 'coturn'], + }] if (coturn_enabled and coturn_tls_enabled) else []) + + + ([{ + 'name': (ddclient_identifier + '.service'), + 'priority': 5000, + 'restart_necessary': true, + 'groups': ['matrix', 'ddclient', 'dynamic-dns'], + }] if ddclient_enabled else []) + + + ([{ + 'name': (etherpad_identifier + '.service'), + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'etherpad'], + }] if etherpad_enabled else []) + + + ([{ + 'name': (grafana_identifier + '.service'), + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'monitoring', 'grafana'], + }] if grafana_enabled else []) + + + ([{ + 'name': (jitsi_identifier + '-web.service'), + 'priority': 4200, + 'restart_necessary': true, + 'groups': ['matrix', 'jitsi', 'jitsi-web'], + }] if jitsi_enabled else []) + + + ([{ + 'name': (jitsi_identifier + '-prosody.service'), + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'jitsi', 'jitsi-prosody'], + }] if jitsi_enabled else []) + + + ([{ + 'name': (jitsi_identifier + '-jicofo.service'), + 'priority': 4100, + 'restart_necessary': true, + 'groups': ['matrix', 'jitsi', 'jitsi-jicofo'], + }] if jitsi_enabled else []) + + + ([{ + 'name': (jitsi_identifier + '-jvb.service'), + 'priority': 4100, + 'restart_necessary': true, + 'groups': ['matrix', 'jitsi', 'jitsi-jvb'], + }] if jitsi_enabled else []) + + + ([{ + 'name': 'matrix-ldap-registration-proxy.service', + 'priority': 2000, + 'restart_necessary': true, + 'groups': ['matrix', 'ldap-registration-proxy'], + }] if matrix_ldap_registration_proxy_enabled else []) + + + ([{ + 'name': (matrix_media_repo_identifier + '.service'), + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'matrix-media-repo'], + }] if matrix_media_repo_enabled else []) + + + ([{ + 'name': (exim_relay_identifier ~ '.service'), + 'priority': 800, + 'restart_necessary': true, + 'groups': ['matrix', 'mailer', 'exim-relay'], + }] if exim_relay_enabled else []) + + + ([{ + 'name': (ntfy_identifier + '.service'), + 'priority': 800, + 'restart_necessary': true, + 'groups': ['matrix', 'ntfy'], + }] if ntfy_enabled else []) + + + ([{ + 'name': (postgres_identifier + '.service'), + 'priority': 500, + 'restart_necessary': true, + 'groups': ['matrix', 'postgres'], + }] if postgres_enabled else []) + + + ([{ + 'name': (postgres_backup_identifier + '.service'), + 'priority': 5000, + 'restart_necessary': true, + 'groups': ['matrix', 'backup', 'postgres-backup'], + }] if postgres_backup_enabled else []) + + + ([{ + 'name': (prometheus_identifier + '.service'), + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'monitoring', 'prometheus'], + }] if prometheus_enabled else []) + + + ([{ + 'name': (prometheus_node_exporter_identifier + '.service'), + 'priority': 3900, + 'restart_necessary': true, + 'groups': ['matrix', 'monitoring', 'prometheus-exporters', 'prometheus-node-exporter'], + }] if prometheus_node_exporter_enabled else []) + + + ([{ + 'name': (prometheus_postgres_exporter_identifier + '.service'), + 'priority': 3900, + 'restart_necessary': true, + 'groups': ['matrix', 'monitoring', 'prometheus-exporters', 'prometheus-postgres-exporter'], + }] if prometheus_postgres_exporter_enabled else []) + + + ([{ + 'name': 'matrix-prometheus-nginxlog-exporter.service', + 'priority': 3900, + 'restart_necessary': true, + 'groups': ['matrix', 'monitoring', 'prometheus-exporters', 'prometheus-nginxlog-exporter'], + }] if matrix_prometheus_nginxlog_exporter_enabled else []) + + + ([{ + 'name': (valkey_identifier + '.service'), + 'priority': 750, + 'restart_necessary': true, + 'groups': ['matrix', 'valkey'], + }] if valkey_enabled else []) + + + ([{ + 'name': 'matrix-pantalaimon.service', + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'pantalaimon'], + }] if matrix_pantalaimon_enabled else []) + + + ([{ + 'name': 'matrix-element-admin.service', + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'element-admin'], + }] if matrix_element_admin_enabled else []) + + + ([{ + 'name': 'matrix-element-call.service', + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'element-call'], + }] if matrix_element_call_enabled else []) + + + ([{ + 'name': 'matrix-livekit-jwt-service.service', + 'priority': 3500, + 'restart_necessary': true, + 'groups': ['matrix', 'livekit-jwt-service'], + }] if matrix_livekit_jwt_service_enabled else []) + + + ([{ + 'name': (livekit_server_identifier + '.service'), + 'priority': 3000, + 'restart_necessary': true, + 'groups': ['matrix', 'livekit-server'], + }] if livekit_server_enabled else []) + + + ([{ + 'name': 'matrix-registration.service', + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'registration', 'matrix-registration'], + }] if matrix_registration_enabled else []) + + + ([{ + 'name': 'matrix-sygnal.service', + 'priority': 800, + 'restart_necessary': true, + 'groups': ['matrix', 'sygnal'], + }] if matrix_sygnal_enabled else []) + + + ([{ + 'name': 'matrix-goofys.service', + 'priority': 800, + 'restart_necessary': true, + 'groups': ['matrix', 'goofys'], + }] if matrix_s3_media_store_enabled else []) + + + ([{ + 'name': 'matrix-synapse-s3-storage-provider-migrate.timer', + 'priority': 5000, + 'restart_necessary': true, + 'groups': ['matrix'], + }] if matrix_synapse_ext_synapse_s3_storage_provider_enabled else []) + + + ([{ + 'name': 'matrix-synapse-auto-compressor.timer', + 'priority': 5000, + 'restart_necessary': true, + 'groups': ['matrix', 'synapse-auto-compressor'], + }] if matrix_synapse_auto_compressor_enabled else []) + + + ([{ + 'name': 'matrix-synapse-admin.service', + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'synapse-admin'], + }] if matrix_synapse_admin_enabled else []) + + + ([{ + 'name': (matrix_synapse_usage_exporter_identifier + '.service'), + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'synapse-usage-exporter'], + }] if matrix_synapse_usage_exporter_enabled else []) + + + ([{ + 'name': 'matrix-synapse-reverse-proxy-companion.service', + 'priority': 1500, + 'restart_necessary': true, + 'groups': ['matrix', 'homeservers', 'synapse', 'synapse-reverse-proxy-companion', 'reverse-proxies'], + }] if matrix_synapse_reverse_proxy_companion_enabled else []) + + + ([{ + 'name': 'matrix-user-verification-service.service', + 'priority': 800, + 'restart_necessary': true, + 'groups': ['matrix', 'matrix-user-verification-service'], + }] if matrix_user_verification_service_enabled else []) + + + ([{ + 'name': (matrix_static_files_identifier + '.service'), + 'priority': 4000, + 'restart_necessary': true, + 'groups': ['matrix', 'matrix-static-files'], + }] if matrix_static_files_enabled else []) + + + ([{ + 'name': (container_socket_proxy_identifier + '.service'), + 'priority': 200, + 'restart_necessary': true, + 'groups': ['matrix', 'reverse-proxies', 'container-socket-proxy'], + }] if container_socket_proxy_enabled else []) + + + ([{ + 'name': (traefik_identifier + '.service'), + 'priority': 250, + 'restart_necessary': true, + 'groups': ['matrix', 'traefik', 'reverse-proxies'], + }] if traefik_enabled else []) + + + ([{ + 'name': (traefik_certs_dumper_identifier + '.service'), + 'priority': 300, + 'restart_necessary': true, + 'groups': ['matrix', 'traefik-certs-dumper'], + }] if traefik_certs_dumper_enabled else []) }} ######################################################################## diff --git a/requirements.yml b/requirements.yml index fec7ab57c..3243f0675 100644 --- a/requirements.yml +++ b/requirements.yml @@ -75,7 +75,7 @@ version: v1.4.1-0 name: systemd_docker_base - src: git+https://github.com/devture/com.devture.ansible.role.systemd_service_manager.git - version: v2.0.0-2 + version: v3.0.0-0 name: systemd_service_manager - src: git+https://github.com/devture/com.devture.ansible.role.timesync.git version: v1.1.0-1