Matrix Docker Ansible eploy
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

277 lines
14 KiB

  1. ---
  2. # A bridge between Matrix and multiple project management services, such as GitHub, GitLab and JIRA.
  3. # Project source code URL: https://github.com/matrix-org/matrix-hookshot
  4. matrix_hookshot_enabled: true
  5. matrix_hookshot_container_image_self_build: false
  6. matrix_hookshot_container_image_self_build_repo: "https://github.com/matrix-org/matrix-hookshot.git"
  7. matrix_hookshot_container_image_self_build_branch: "{{ 'main' if matrix_hookshot_version == 'latest' else matrix_hookshot_version }}"
  8. # renovate: datasource=docker depName=halfshot/matrix-hookshot
  9. matrix_hookshot_version: 4.5.1
  10. matrix_hookshot_docker_image: "{{ matrix_hookshot_docker_image_name_prefix }}halfshot/matrix-hookshot:{{ matrix_hookshot_version }}"
  11. matrix_hookshot_docker_image_name_prefix: "{{ 'localhost/' if matrix_hookshot_container_image_self_build else matrix_container_global_registry_prefix }}"
  12. matrix_hookshot_docker_image_force_pull: "{{ matrix_hookshot_docker_image.endswith(':latest') }}"
  13. matrix_hookshot_base_path: "{{ matrix_base_data_path }}/hookshot"
  14. matrix_hookshot_docker_src_files_path: "{{ matrix_hookshot_base_path }}/docker-src"
  15. matrix_hookshot_homeserver_address: "{{ matrix_homeserver_container_url }}"
  16. matrix_hookshot_container_url: 'matrix-hookshot'
  17. matrix_hookshot_public_endpoint: /hookshot
  18. # There is no need to edit ports. use matrix_hookshot_container_http_host_bind_ports below to expose ports instead.
  19. matrix_hookshot_appservice_port: 9993
  20. matrix_hookshot_appservice_endpoint: "{{ matrix_hookshot_public_endpoint }}/_matrix/app"
  21. # Controls whether the experimental end-to-bridge encryption support is enabled.
  22. # This requires that support is also enabled in the homeserver, see the hookshot docs.
  23. matrix_hookshot_experimental_encryption_enabled: false
  24. # Controls whether metrics are enabled in the bridge configuration.
  25. # Enabling them is usually enough for a local (in-container) Prometheus to consume them.
  26. # If metrics need to be consumed by another (external) Prometheus server, consider exposing them via `matrix_hookshot_metrics_proxying_enabled`.
  27. matrix_hookshot_metrics_enabled: false
  28. # Controls whether Hookshot metrics should be proxied (exposed) on `matrix.DOMAIN/metrics/hookshot`.
  29. # This will only work take effect if `matrix_nginx_proxy_proxy_matrix_metrics_enabled: true`.
  30. # See the `matrix-nginx-proxy` role for details about enabling `matrix_nginx_proxy_proxy_matrix_metrics_enabled`.
  31. matrix_hookshot_metrics_proxying_enabled: false
  32. # There is no need to edit ports.
  33. # Read the documentation to learn about using hookshot metrics with external Prometheus
  34. # If you still want something different, use matrix_hookshot_container_http_host_bind_ports below to expose ports instead.
  35. matrix_hookshot_metrics_port: 9001
  36. # There is no need to edit ports. use matrix_hookshot_container_http_host_bind_ports below to expose ports instead.
  37. matrix_hookshot_webhook_port: 9000
  38. matrix_hookshot_webhook_endpoint: "{{ matrix_hookshot_public_endpoint }}/webhooks"
  39. # You need to create a GitHub app to enable this and fill in the empty variables below
  40. # https://matrix-org.github.io/matrix-hookshot/setup/github.html
  41. matrix_hookshot_github_enabled: false
  42. matrix_hookshot_github_auth_id: ''
  43. # Set this variable to the contents of the generated and downloaded GitHub private key:
  44. # matrix_hookshot_github_private_key: |
  45. # -----BEGIN RSA PRIVATE KEY-----
  46. # 0123456789ABCDEF...
  47. # -----END RSA PRIVATE KEY-----
  48. # Alternatively, leave it empty and do it manually or use matrix-aux instead, see docs/matrix-bridge-hookshot.md for info.
  49. matrix_hookshot_github_private_key: ''
  50. matrix_hookshot_github_private_key_file: 'private-key.pem'
  51. matrix_hookshot_github_webhook_secret: '' # "Webhook secret" on the GitHub App page
  52. matrix_hookshot_github_oauth_enabled: false
  53. # You need to configure oauth settings only when you have enabled oauth (optional)
  54. matrix_hookshot_github_oauth_client_id: '' # "Client ID" on the GitHub App page
  55. matrix_hookshot_github_oauth_client_secret: '' # "Client Secret" on the GitHub App page
  56. # Default value of matrix_hookshot_github_oauth_endpoint: "/hookshot/webhooks/oauth"
  57. matrix_hookshot_github_oauth_endpoint: "{{ matrix_hookshot_webhook_endpoint }}/oauth"
  58. matrix_hookshot_github_oauth_redirect_uri: "{{ matrix_hookshot_urlprefix }}{{ matrix_hookshot_github_oauth_endpoint }}"
  59. # These are the default settings mentioned here and don't need to be modified: https://matrix-org.github.io/matrix-hookshot/usage/room_configuration/github_repo.html#configuration
  60. matrix_hookshot_github_defaultOptions_ignoreHooks: {} # noqa var-naming
  61. matrix_hookshot_github_defaultOptions_commandPrefix: '!gh' # noqa var-naming
  62. matrix_hookshot_github_defaultOptions_showIssueRoomLink: false # noqa var-naming
  63. matrix_hookshot_github_defaultOptions_prDiff: # noqa var-naming
  64. enabled: false
  65. maxLines: 5
  66. matrix_hookshot_github_defaultOptions_includingLabels: '' # noqa var-naming
  67. matrix_hookshot_github_defaultOptions_excludingLabels: '' # noqa var-naming
  68. matrix_hookshot_github_defaultOptions_hotlinkIssues_prefix: "#" # noqa var-naming
  69. matrix_hookshot_gitlab_enabled: true
  70. # Optionally add your instances, e.g.
  71. # matrix_hookshot_gitlab_instances:
  72. # gitlab.com:
  73. # url: https://gitlab.com
  74. # mygitlab:
  75. # url: https://gitlab.example.org
  76. matrix_hookshot_gitlab_instances:
  77. gitlab.com:
  78. url: https://gitlab.com
  79. # This will be the "Secret token" you have to enter into all GitLab instances for authentication
  80. matrix_hookshot_gitlab_webhook_secret: ''
  81. matrix_hookshot_figma_enabled: false
  82. # Default value of matrix_hookshot_figma_endpoint: "/hookshot/webhooks/figma/webhook"
  83. matrix_hookshot_figma_endpoint: "{{ matrix_hookshot_webhook_endpoint }}/figma/webhook"
  84. matrix_hookshot_figma_publicUrl: "{{ matrix_hookshot_urlprefix }}{{ matrix_hookshot_figma_endpoint }}" # noqa var-naming
  85. # To bridge figma webhooks, you need to configure one of multiple instances like this:
  86. # matrix_hookshot_figma_instances:
  87. # your-instance:
  88. # teamId: your-team-id
  89. # accessToken: your-personal-access-token
  90. # passcode: your-webhook-passcode
  91. matrix_hookshot_figma_instances: {}
  92. matrix_hookshot_jira_enabled: false
  93. # Get the these values from https://matrix-org.github.io/matrix-hookshot/setup/jira.html#jira-oauth
  94. matrix_hookshot_jira_webhook_secret: ''
  95. matrix_hookshot_jira_oauth_enabled: false
  96. matrix_hookshot_jira_oauth_client_id: ''
  97. matrix_hookshot_jira_oauth_client_secret: ''
  98. # Default value of matrix_hookshot_jira_oauth_endpoint: "/hookshot/webhooks/jira/oauth"
  99. matrix_hookshot_jira_oauth_endpoint: "{{ matrix_hookshot_webhook_endpoint }}/jira/oauth"
  100. matrix_hookshot_jira_oauth_redirect_uri: "{{ matrix_hookshot_urlprefix }}{{ matrix_hookshot_jira_oauth_endpoint }}"
  101. # No need to change these
  102. matrix_hookshot_generic_enabled: true
  103. matrix_hookshot_generic_enableHttpGet: false # noqa var-naming
  104. # Default value of matrix_hookshot_generic_endpoint: "/hookshot/webhooks"
  105. matrix_hookshot_generic_endpoint: "{{ matrix_hookshot_webhook_endpoint }}"
  106. # urlprefix gets updated with protocol & port in group_vars/matrix_servers
  107. matrix_hookshot_generic_urlPrefix: "{{ matrix_hookshot_urlprefix }}{{ matrix_hookshot_generic_endpoint }}" # noqa var-naming
  108. # If you're also using matrix-appservice-webhooks, take care that these prefixes don't overlap
  109. matrix_hookshot_generic_userIdPrefix: '_webhooks_' # noqa var-naming
  110. matrix_hookshot_generic_allowJsTransformationFunctions: false # noqa var-naming
  111. matrix_hookshot_generic_waitForComplete: false # noqa var-naming
  112. matrix_hookshot_feeds_enabled: true
  113. matrix_hookshot_feeds_pollIntervalSeconds: 600 # noqa var-naming
  114. matrix_hookshot_feeds_pollTimeoutSeconds: 30 # noqa var-naming
  115. # There is no need to edit ports. use matrix_hookshot_container_http_host_bind_ports below to expose ports instead.
  116. matrix_hookshot_provisioning_port: 9002
  117. matrix_hookshot_provisioning_secret: ''
  118. # Provisioning will be automatically enabled if dimension is enabled and you have provided a provisioning secret, unless you override it
  119. matrix_hookshot_provisioning_enabled: false
  120. matrix_hookshot_provisioning_internal: "/v1"
  121. matrix_hookshot_provisioning_endpoint: "{{ matrix_hookshot_public_endpoint }}{{ matrix_hookshot_provisioning_internal }}"
  122. # Valid logging levels are: debug, info, warn, error
  123. matrix_hookshot_logging_level: warn
  124. matrix_hookshot_widgets_enabled: true
  125. matrix_hookshot_widgets_port: 9003
  126. matrix_hookshot_widgets_addToAdminRooms: false # default off as it is a beta feature # noqa var-naming
  127. matrix_hookshot_widgets_roomSetupWidget_enabled: true # noqa var-naming
  128. matrix_hookshot_widgets_roomSetupWidget_addOnInvite: false # noqa var-naming
  129. # `disallowedIpRanges` describes which IP ranges should be disallowed when resolving homeserver IP addresses (for security reasons). Unless you know what you are doing, it is recommended to not include this key. The following IPs are blocked by default, unless you supply another list.
  130. # matrix_hookshot_widgets_disallowedIpRanges:
  131. # - 127.0.0.0/8
  132. # - 10.0.0.0/8
  133. # - 172.16.0.0/12
  134. # - 192.168.0.0/16
  135. # - 100.64.0.0/10
  136. # - 192.0.0.0/24
  137. # - 169.254.0.0/16
  138. # - 192.88.99.0/24
  139. # - 198.18.0.0/15
  140. # - 192.0.2.0/24
  141. # - 198.51.100.0/24
  142. # - 203.0.113.0/24
  143. # - 224.0.0.0/4
  144. # - ::1/128
  145. # - fe80::/10
  146. # - fc00::/7
  147. # - 2001:db8::/32
  148. # - ff00::/8
  149. # - fec0::/10
  150. matrix_hookshot_widgets_disallowedIpRanges: '' # noqa var-naming
  151. matrix_hookshot_widgets_internal: "/widgetapi"
  152. # Default value of matrix_hookshot_widgets_endpoint: "/hookshot/widgetapi"
  153. matrix_hookshot_widgets_endpoint: "{{ matrix_hookshot_public_endpoint }}{{ matrix_hookshot_widgets_internal }}"
  154. matrix_hookshot_widgets_publicUrl: "{{ matrix_hookshot_urlprefix }}{{ matrix_hookshot_widgets_endpoint }}/v1/static" # noqa var-naming
  155. matrix_hookshot_widgets_branding_widgetTitle: "Hookshot Configuration" # noqa var-naming
  156. # You can configure access to the bridge as documented here https://matrix-org.github.io/matrix-hookshot/setup.html#permissions
  157. # When empty, the default permissions are applied.
  158. # Example:
  159. # matrix_hookshot_permissions:
  160. # - actor: *
  161. # services:
  162. # - service: *
  163. # level: commands
  164. # - actor: example.com
  165. # services:
  166. # - service: "*"
  167. # level: admin
  168. matrix_hookshot_permissions: []
  169. matrix_hookshot_bot_displayname: Hookshot Bot
  170. matrix_hookshot_bot_avatar: 'mxc://half-shot.uk/2876e89ccade4cb615e210c458e2a7a6883fe17d'
  171. matrix_hookshot_container_network: "{{ matrix_docker_network }}"
  172. # A list of extra arguments to pass to the container
  173. matrix_hookshot_container_extra_arguments: []
  174. # List of systemd services that service depends on.
  175. matrix_hookshot_systemd_required_services_list: ['docker.service']
  176. # List of systemd services that service wants
  177. matrix_hookshot_systemd_wanted_services_list: []
  178. # List of ports to bind to the host to expose them directly.
  179. # Ports will automatically be bound to localhost if matrix_nginx_proxy_enabled is false.
  180. # Setting this variable will override that behaviour in either case.
  181. # Supply docker port bind arguments in a list like this:
  182. #
  183. # matrix_hookshot_container_http_host_bind_ports:
  184. # - "127.0.0.1:9999:{{ matrix_hookshot_metrics_port }}"
  185. #
  186. # Above example will bind the metrics port in the container to port 9999 on localhost.
  187. matrix_hookshot_container_http_host_bind_ports: []
  188. # These tokens will be set automatically
  189. matrix_hookshot_appservice_token: ''
  190. matrix_hookshot_homeserver_token: ''
  191. # Default configuration template which covers the generic use case.
  192. # You can customize it by controlling the various variables inside it.
  193. #
  194. # For a more advanced customization, you can extend the default (see `matrixhookshot_configuration_extension_yaml`)
  195. # or completely replace this variable with your own template.
  196. matrix_hookshot_configuration_yaml: "{{ lookup('template', 'templates/config.yml.j2') }}"
  197. matrix_hookshot_configuration_extension_yaml: |
  198. # Your custom YAML configuration goes here.
  199. # This configuration extends the default starting configuration (`matrix_hookshot_configuration_yaml`).
  200. #
  201. # You can override individual variables from the default configuration, or introduce new ones.
  202. #
  203. # If you need something more special, you can take full control by
  204. # completely redefining `matrix_hookshot_configuration_yaml`.
  205. matrix_hookshot_configuration_extension: "{{ matrix_hookshot_configuration_extension_yaml | from_yaml if matrix_hookshot_configuration_extension_yaml | from_yaml is mapping else {} }}"
  206. # Holds the final configuration (a combination of the default and its extension).
  207. # You most likely don't need to touch this variable. Instead, see `matrix_hookshot_configuration_yaml`.
  208. matrix_hookshot_configuration: "{{ matrix_hookshot_configuration_yaml | from_yaml | combine(matrix_hookshot_configuration_extension, recursive=True) }}"
  209. # Default registration template which covers the generic use case.
  210. # You can customize it by controlling the various variables inside it.
  211. #
  212. # For a more advanced customization, you can extend the default (see `matrixhookshot_registration_extension_yaml`)
  213. # or completely replace this variable with your own template.
  214. matrix_hookshot_registration_yaml: "{{ lookup('template', 'templates/registration.yml.j2') }}"
  215. matrix_hookshot_registration_extension_yaml: |
  216. # Your custom YAML registration goes here.
  217. # This registration extends the default starting registration (`matrix_hookshot_registration_yaml`).
  218. #
  219. # You can override individual variables from the default registration, or introduce new ones.
  220. #
  221. # If you need something more special, you can take full control by
  222. # completely redefining `matrix_hookshot_registration_yaml`.
  223. matrix_hookshot_registration_extension: "{{ matrix_hookshot_registration_extension_yaml | from_yaml if matrix_hookshot_registration_extension_yaml | from_yaml is mapping else {} }}"
  224. # Holds the final registration (a combination of the default and its extension).
  225. # You most likely don't need to touch this variable. Instead, see `matrix_hookshot_registration_yaml`.
  226. matrix_hookshot_registration: "{{ matrix_hookshot_registration_yaml | from_yaml | combine(matrix_hookshot_registration_extension, recursive=True) }}"