Matrix Docker Ansible eploy
25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.
 
 
 

134 satır
5.8 KiB

  1. # SPDX-FileCopyrightText: 2026 Slavi Pantaleev
  2. #
  3. # SPDX-License-Identifier: AGPL-3.0-or-later
  4. ---
  5. dependency:
  6. name: galaxy
  7. options:
  8. requirements-file: requirements.yml
  9. force: true
  10. driver:
  11. name: docker
  12. platforms:
  13. - name: matrix-client-element-${MOLECULE_DISTRO:-ubuntu2604}-default
  14. image: "geerlingguy/docker-${MOLECULE_DISTRO:-ubuntu2604}-ansible:latest"
  15. command: ${MOLECULE_DOCKER_COMMAND:-""}
  16. volumes:
  17. - /sys/fs/cgroup:/sys/fs/cgroup:rw
  18. cgroupns_mode: host
  19. privileged: true
  20. pre_build_image: true
  21. provisioner:
  22. name: ansible
  23. config_options:
  24. defaults:
  25. callback_result_format: yaml
  26. inventory:
  27. group_vars:
  28. all:
  29. # verify.yml runs as its own play, where the role's defaults are out of scope,
  30. # so paths and runtime settings read there are pinned explicitly.
  31. matrix_client_element_data_path: /matrix/client-element
  32. matrix_client_element_container_network: matrix-client-element-molecule
  33. matrix_client_element_container_port: 18081
  34. matrix_client_element_container_http_host_bind_port: ''
  35. # Keep the scenario on the prebuilt image and avoid all optional downloads.
  36. matrix_client_element_container_image_self_build: false
  37. matrix_client_element_themes_enabled: false
  38. matrix_client_element_location_sharing_enabled: false
  39. # Exercise the labels with a non-root route, compression, plain HTTP and a
  40. # scenario marker. No Traefik instance is needed to inspect attached labels.
  41. matrix_client_element_hostname: element-web.molecule.local
  42. matrix_client_element_path_prefix: /molecule-element
  43. matrix_client_element_container_labels_traefik_enabled: true
  44. matrix_client_element_container_labels_traefik_entrypoints: web
  45. matrix_client_element_container_labels_traefik_compression_middleware_enabled: true
  46. matrix_client_element_container_labels_traefik_compression_middleware_name: molecule-compress@file
  47. matrix_client_element_container_labels_traefik_priority: 73
  48. matrix_client_element_container_labels_traefik_additional_response_headers_custom:
  49. X-Molecule-Element: rendered
  50. matrix_client_element_container_labels_additional_labels: |
  51. molecule.scenario=matrix-client-element
  52. # These values differ from both role and Element defaults. Element Web is a
  53. # static client and does not contact any of these endpoints during startup.
  54. matrix_client_element_default_hs_url: https://homeserver.molecule.invalid
  55. matrix_client_element_default_server_name: alternate.molecule.local
  56. matrix_client_element_default_is_url: https://identity.molecule.invalid
  57. matrix_client_element_disable_custom_urls: false
  58. matrix_client_element_disable_guests: false
  59. matrix_client_element_mobile_guide_app_variant: molecule-element
  60. matrix_client_element_default_theme: dark
  61. matrix_client_element_default_country_code: DE
  62. matrix_client_element_permalink_prefix: https://links.molecule.invalid
  63. matrix_client_element_bug_report_endpoint_url: https://bugs.molecule.invalid/report
  64. matrix_client_element_room_directory_servers:
  65. - directory-one.molecule.local
  66. - directory-two.molecule.local
  67. matrix_client_element_brand: Molecule Element
  68. matrix_client_element_branding_auth_footer_links:
  69. - text: Molecule help
  70. url: https://help.molecule.invalid
  71. matrix_client_element_branding_auth_header_logo_url: https://assets.molecule.invalid/logo.svg
  72. matrix_client_element_branding_welcome_background_url: https://assets.molecule.invalid/background.svg
  73. matrix_client_element_integrations_ui_url: https://integrations.molecule.invalid/ui
  74. matrix_client_element_integrations_rest_url: https://integrations.molecule.invalid/api
  75. matrix_client_element_integrations_widgets_urls:
  76. - https://integrations.molecule.invalid/widgets
  77. matrix_client_element_integrations_jitsi_widget_url: https://integrations.molecule.invalid/jitsi
  78. matrix_client_element_features_feature_group_calls: true
  79. matrix_client_element_features_feature_oidc_native_flow: true
  80. matrix_client_element_features_custom:
  81. feature_molecule_scenario: labs
  82. matrix_client_element_element_call_enabled: true
  83. matrix_client_element_element_call_url: https://call.molecule.invalid
  84. matrix_client_element_element_call_participant_limit: 23
  85. matrix_client_element_element_call_brand: Molecule Call
  86. matrix_client_element_element_call_use_exclusively: false
  87. # This custom theme is data embedded in config.json; themes_enabled remains false,
  88. # so the role does not clone the external theme repository.
  89. matrix_client_element_setting_defaults_custom_themes:
  90. - name: Molecule Midnight
  91. is_dark: true
  92. colors:
  93. accent-color: '#123456'
  94. matrix_client_element_configuration_extension_json: |
  95. {
  96. "disable_3pid_login": true,
  97. "disable_login_language_selector": true,
  98. "molecule_extension": {
  99. "enabled": true,
  100. "marker": "element-config-extension",
  101. "sequence": 42
  102. }
  103. }
  104. matrix_client_element_environment_variables_extension: |
  105. MOLECULE_ELEMENT_MARKER=environment-reached
  106. env:
  107. # Workaround for https://github.com/ansible/molecule/issues/4391
  108. ANSIBLE_ROLES_PATH: ${MOLECULE_PROJECT_DIRECTORY}/../..:/.ansible/roles:/usr/share/ansible/roles:/etc/ansible/roles:${ANSIBLE_HOME:-~/.ansible}/roles
  109. scenario:
  110. test_sequence:
  111. - dependency
  112. - cleanup
  113. - destroy
  114. - syntax
  115. - create
  116. - prepare
  117. - converge
  118. - idempotence
  119. - verify
  120. - cleanup
  121. - destroy
  122. verifier:
  123. name: ansible