Matrix Docker Ansible eploy
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

62 строки
2.6 KiB

  1. ---
  2. - name: Determine current worker configs
  3. ansible.builtin.find:
  4. path: "{{ matrix_synapse_config_dir_path }}"
  5. patterns: "worker.*.yaml"
  6. use_regex: true
  7. register: matrix_synapse_workers_current_config_files
  8. - ansible.builtin.set_fact:
  9. matrix_synapse_enabled_worker_names: "{{ matrix_synapse_workers_enabled_list | map(attribute='name') }}"
  10. # This also deletes some things which we need. They will be recreated below.
  11. - name: Ensure unnecessary worker configs are cleaned
  12. ansible.builtin.file:
  13. path: "{{ item.path }}"
  14. state: absent
  15. with_items: "{{ matrix_synapse_workers_current_config_files.files }}"
  16. when: "not ansible_check_mode and (item.path | basename | replace ('worker.', '') | replace('.yaml', '')) not in matrix_synapse_enabled_worker_names"
  17. - name: Determine current worker systemd services
  18. ansible.builtin.find:
  19. path: "{{ devture_systemd_docker_base_systemd_path }}"
  20. patterns: "matrix-synapse-worker.*.service"
  21. use_regex: true
  22. register: matrix_synapse_workers_current_systemd_services
  23. - name: Ensure unnecessary worker systemd services are stopped and disabled
  24. ansible.builtin.service:
  25. name: "{{ item.path | basename }}"
  26. state: stopped
  27. enabled: false
  28. with_items: "{{ matrix_synapse_workers_current_systemd_services.files }}"
  29. when: "not ansible_check_mode and (item.path | basename | replace('.service', '')) not in matrix_synapse_enabled_worker_names"
  30. - name: Ensure unnecessary worker systemd services are cleaned
  31. ansible.builtin.file:
  32. path: "{{ item.path }}"
  33. state: absent
  34. with_items: "{{ matrix_synapse_workers_current_systemd_services.files }}"
  35. when: "not ansible_check_mode and (item.path | basename | replace('.service', '')) not in matrix_synapse_enabled_worker_names"
  36. - name: Determine current worker label files
  37. ansible.builtin.find:
  38. path: "{{ matrix_synapse_base_path }}"
  39. patterns: "worker.*.labels"
  40. use_regex: true
  41. register: matrix_synapse_workers_current_label_files
  42. - name: Ensure unnecessary worker labels are cleaned
  43. ansible.builtin.file:
  44. path: "{{ item.path }}"
  45. state: absent
  46. with_items: "{{ matrix_synapse_workers_current_label_files.files }}"
  47. when: "not ansible_check_mode and (item.path | basename | replace ('worker.', '') | replace('.labels', '')) not in matrix_synapse_enabled_worker_names"
  48. - name: Ensure creation of worker systemd service files and configuration files
  49. ansible.builtin.include_tasks: "{{ role_path }}/tasks/synapse/workers/util/setup_files_for_worker.yml"
  50. with_items: "{{ matrix_synapse_workers_enabled_list }}"
  51. loop_control:
  52. loop_var: matrix_synapse_worker_details