Matrix Docker Ansible eploy
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 

183 linhas
10 KiB

  1. # SPDX-FileCopyrightText: 2022 - 2025 Slavi Pantaleev
  2. # SPDX-FileCopyrightText: 2022 Julian-Samuel Gebühr
  3. # SPDX-FileCopyrightText: 2022 Stuart Mumford
  4. # SPDX-FileCopyrightText: 2023 Nikita Chernyi
  5. # SPDX-FileCopyrightText: 2023 Samuel Meenzen
  6. # SPDX-FileCopyrightText: 2023 Shreyas Ajjarapu
  7. # SPDX-FileCopyrightText: 2024 Fabio Bonelli
  8. #
  9. # SPDX-License-Identifier: AGPL-3.0-or-later
  10. ---
  11. # maubot is a plugin-based Matrix bot system.
  12. # Project source code URL: https://mau.dev/maubot/maubot
  13. matrix_bot_maubot_enabled: true
  14. matrix_bot_maubot_login: bot.maubot
  15. # This is just initial password and it will not manage subsequent password changes.
  16. # Use a tool like synapse-admin if you need to change it.
  17. matrix_bot_maubot_initial_password: ''
  18. matrix_bot_maubot_scheme: https
  19. matrix_bot_maubot_hostname: ''
  20. matrix_bot_maubot_path_prefix: /_matrix/maubot
  21. matrix_bot_maubot_container_image_self_build: false
  22. matrix_bot_maubot_docker_repo: "https://mau.dev/maubot/maubot.git"
  23. matrix_bot_maubot_docker_repo_version: "{{ 'master' if matrix_bot_maubot_version == 'latest' else matrix_bot_maubot_version }}"
  24. # renovate: datasource=docker depName=dock.mau.dev/maubot/maubot
  25. matrix_bot_maubot_version: v0.5.1
  26. matrix_bot_maubot_docker_image: "{{ matrix_bot_maubot_docker_image_registry_prefix }}maubot/maubot:{{ matrix_bot_maubot_version }}"
  27. matrix_bot_maubot_docker_image_registry_prefix: "{{ 'localhost/' if matrix_bot_maubot_container_image_self_build else matrix_bot_maubot_docker_image_registry_prefix_upstream }}"
  28. matrix_bot_maubot_docker_image_registry_prefix_upstream: "{{ matrix_bot_maubot_docker_image_registry_prefix_upstream_default }}"
  29. matrix_bot_maubot_docker_image_registry_prefix_upstream_default: "dock.mau.dev/"
  30. matrix_bot_maubot_docker_image_force_pull: "{{ matrix_bot_maubot_docker_image.endswith(':latest') }}"
  31. # matrix_bot_maubot_docker_image_customized is the name of the locally built maubot image
  32. # which adds various customizations on top of the original (upstream) maubot image.
  33. # This image will be based on the upstream `matrix_bot_maubot_docker_image` image, only if `matrix_bot_maubot_container_image_customizations_enabled: true`.
  34. matrix_bot_maubot_docker_image_customized: "localhost/maubot/maubot:{{ matrix_bot_maubot_version }}-customized"
  35. # Controls whether the customized image (`matrix_bot_maubot_docker_image_customized`) is to be force-built without layer caching enabled.
  36. matrix_bot_maubot_docker_image_customized_build_nocache: false
  37. # Controls whether the customized image (`matrix_bot_maubot_docker_image_customized`) is to be built, even if it already exists.
  38. # Related to: matrix_bot_maubot_docker_image_customized_build_nocache
  39. matrix_bot_maubot_docker_image_customized_force_source: "{{ matrix_bot_maubot_docker_image_customized_build_nocache }}"
  40. # matrix_bot_maubot_docker_image_final holds the name of the maubot image to run depending on whether or not customizations are enabled.
  41. matrix_bot_maubot_docker_image_final: "{{ matrix_bot_maubot_docker_image_customized if matrix_bot_maubot_container_image_customizations_enabled else matrix_bot_maubot_docker_image }} "
  42. matrix_bot_maubot_base_path: "{{ matrix_base_data_path }}/maubot"
  43. matrix_bot_maubot_data_path: "{{ matrix_bot_maubot_base_path }}/data"
  44. matrix_bot_maubot_config_path: "{{ matrix_bot_maubot_base_path }}/config"
  45. matrix_bot_maubot_docker_src_files_path: "{{ matrix_bot_maubot_base_path }}/docker-src"
  46. matrix_bot_maubot_customized_docker_src_files_path: "{{ matrix_bot_maubot_base_path }}/customized-docker-src"
  47. matrix_bot_maubot_bot_server_public_url: "{{ matrix_bot_maubot_scheme }}://{{ matrix_bot_maubot_hostname }}"
  48. matrix_bot_maubot_bot_server_base_path: "{{ matrix_bot_maubot_path_prefix }}/v1"
  49. matrix_bot_maubot_bot_server_ui_base_path: "{{ matrix_bot_maubot_path_prefix }}"
  50. matrix_bot_maubot_bot_server_plugin_base_path: "{{ matrix_bot_maubot_path_prefix }}/plugin/"
  51. matrix_bot_maubot_bot_server_appservice_base_path: "{{ matrix_bot_maubot_bot_server_base_path }}"
  52. matrix_bot_maubot_proxy_management_interface: true
  53. matrix_bot_maubot_database_engine: sqlite
  54. matrix_bot_maubot_sqlite_database_path_local: "{{ matrix_bot_maubot_data_path }}/maubot.db"
  55. matrix_bot_maubot_sqlite_database_path_in_container: "/data/maubot.db"
  56. matrix_bot_maubot_database_username: matrix_bot_maubot
  57. matrix_bot_maubot_database_password: ~
  58. matrix_bot_maubot_database_hostname: ''
  59. matrix_bot_maubot_database_port: 5432
  60. matrix_bot_maubot_database_name: matrix_bot_maubot
  61. matrix_bot_maubot_database_sslmode: disable
  62. matrix_bot_maubot_database_connection_string: postgres://{{ matrix_bot_maubot_database_username }}:{{ matrix_bot_maubot_database_password }}@{{ matrix_bot_maubot_database_hostname }}:{{ matrix_bot_maubot_database_port }}/{{ matrix_bot_maubot_database_name }}?sslmode={{ matrix_bot_maubot_database_sslmode }}
  63. matrix_bot_maubot_database_uri: "{{
  64. {
  65. 'sqlite': ('sqlite:///' + matrix_bot_maubot_sqlite_database_path_in_container),
  66. 'postgres': matrix_bot_maubot_database_connection_string,
  67. }[matrix_bot_maubot_database_engine]
  68. }}"
  69. # Defines the port number where the management interface is
  70. # To actually expose the management interface outside of the container, use `matrix_bot_maubot_container_management_interface_http_bind_port`
  71. matrix_bot_maubot_server_port: 29316
  72. matrix_bot_maubot_unshared_secret: 'generate'
  73. matrix_bot_maubot_homeserver_name: "{{ matrix_domain }}"
  74. matrix_bot_maubot_homeserver_url: ""
  75. matrix_bot_maubot_homeserver_secret: ""
  76. matrix_bot_maubot_admins: []
  77. # Specifies the default log level for all bot loggers.
  78. matrix_bot_maubot_logging_level: WARNING
  79. # Controls whether the maubot container exposes its HTTP management interface port (tcp/29316 in the container).
  80. #
  81. # Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:29316"), or empty string to not expose.
  82. # If you'll be setting this at all, it should be defined in terms of `matrix_bot_maubot_server_port`.
  83. # Example:
  84. # matrix_bot_maubot_container_management_interface_http_bind_port: "127.0.0.1:{{ matrix_bot_maubot_server_port }}"
  85. matrix_bot_maubot_container_management_interface_http_bind_port: ''
  86. matrix_bot_maubot_container_network: ""
  87. matrix_bot_maubot_container_additional_networks: "{{ matrix_bot_maubot_container_additional_networks_auto + matrix_bot_maubot_container_additional_networks_custom }}"
  88. matrix_bot_maubot_container_additional_networks_auto: []
  89. matrix_bot_maubot_container_additional_networks_custom: []
  90. # matrix_bot_maubot_container_image_customizations_enabled controls whether a customized maubot image will be built.
  91. #
  92. # We toggle this variable to `true` when certain features which require a custom build are enabled.
  93. # Feel free to toggle this to `true` yourself and specify build steps in `matrix_bot_maubot_container_image_customizations_dockerfile_body_custom`.
  94. #
  95. # See:
  96. # - `roles/custom/matrix-bot-maubot/templates/maubot/customizations/Dockerfile.j2`
  97. # - `matrix_bot_maubot_container_image_customizations_dockerfile_body_custom`
  98. # - `matrix_bot_maubot_docker_image_customized`
  99. # - `matrix_bot_maubot_docker_image_final`
  100. matrix_bot_maubot_container_image_customizations_enabled: false
  101. # matrix_bot_maubot_container_image_customizations_dockerfile_body contains your custom Dockerfile steps
  102. # for building your customized maubot image based on the original (upstream) image (`matrix_bot_maubot_docker_image`).
  103. # A `FROM …` clause is included automatically so you don't have to.
  104. #
  105. # For this to take effect, you need to enable customizations (`matrix_bot_maubot_container_image_customizations_enabled: true`).
  106. #
  107. # Example:
  108. # matrix_bot_maubot_container_image_customizations_dockerfile_body_custom: |
  109. # RUN echo 'This is a custom step for building the customized container image for maubot.'
  110. # RUN echo 'You can override matrix_bot_maubot_container_image_customizations_dockerfile_body_custom to add your own steps.'
  111. # RUN echo 'You do NOT need to include a FROM clause yourself.'
  112. matrix_bot_maubot_container_image_customizations_dockerfile_body_custom: ''
  113. # matrix_bot_maubot_container_labels_traefik_enabled controls whether labels to assist a Traefik reverse-proxy will be attached to the container.
  114. # See `../templates/labels.j2` for details.
  115. #
  116. # To inject your own other container labels, see `matrix_bot_maubot_container_labels_additional_labels`.
  117. matrix_bot_maubot_container_labels_traefik_enabled: true
  118. matrix_bot_maubot_container_labels_traefik_docker_network: "{{ matrix_bot_maubot_container_network }}"
  119. matrix_bot_maubot_container_labels_traefik_entrypoints: web-secure
  120. matrix_bot_maubot_container_labels_traefik_tls_certResolver: default # noqa var-naming
  121. # Controls whether labels will be added that expose maubot's management endpoints
  122. matrix_bot_maubot_container_labels_management_enabled: true
  123. matrix_bot_maubot_container_labels_management_hostname: "{{ matrix_bot_maubot_hostname }}"
  124. matrix_bot_maubot_container_labels_management_prefix: "{{ matrix_bot_maubot_path_prefix }}"
  125. matrix_bot_maubot_container_labels_management_traefik_rule: "Host(`{{ matrix_bot_maubot_container_labels_management_hostname }}`) && PathPrefix(`{{ matrix_bot_maubot_path_prefix }}`)"
  126. matrix_bot_maubot_container_labels_management_traefik_priority: 0
  127. matrix_bot_maubot_container_labels_management_traefik_entrypoints: "{{ matrix_bot_maubot_container_labels_traefik_entrypoints }}"
  128. matrix_bot_maubot_container_labels_management_traefik_tls: "{{ matrix_bot_maubot_container_labels_management_traefik_entrypoints != 'web' }}"
  129. matrix_bot_maubot_container_labels_management_traefik_tls_certResolver: "{{ matrix_bot_maubot_container_labels_traefik_tls_certResolver }}" # noqa var-naming
  130. # matrix_bot_maubot_container_labels_additional_labels contains a multiline string with additional labels to add to the container label file.
  131. # See `../templates/labels.j2` for details.
  132. #
  133. # Example:
  134. # matrix_bot_maubot_container_labels_additional_labels: |
  135. # my.label=1
  136. # another.label="here"
  137. matrix_bot_maubot_container_labels_additional_labels: ''
  138. # A list of extra arguments to pass to the container
  139. matrix_bot_maubot_container_extra_arguments: []
  140. # List of systemd services that matrix-bot-maubot.service depends on
  141. matrix_bot_maubot_systemd_required_services_list: "{{ matrix_bot_maubot_systemd_required_services_list_default + matrix_bot_maubot_systemd_required_services_list_auto + matrix_bot_maubot_systemd_required_services_list_custom }}"
  142. matrix_bot_maubot_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
  143. matrix_bot_maubot_systemd_required_services_list_auto: []
  144. matrix_bot_maubot_systemd_required_services_list_custom: []
  145. # List of systemd services that matrix-bot-maubot.service wants
  146. matrix_bot_maubot_systemd_wanted_services_list: []