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.
 
 

84 rivejä
3.0 KiB

  1. # SPDX-FileCopyrightText: 2025 Slavi Pantaleev
  2. #
  3. # SPDX-License-Identifier: AGPL-3.0-or-later
  4. ---
  5. # This migrates the conduwuit server implementation (`/matrix/conduwuit`) to continuwuity (`/matrix/continuwuity`),
  6. #
  7. # Here, we merely backup the fresh continuwuity folder, relocate conduwuit directory to continuwuity (`/matrix/conduwuit`)
  8. #
  9. # and restore continuwuity labels.
  10. - name: Check existence of conduwuit directory
  11. ansible.builtin.stat:
  12. path: "{{ matrix_base_data_path }}/conduwuit"
  13. register: matrix_removed_conduwuit_directory_stat
  14. - name: Check existence of continuwuity directory
  15. ansible.builtin.stat:
  16. path: "{{ matrix_base_data_path }}/continuwuity"
  17. register: matrix_continuwuity_directory_stat
  18. - when: >
  19. matrix_removed_conduwuit_directory_stat.stat.exists | bool and
  20. matrix_continuwuity_directory_stat.stat.exists | bool
  21. block:
  22. - name: Ensure matrix-continuwuity.service systemd service is stopped
  23. ansible.builtin.systemd:
  24. name: matrix-continuwuity
  25. state: stopped
  26. enabled: false
  27. daemon_reload: true
  28. - name: Ensure continuwuity directory is backed up
  29. ansible.builtin.command:
  30. cmd: "mv {{ matrix_base_data_path }}/continuwuity {{ matrix_base_data_path }}/continuwuity_old"
  31. creates: "{{ matrix_base_data_path }}/continuwuity_old"
  32. removes: "{{ matrix_base_data_path }}/continuwuity"
  33. - name: Ensure conduwuit directory contents are copied to continuwuity
  34. ansible.builtin.copy:
  35. src: "{{ matrix_base_data_path }}/conduwuit/"
  36. dest: "{{ matrix_base_data_path }}/continuwuity"
  37. remote_src: true
  38. mode: preserve
  39. - name: Ensure conduwuit.toml file is renamed
  40. ansible.builtin.command:
  41. cmd: "mv {{ matrix_base_data_path }}/continuwuity/config/conduwuit.toml {{ matrix_base_data_path }}/continuwuity/config/continuwuity.toml"
  42. removes: "{{ matrix_base_data_path }}/continuwuity/config/conduwuit.toml"
  43. - name: Ensure continuwuity labels are restored
  44. ansible.builtin.copy:
  45. src: "{{ matrix_base_data_path }}/continuwuity_old/labels"
  46. dest: "{{ matrix_base_data_path }}/continuwuity/labels"
  47. remote_src: true
  48. force: true
  49. mode: preserve
  50. - name: Ensure directories ownership is set
  51. block:
  52. - name: Set continuwuity ownership
  53. ansible.builtin.file:
  54. path: "{{ matrix_base_data_path }}/continuwuity"
  55. state: directory
  56. owner: "{{ matrix_user_name }}"
  57. group: "{{ matrix_group_name }}"
  58. recurse: true
  59. - name: Set continuwuity_old ownership
  60. ansible.builtin.file:
  61. path: "{{ matrix_base_data_path }}/continuwuity_old"
  62. state: directory
  63. owner: "{{ matrix_user_name }}"
  64. group: "{{ matrix_group_name }}"
  65. recurse: true
  66. - name: Ensure matrix-continuwuity.service systemd service is started
  67. ansible.builtin.systemd:
  68. name: matrix-continuwuity
  69. state: started
  70. enabled: true
  71. daemon_reload: true