Files
matrix-docker-ansible-deploy/roles/custom/matrix-bridge-hookshot/tasks/validate_config.yml
T
Slavi Pantaleev 7ccc9c515e Rename matrix_hookshot_* variables to matrix_bridge_hookshot_*
Part of adopting a uniform naming policy for bridge variables,
where the variable prefix matches the role directory name.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 16:12:13 +03:00

127 lines
9.1 KiB
YAML

# SPDX-FileCopyrightText: 2022 - 2025 Slavi Pantaleev
# SPDX-FileCopyrightText: 2022 MDAD project contributors
# SPDX-FileCopyrightText: 2024 - 2025 Suguru Hirahara
#
# SPDX-License-Identifier: AGPL-3.0-or-later
---
- name: (Deprecation) Catch and report renamed Hookshot variables
ansible.builtin.fail:
msg: >-
Your configuration contains a variable, which now has a different name.
Please rename the variable (`{{ item.old }}` -> `{{ item.new }}`) on your configuration file (vars.yml).
when: "lookup('ansible.builtin.varnames', ('^' + item.old + '$'), wantlist=True) | length > 0"
with_items:
- {'old': 'matrix_bridge_hookshot_feeds_interval', 'new': 'matrix_bridge_hookshot_feeds_pollIntervalSeconds'}
- {'old': 'matrix_bridge_hookshot_generic_urlprefix', 'new': 'matrix_bridge_hookshot_generic_urlPrefix'}
- {'old': 'matrix_bridge_hookshot_generic_allow_js_transformation_functions', 'new': 'matrix_bridge_hookshot_generic_allowJsTransformationFunctions'}
- {'old': 'matrix_bridge_hookshot_generic_user_id_prefix', 'new': 'matrix_bridge_hookshot_generic_userIdPrefix'}
- {'old': 'matrix_bridge_hookshot_github_secret', 'new': 'matrix_bridge_hookshot_github_webhook_secret'}
- {'old': 'matrix_bridge_hookshot_github_appid', 'new': 'matrix_bridge_hookshot_github_auth_id'}
- {'old': 'matrix_bridge_hookshot_github_oauth_id', 'new': 'matrix_bridge_hookshot_github_oauth_client_id'}
- {'old': 'matrix_bridge_hookshot_github_oauth_secret', 'new': 'matrix_bridge_hookshot_github_oauth_client_secret'}
- {'old': 'matrix_bridge_hookshot_github_oauth_uri', 'new': 'matrix_bridge_hookshot_github_oauth_redirect_uri'}
- {'old': 'matrix_bridge_hookshot_github_ignore_hooks', 'new': 'matrix_bridge_hookshot_github_defaultOptions_ignoreHooks'}
- {'old': 'matrix_bridge_hookshot_github_command_prefix', 'new': 'matrix_bridge_hookshot_github_defaultOptions_commandPrefix'}
- {'old': 'matrix_bridge_hookshot_github_showIssueRoomLink', 'new': 'matrix_bridge_hookshot_github_defaultOptions_showIssueRoomLink'}
- {'old': 'matrix_bridge_hookshot_github_pr_diff', 'new': 'matrix_bridge_hookshot_github_defaultOptions_prDiff'}
- {'old': 'matrix_bridge_hookshot_github_including_labels', 'new': 'matrix_bridge_hookshot_github_defaultOptions_includingLabels'}
- {'old': 'matrix_bridge_hookshot_github_excluding_labels', 'new': 'matrix_bridge_hookshot_github_defaultOptions_excludingLabels'}
- {'old': 'matrix_bridge_hookshot_github_hotlink_prefix', 'new': 'matrix_bridge_hookshot_github_defaultOptions_hotlinkIssues_prefix'}
- {'old': 'matrix_bridge_hookshot_jira_secret', 'new': 'matrix_bridge_hookshot_jira_webhook_secret'}
- {'old': 'matrix_bridge_hookshot_jira_oauth_id', 'new': 'matrix_bridge_hookshot_jira_oauth_client_id'}
- {'old': 'matrix_bridge_hookshot_jira_oauth_secret', 'new': 'matrix_bridge_hookshot_jira_oauth_client_secret'}
- {'old': 'matrix_bridge_hookshot_jira_oauth_uri', 'new': 'matrix_bridge_hookshot_jira_oauth_client_secret'}
- {'old': 'matrix_bridge_hookshot_gitlab_secret', 'new': 'matrix_bridge_hookshot_gitlab_webhook_secret'}
- {'old': 'matrix_bridge_hookshot_ident', 'new': 'matrix_bridge_hookshot_identifier'}
- {'old': 'matrix_bridge_hookshot_queue_host', 'new': 'matrix_bridge_hookshot_cache_redis_host'}
- {'old': 'matrix_bridge_hookshot_queue_port', 'new': 'matrix_bridge_hookshot_cache_redis_port'}
- {'old': 'matrix_bridge_hookshot_experimental_encryption_enabled', 'new': 'matrix_bridge_hookshot_encryption_enabled'}
- {'old': 'matrix_bridge_hookshot_docker_image_name_prefix', 'new': 'matrix_bridge_hookshot_container_image_registry_prefix'}
- {'old': 'matrix_bridge_hookshot_provisioning_enabled', 'new': '<removed - see https://github.com/matrix-org/matrix-hookshot/pull/931 and the `matrix_bridge_hookshot_widgets_*` variables>'}
- {'old': 'matrix_bridge_hookshot_provisioning_port', 'new': '<removed - see https://github.com/matrix-org/matrix-hookshot/pull/931 and the `matrix_bridge_hookshot_widgets_*` variables>'}
- {'old': 'matrix_bridge_hookshot_provisioning_secret', 'new': '<removed - see https://github.com/matrix-org/matrix-hookshot/pull/931 and the `matrix_bridge_hookshot_widgets_*` variables>'}
- {'old': 'matrix_bridge_hookshot_provisioning_internal', 'new': '<removed - see https://github.com/matrix-org/matrix-hookshot/pull/931 and the `matrix_bridge_hookshot_widgets_*` variables>'}
- {'old': 'matrix_bridge_hookshot_provisioning_hostname', 'new': '<removed - see https://github.com/matrix-org/matrix-hookshot/pull/931 and the `matrix_bridge_hookshot_widgets_*` variables>'}
- {'old': 'matrix_bridge_hookshot_provisioning_endpoint', 'new': '<removed - see https://github.com/matrix-org/matrix-hookshot/pull/931 and the `matrix_bridge_hookshot_widgets_*` variables>'}
- {'old': 'matrix_bridge_hookshot_container_labels_provisioning_enabled', 'new': '<removed - see https://github.com/matrix-org/matrix-hookshot/pull/931 and the `matrix_bridge_hookshot_widgets_*` variables>'}
- {'old': 'matrix_bridge_hookshot_docker_image', 'new': 'matrix_bridge_hookshot_container_image'}
- {'old': 'matrix_bridge_hookshot_docker_image_force_pull', 'new': 'matrix_bridge_hookshot_container_image_force_pull'}
- {'old': 'matrix_bridge_hookshot_docker_image_registry_prefix', 'new': 'matrix_bridge_hookshot_container_image_registry_prefix'}
- {'old': 'matrix_bridge_hookshot_docker_image_registry_prefix_upstream', 'new': 'matrix_bridge_hookshot_container_image_registry_prefix_upstream'}
- {'old': 'matrix_bridge_hookshot_docker_image_registry_prefix_upstream_default', 'new': 'matrix_bridge_hookshot_container_image_registry_prefix_upstream_default'}
- {'old': 'matrix_bridge_hookshot_docker_src_files_path', 'new': 'matrix_bridge_hookshot_container_src_files_path'}
- {'old': 'matrix_bridge_hookshot_container_image_force_pull', 'new': '<removed> (the new community.docker.docker_image_pull module handles this natively)'}
- name: Fail if required Hookshot settings not defined
ansible.builtin.fail:
msg: >-
You need to define a required configuration setting (`{{ item }}`).
when: "lookup('vars', item, default='') == ''"
with_items:
- "matrix_bridge_hookshot_appservice_token"
- "matrix_bridge_hookshot_homeserver_address"
- "matrix_bridge_hookshot_homeserver_token"
- "matrix_bridge_hookshot_container_network"
- name: Fail if required GitHub settings not defined
ansible.builtin.fail:
msg: >-
You need to define a required configuration setting (`{{ item }}`) to enable GitHub.
when: "matrix_bridge_hookshot_github_enabled and lookup('vars', item, default='') == ''"
with_items:
- "matrix_bridge_hookshot_github_auth_id"
- "matrix_bridge_hookshot_github_webhook_secret"
- name: Fail if required GitHub OAuth settings not defined
ansible.builtin.fail:
msg: >-
You need to define a required configuration setting (`{{ item }}`) to enable GitHub OAuth.
when: "matrix_bridge_hookshot_github_oauth_enabled and lookup('vars', item, default='') == ''"
with_items:
- "matrix_bridge_hookshot_github_oauth_client_id"
- "matrix_bridge_hookshot_github_oauth_client_secret"
- name: Fail if required Jira settings not defined
ansible.builtin.fail:
msg: >-
You need to define a required configuration setting (`{{ item }}`) to enable Jira.
when: "matrix_bridge_hookshot_jira_enabled and lookup('vars', item, default='') == ''"
with_items:
- "matrix_bridge_hookshot_jira_webhook_secret"
- name: Fail if required Jira OAuth settings not defined
ansible.builtin.fail:
msg: >-
You need to define a required configuration setting (`{{ item }}`) to enable Jira OAuth.
when: "matrix_bridge_hookshot_jira_oauth_enabled and lookup('vars', item, default='') == ''"
with_items:
- "matrix_bridge_hookshot_jira_oauth_client_id"
- "matrix_bridge_hookshot_jira_oauth_client_secret"
- name: Fail if required Figma settings not defined
ansible.builtin.fail:
msg: >-
You need to define at least one Figma instance in `matrix_bridge_hookshot_figma_instances` to enable Figma.
when: "matrix_bridge_hookshot_figma_enabled and matrix_bridge_hookshot_figma_instances | length == 0"
- name: Fail if no Redis queue enabled when Hookshot encryption is enabled
ansible.builtin.fail:
msg: >-
You need to define a required configuration setting (`matrix_bridge_hookshot_cache_redis*`) to enable Hookshot encryption.
when: "matrix_bridge_hookshot_encryption_enabled and matrix_bridge_hookshot_cache_redisUri == ''"
- name: (Deprecation) Catch and report old metrics usage
ansible.builtin.fail:
msg: >-
Your configuration contains a variable (`{{ item }}`), which refers to the old metrics collection system for Hookshot,
which exposed metrics on `https://stats.example.com/hookshot/metrics`.
We now recommend exposing Hookshot metrics in another way, from another URL.
Refer to the changelog for more details: https://github.com/spantaleev/matrix-docker-ansible-deploy/blob/master/CHANGELOG.md#2022-06-22
with_items:
- matrix_bridge_hookshot_proxy_metrics
- matrix_bridge_hookshot_metrics_endpoint
when: "lookup('ansible.builtin.varnames', ('^' + item + '$'), wantlist=True) | length > 0"