Matrix Docker Ansible eploy
No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.
 
 
 

94 líneas
3.6 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: postmoogle-${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. matrix_bridge_postmoogle_container_network: postmoogle-molecule
  30. # The shared stub prepare.yml stands up. It accepts the password login and returns
  31. # the full MXID corresponding to this deliberately non-default localpart.
  32. matrix_bridge_postmoogle_homeserver: http://matrix.molecule.local:8008
  33. matrix_bridge_postmoogle_login: molecule-postmoogle
  34. matrix_bridge_postmoogle_password: molecule_matrix_password_d8a314
  35. # Postgres is what group_vars/matrix_servers selects whenever the playbook-managed
  36. # Postgres is enabled. The name, user and password differ from the role's defaults,
  37. # so a migrated schema proves that the role composed and the process used this DSN.
  38. matrix_bridge_postmoogle_database_engine: postgres
  39. matrix_bridge_postmoogle_database_hostname: matrix-postgres-molecule
  40. matrix_bridge_postmoogle_database_name: molecule_postmoogle
  41. matrix_bridge_postmoogle_database_username: molecule_postmoogle
  42. matrix_bridge_postmoogle_database_password: molecule_pg_password_7e9c42
  43. # These differ from the role's defaults and are asserted against the parsed env file.
  44. matrix_bridge_postmoogle_domains:
  45. - mail.molecule.local
  46. - inbound.molecule.local
  47. matrix_bridge_postmoogle_prefix: "!molecule-mail"
  48. matrix_bridge_postmoogle_maxsize: "73"
  49. matrix_bridge_postmoogle_loglevel: DEBUG
  50. matrix_bridge_postmoogle_admins:
  51. - "@molecule-admin:molecule.local"
  52. - "@mail-.*:molecule.local"
  53. # A valid 32-byte AES key, deliberately not empty like the role default.
  54. matrix_bridge_postmoogle_data_secret: 0123456789abcdef0123456789abcdef
  55. matrix_bridge_postmoogle_proxies:
  56. - 192.0.2.44
  57. matrix_bridge_postmoogle_mailboxes_forwarded:
  58. - forwarded
  59. matrix_bridge_postmoogle_mailboxes_reserved:
  60. - reserved
  61. # Port 25 is inappropriate for a test and can already be occupied. Both the
  62. # in-container port and the high host port are non-default, so an SMTP exchange on
  63. # the former plus Docker's accepted binding for the latter proves the wiring.
  64. matrix_bridge_postmoogle_port: "2626"
  65. matrix_bridge_postmoogle_smtp_host_bind_port: "25252"
  66. # verify.yml is a separate play, where the role's defaults are out of scope.
  67. matrix_bridge_postmoogle_base_path: /matrix/postmoogle
  68. matrix_bridge_postmoogle_config_path: /matrix/postmoogle/config
  69. matrix_bridge_postmoogle_data_path: /matrix/postmoogle/data
  70. env:
  71. # Workaround for https://github.com/ansible/molecule/issues/4391
  72. ANSIBLE_ROLES_PATH: ${MOLECULE_PROJECT_DIRECTORY}/../..:/.ansible/roles:/usr/share/ansible/roles:/etc/ansible/roles:${ANSIBLE_HOME:-~/.ansible}/roles
  73. scenario:
  74. test_sequence:
  75. - dependency
  76. - cleanup
  77. - destroy
  78. - syntax
  79. - create
  80. - prepare
  81. - converge
  82. - idempotence
  83. - verify
  84. - cleanup
  85. - destroy
  86. verifier:
  87. name: ansible