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.
 
 

116 rivejä
6.8 KiB

  1. ---
  2. # Heisenbridge is a bouncer-style Matrix IRC bridge
  3. # Project source code URL: https://github.com/hifi/heisenbridge
  4. matrix_heisenbridge_enabled: true
  5. matrix_heisenbridge_scheme: https
  6. matrix_heisenbridge_hostname: "{{ matrix_server_fqn_matrix }}"
  7. matrix_heisenbridge_path_prefix: "/heisenbridge"
  8. # renovate: datasource=docker depName=hif1/heisenbridge
  9. matrix_heisenbridge_version: 1.15.0
  10. matrix_heisenbridge_docker_image: "{{ matrix_heisenbridge_docker_image_registry_prefix }}hif1/heisenbridge:{{ matrix_heisenbridge_version }}"
  11. matrix_heisenbridge_docker_image_registry_prefix: "{{ matrix_heisenbridge_docker_image_registry_prefix_upstream }}"
  12. matrix_heisenbridge_docker_image_registry_prefix_upstream: "{{ matrix_heisenbridge_docker_image_registry_prefix_upstream_default }}"
  13. matrix_heisenbridge_docker_image_registry_prefix_upstream_default: "docker.io/"
  14. matrix_heisenbridge_docker_image_force_pull: "{{ matrix_heisenbridge_docker_image.endswith(':latest') }}"
  15. # Set this to your Matrix ID if you want to enforce the owner, otherwise first _local_ user becomes one
  16. matrix_heisenbridge_owner: ""
  17. # Enabling identd will bind to host port 113/TCP
  18. matrix_heisenbridge_identd_enabled: false
  19. matrix_heisenbridge_base_path: "{{ matrix_base_data_path }}/heisenbridge"
  20. matrix_heisenbridge_container_network: ""
  21. matrix_heisenbridge_container_additional_networks: "{{ matrix_heisenbridge_container_additional_networks_auto + matrix_heisenbridge_container_additional_networks_custom }}"
  22. matrix_heisenbridge_container_additional_networks_auto: []
  23. matrix_heisenbridge_container_additional_networks_custom: []
  24. # Controls how long to wait for the container to stop gracefully before killing it.
  25. # We use a small value here, because this container does not seem to handle the SIGTERM signal.
  26. matrix_heisenbridge_container_stop_grace_time_seconds: 1
  27. # matrix_heisenbridge_container_labels_traefik_enabled controls whether labels to assist a Traefik reverse-proxy will be attached to the container.
  28. # See `../templates/labels.j2` for details.
  29. #
  30. # To inject your own other container labels, see `matrix_heisenbridge_container_labels_additional_labels`.
  31. matrix_heisenbridge_container_labels_traefik_enabled: true
  32. matrix_heisenbridge_container_labels_traefik_docker_network: "{{ matrix_heisenbridge_container_network }}"
  33. matrix_heisenbridge_container_labels_traefik_hostname: "{{ matrix_heisenbridge_hostname }}"
  34. matrix_heisenbridge_container_labels_traefik_path_prefix: "{{ matrix_heisenbridge_path_prefix }}"
  35. matrix_heisenbridge_container_labels_traefik_entrypoints: web-secure
  36. matrix_heisenbridge_container_labels_traefik_tls_certResolver: default # noqa var-naming
  37. # Controls if the media router is enabled
  38. matrix_heisenbridge_container_labels_traefik_media_enabled: true
  39. matrix_heisenbridge_container_labels_traefik_media_hostname: "{{ matrix_heisenbridge_container_labels_traefik_hostname }}"
  40. # The path prefix must either be `/` or not end with a slash (e.g. `/heisenbridge`).
  41. matrix_heisenbridge_container_labels_traefik_media_path_prefix: "{{ '' if matrix_heisenbridge_container_labels_traefik_path_prefix == '/' else (matrix_heisenbridge_container_labels_traefik_path_prefix) }}/_heisenbridge/media"
  42. matrix_heisenbridge_container_labels_traefik_media_rule: "Host(`{{ matrix_heisenbridge_container_labels_traefik_media_hostname }}`){% if matrix_heisenbridge_container_labels_traefik_media_path_prefix != '/' %} && PathPrefix(`{{ matrix_heisenbridge_container_labels_traefik_media_path_prefix }}`){% endif %}"
  43. matrix_heisenbridge_container_labels_traefik_media_priority: 0
  44. matrix_heisenbridge_container_labels_traefik_media_entrypoints: "{{ matrix_heisenbridge_container_labels_traefik_entrypoints }}"
  45. matrix_heisenbridge_container_labels_traefik_media_tls: "{{ matrix_heisenbridge_container_labels_traefik_media_entrypoints != 'web' }}"
  46. matrix_heisenbridge_container_labels_traefik_media_tls_certResolver: "{{ matrix_heisenbridge_container_labels_traefik_tls_certResolver }}" # noqa var-naming
  47. # matrix_heisenbridge_container_labels_additional_labels contains a multiline string with additional labels to add to the container label file.
  48. # See `../templates/labels.j2` for details.
  49. #
  50. # Example:
  51. # matrix_heisenbridge_container_labels_additional_labels: |
  52. # my.label=1
  53. # another.label="here"
  54. matrix_heisenbridge_container_labels_additional_labels: ''
  55. # A list of extra arguments to pass to the container
  56. matrix_heisenbridge_container_extra_arguments: []
  57. # List of systemd services that service depends on.
  58. matrix_heisenbridge_systemd_required_services_list: "{{ matrix_heisenbridge_systemd_required_services_list_default + matrix_heisenbridge_systemd_required_services_list_auto + matrix_heisenbridge_systemd_required_services_list_custom }}"
  59. matrix_heisenbridge_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
  60. matrix_heisenbridge_systemd_required_services_list_auto: []
  61. matrix_heisenbridge_systemd_required_services_list_custom: []
  62. # List of systemd services that service wants
  63. matrix_heisenbridge_systemd_wanted_services_list: []
  64. matrix_heisenbridge_homeserver_url: ""
  65. matrix_heisenbridge_appservice_token: ''
  66. matrix_heisenbridge_homeserver_token: ''
  67. matrix_heisenbridge_config_media_url: "{{ matrix_heisenbridge_scheme }}://{{ matrix_heisenbridge_hostname }}"
  68. # This matches the hardcoded `DEFAULT_MEDIA_PATH` in Heisenbridge, but uses `matrix_heisenbridge_path_prefix` as the path prefix.
  69. # See: https://github.com/hifi/heisenbridge/blob/7e18a5818f4a8c86cc62e474eee1631d16cb2602/heisenbridge/__main__.py#L66
  70. matrix_heisenbridge_config_media_path: "{{ matrix_heisenbridge_container_labels_traefik_media_path_prefix }}/{server}/{media_id}/{checksum}{filename}"
  71. matrix_heisenbridge_config_media_key: "{{ matrix_heisenbridge_homeserver_token }}"
  72. matrix_heisenbridge_config_displayname: "Heisenbridge"
  73. matrix_heisenbridge_registration_yaml_heisenbridge:
  74. media_url: "{{ matrix_heisenbridge_config_media_url }}"
  75. media_path: "{{ matrix_heisenbridge_config_media_path }}"
  76. media_key: "{{ matrix_heisenbridge_config_media_key }}"
  77. displayname: "{{ matrix_heisenbridge_config_displayname }}"
  78. # Default registration file consumed by both the homeserver and Heisenbridge.
  79. # Besides registration information, it contains configuration (see the Heisenbridge key).
  80. matrix_heisenbridge_registration_yaml:
  81. id: heisenbridge
  82. url: http://matrix-heisenbridge:9898
  83. as_token: "{{ matrix_heisenbridge_appservice_token }}"
  84. hs_token: "{{ matrix_heisenbridge_homeserver_token }}"
  85. rate_limited: false
  86. sender_localpart: heisenbridge
  87. namespaces:
  88. users:
  89. - regex: '@hbirc_.*'
  90. exclusive: true
  91. aliases: []
  92. rooms: []
  93. heisenbridge: "{{ matrix_heisenbridge_registration_yaml_heisenbridge }}"
  94. matrix_heisenbridge_registration: "{{ matrix_heisenbridge_registration_yaml | from_yaml }}"