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.
 
 
 

159 lines
11 KiB

  1. # SPDX-FileCopyrightText: 2022 MDAD project contributors
  2. # SPDX-FileCopyrightText: 2024 wjbeckett
  3. # SPDX-FileCopyrightText: 2024 - 2026 Slavi Pantaleev
  4. #
  5. # SPDX-License-Identifier: AGPL-3.0-or-later
  6. ---
  7. # Project source code URL: https://github.com/element-hq/lk-jwt-service
  8. matrix_livekit_jwt_service_enabled: false
  9. matrix_livekit_jwt_service_scheme: https
  10. matrix_livekit_jwt_service_hostname: ""
  11. matrix_livekit_jwt_service_path_prefix: "/livekit-jwt-service"
  12. matrix_livekit_jwt_service_base_path: "{{ matrix_base_data_path }}/livekit-jwt-service"
  13. matrix_livekit_jwt_service_container_network: ''
  14. matrix_livekit_jwt_service_container_http_host_bind_port: ''
  15. matrix_livekit_jwt_service_container_additional_networks: "{{ (matrix_livekit_jwt_service_container_additional_networks_auto + matrix_livekit_jwt_service_container_additional_networks_custom) | unique }}"
  16. matrix_livekit_jwt_service_container_additional_networks_auto: []
  17. matrix_livekit_jwt_service_container_additional_networks_custom: []
  18. # renovate: datasource=docker depName=ghcr.io/element-hq/lk-jwt-service
  19. matrix_livekit_jwt_service_version: 0.7.0
  20. matrix_livekit_jwt_service_container_image_self_build: false
  21. matrix_livekit_jwt_service_container_repo: "https://github.com/element-hq/lk-jwt-service.git"
  22. matrix_livekit_jwt_service_container_repo_version: "{{ 'main' if matrix_livekit_jwt_service_version == 'latest' else ('v' + matrix_livekit_jwt_service_version) }}"
  23. matrix_livekit_jwt_service_container_src_files_path: "{{ matrix_livekit_jwt_service_base_path }}/container-src"
  24. matrix_livekit_jwt_service_container_image: "{{ matrix_livekit_jwt_service_container_image_registry_prefix }}element-hq/lk-jwt-service:{{ matrix_livekit_jwt_service_container_image_tag }}"
  25. matrix_livekit_jwt_service_container_image_registry_prefix: "{{ 'localhost/' if matrix_livekit_jwt_service_container_image_self_build else matrix_livekit_jwt_service_container_image_registry_prefix_upstream }}"
  26. matrix_livekit_jwt_service_container_image_registry_prefix_upstream: "{{ matrix_livekit_jwt_service_container_image_registry_prefix_upstream_default }}"
  27. matrix_livekit_jwt_service_container_image_registry_prefix_upstream_default: ghcr.io/
  28. matrix_livekit_jwt_service_container_image_tag: "{{ matrix_livekit_jwt_service_version }}"
  29. matrix_livekit_jwt_service_container_labels_traefik_enabled: true
  30. matrix_livekit_jwt_service_container_labels_traefik_docker_network: "{{ matrix_livekit_jwt_service_container_network }}"
  31. matrix_livekit_jwt_service_container_labels_traefik_hostname: "{{ matrix_livekit_jwt_service_hostname }}"
  32. # The path prefix must either be `/` or not end with a slash (e.g. `/livekit-jwt-service`).
  33. matrix_livekit_jwt_service_container_labels_traefik_path_prefix: "{{ matrix_livekit_jwt_service_path_prefix }}"
  34. matrix_livekit_jwt_service_container_labels_traefik_rule: "Host(`{{ matrix_livekit_jwt_service_container_labels_traefik_hostname }}`){% if matrix_livekit_jwt_service_container_labels_traefik_path_prefix != '/' %} && PathPrefix(`{{ matrix_livekit_jwt_service_container_labels_traefik_path_prefix }}`){% endif %}"
  35. matrix_livekit_jwt_service_container_labels_traefik_priority: 0
  36. matrix_livekit_jwt_service_container_labels_traefik_entrypoints: web-secure
  37. matrix_livekit_jwt_service_container_labels_traefik_tls: "{{ matrix_livekit_jwt_service_container_labels_traefik_entrypoints != 'web' }}"
  38. matrix_livekit_jwt_service_container_labels_traefik_tls_certResolver: default # noqa var-naming
  39. # Controls which additional headers to attach to all HTTP responses.
  40. # To add your own headers, use `matrix_livekit_jwt_service_container_labels_traefik_additional_response_headers_custom`
  41. matrix_livekit_jwt_service_container_labels_traefik_additional_response_headers: "{{ matrix_livekit_jwt_service_container_labels_traefik_additional_response_headers_auto | combine(matrix_livekit_jwt_service_container_labels_traefik_additional_response_headers_custom) }}"
  42. matrix_livekit_jwt_service_container_labels_traefik_additional_response_headers_auto: {}
  43. matrix_livekit_jwt_service_container_labels_traefik_additional_response_headers_custom: {}
  44. # matrix_livekit_jwt_service_container_labels_additional_labels contains a multiline string with additional labels to add to the container label file.
  45. # See `../templates/labels.j2` for details.
  46. #
  47. # Example:
  48. # matrix_livekit_jwt_service_container_labels_additional_labels: |
  49. # my.label=1
  50. # another.label="here"
  51. matrix_livekit_jwt_service_container_labels_additional_labels: ''
  52. # A list of extra arguments to pass to the container
  53. matrix_livekit_jwt_service_container_extra_arguments: []
  54. # Controls whether the container's built-in healthcheck is left enabled.
  55. #
  56. # The bind-address handling was fixed in v0.7.0. If you pin v0.6.0, disable
  57. # its broken healthcheck so Traefik does not exclude the container.
  58. # See: https://github.com/element-hq/lk-jwt-service/pull/215
  59. matrix_livekit_jwt_service_container_healthcheck_enabled: true
  60. # Controls the port that the service listens on internally in the container.
  61. # This is still used for Traefik configuration and container port binding.
  62. matrix_livekit_jwt_service_container_port: 8080
  63. # Controls the LIVEKIT_JWT_BIND environment variable.
  64. # This is the preferred method in v0.4.0+, replacing the deprecated LIVEKIT_JWT_PORT.
  65. # Format: "host:port" or ":port" (to bind to all interfaces).
  66. # The default ":8080" binds to all interfaces on port 8080.
  67. matrix_livekit_jwt_service_environment_variable_livekit_jwt_bind: ":{{ matrix_livekit_jwt_service_container_port }}"
  68. # Controls the LIVEKIT_KEY environment variable
  69. matrix_livekit_jwt_service_environment_variable_livekit_key: ""
  70. # Controls the LIVEKIT_URL environment variable
  71. matrix_livekit_jwt_service_environment_variable_livekit_url: ""
  72. # Controls the LIVEKIT_SECRET environment variable
  73. matrix_livekit_jwt_service_environment_variable_livekit_secret: ""
  74. # Controls the LIVEKIT_FULL_ACCESS_HOMESERVERS environment variable.
  75. # Comma-separated list of Matrix homeservers whose users may publish media and
  76. # trigger room creation on this SFU. Other homeservers' users can only subscribe
  77. # to media here; they publish on their own SFU using a client with multi-SFU support.
  78. #
  79. # This is a required setting and the service refuses to start without it.
  80. # Setting it to `*` grants full access to any federated Matrix user, but listing only the homeserver(s)
  81. # you intend to serve is strongly recommended.
  82. #
  83. # To add additional homeservers, use `matrix_livekit_jwt_service_environment_variable_livekit_full_access_homeservers_list_custom`.
  84. matrix_livekit_jwt_service_environment_variable_livekit_full_access_homeservers: "{{ matrix_livekit_jwt_service_environment_variable_livekit_full_access_homeservers_list | join(',') }}"
  85. matrix_livekit_jwt_service_environment_variable_livekit_full_access_homeservers_list: "{{ matrix_livekit_jwt_service_environment_variable_livekit_full_access_homeservers_list_default + matrix_livekit_jwt_service_environment_variable_livekit_full_access_homeservers_list_auto + matrix_livekit_jwt_service_environment_variable_livekit_full_access_homeservers_list_custom }}"
  86. matrix_livekit_jwt_service_environment_variable_livekit_full_access_homeservers_list_default: ["{{ matrix_domain }}"]
  87. matrix_livekit_jwt_service_environment_variable_livekit_full_access_homeservers_list_auto: []
  88. matrix_livekit_jwt_service_environment_variable_livekit_full_access_homeservers_list_custom: []
  89. # Controls the LIVEKIT_CS_API_URL_OVERRIDES environment variable.
  90. #
  91. # To learn where a user's homeserver serves its Client-Server API, the service performs `.well-known` discovery.
  92. # That is, it requests `https://<server-name>/.well-known/matrix/client` over the network and reads `m.homeserver.base_url` out of it.
  93. # Entries listed here are consulted first, so that the server names they cover are resolved without discovery.
  94. #
  95. # Keys are Matrix server names and values are Client-Server API base URLs (including the scheme).
  96. # A playbook may inject an entry for the homeserver it manages, pointing the service at it directly.
  97. #
  98. # To add your own entries, use `matrix_livekit_jwt_service_environment_variable_livekit_cs_api_url_overrides_map_custom`.
  99. matrix_livekit_jwt_service_environment_variable_livekit_cs_api_url_overrides: "{{ matrix_livekit_jwt_service_environment_variable_livekit_cs_api_url_overrides_map.items() | map('join', '=') | join(',') }}"
  100. matrix_livekit_jwt_service_environment_variable_livekit_cs_api_url_overrides_map: "{{ matrix_livekit_jwt_service_environment_variable_livekit_cs_api_url_overrides_map_auto | combine(matrix_livekit_jwt_service_environment_variable_livekit_cs_api_url_overrides_map_custom) }}"
  101. matrix_livekit_jwt_service_environment_variable_livekit_cs_api_url_overrides_map_auto: {}
  102. matrix_livekit_jwt_service_environment_variable_livekit_cs_api_url_overrides_map_custom: {}
  103. # Additional environment variables to pass to the container.
  104. #
  105. # Environment variables take priority over settings in the configuration file.
  106. #
  107. # Example:
  108. # matrix_livekit_jwt_service_environment_variables_extension: |
  109. # KEY=value
  110. matrix_livekit_jwt_service_environment_variables_extension: ''
  111. # List of systemd services that LiveKit JWT Service service depends on
  112. matrix_livekit_jwt_service_systemd_required_services_list: "{{ matrix_livekit_jwt_service_systemd_required_services_list_default + matrix_livekit_jwt_service_systemd_required_services_list_auto + matrix_livekit_jwt_service_systemd_required_services_list_custom }}"
  113. matrix_livekit_jwt_service_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
  114. matrix_livekit_jwt_service_systemd_required_services_list_auto: []
  115. matrix_livekit_jwt_service_systemd_required_services_list_custom: []
  116. # matrix_livekit_jwt_service_restart_necessary controls whether the service
  117. # will be restarted (when true) or merely started (when false) by the
  118. # systemd service manager role (when conditional restart is enabled).
  119. #
  120. # This value is automatically computed during installation based on whether
  121. # any configuration files, the systemd service file, or the container image changed.
  122. # The default of `false` means "no restart needed" — appropriate when the role's
  123. # installation tasks haven't run (e.g., due to --tags skipping them).
  124. matrix_livekit_jwt_service_restart_necessary: false
  125. # A list of additional "volumes" to mount in the container.
  126. # Contains definition objects like this: `{"type": "bind", "src": "/outside", "dst": "/inside", "options": "readonly"}.
  127. # See the `--mount` documentation for the `docker run` command.
  128. # Note: internally, this uses the `--mount` flag for mounting the specified volumes.
  129. matrix_livekit_jwt_service_container_additional_volumes: "{{ matrix_livekit_jwt_service_container_additional_volumes_auto + matrix_livekit_jwt_service_container_additional_volumes_custom }}"
  130. matrix_livekit_jwt_service_container_additional_volumes_auto: []
  131. matrix_livekit_jwt_service_container_additional_volumes_custom: []