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.
 
 

80 satır
2.8 KiB

  1. ---
  2. # roles/custom/matrix-element-call/tasks/install.yml
  3. # Ensure Required Directories Exist
  4. - name: Ensure matrix-element-call paths exist
  5. ansible.builtin.file:
  6. path: "{{ item.path }}"
  7. state: directory
  8. mode: 0750
  9. owner: "{{ matrix_user_username }}"
  10. group: "{{ matrix_user_groupname }}"
  11. with_items:
  12. - path: "{{ matrix_element_call_base_path }}"
  13. - path: "{{ matrix_base_data_path }}/static-files/public/.well-known/element" # Directory for element.json
  14. # Ensure Configuration Files are in Place
  15. - name: Ensure Element Call config.json is in place
  16. ansible.builtin.template:
  17. src: "{{ role_path }}/templates/config.json.j2"
  18. dest: "{{ matrix_element_call_base_path }}/config.json"
  19. mode: 0640
  20. owner: "{{ matrix_user_username }}"
  21. group: "{{ matrix_user_groupname }}"
  22. - name: Ensure matrix-element-call Docker labels file is in place
  23. ansible.builtin.template:
  24. src: "{{ role_path }}/templates/element-call-labels.j2"
  25. dest: "{{ matrix_element_call_base_path }}/element-call-labels"
  26. mode: 0640
  27. owner: "{{ matrix_user_username }}"
  28. group: "{{ matrix_user_groupname }}"
  29. # Ensure Docker Images are Pulled
  30. - name: Ensure matrix-element-call Docker image is pulled
  31. community.docker.docker_image:
  32. name: "{{ matrix_element_call_container_image }}"
  33. source: pull
  34. force_source: "{{ matrix_element_call_container_image_force_pull }}"
  35. register: element_call_image_result
  36. retries: "{{ devture_playbook_help_container_retries_count }}"
  37. delay: "{{ devture_playbook_help_container_retries_delay }}"
  38. until: element_call_image_result is not failed
  39. # Systemd Services for Element Call
  40. - name: Ensure matrix-element-call systemd service is installed
  41. ansible.builtin.template:
  42. src: "{{ role_path }}/templates/systemd/matrix-element-call.service.j2"
  43. dest: "{{ devture_systemd_docker_base_systemd_path }}/matrix-element-call.service"
  44. mode: 0644
  45. # Update homeserver.yaml for Element Call
  46. - name: Add listeners section for Element Call to homeserver.yaml
  47. ansible.builtin.blockinfile:
  48. path: "{{ matrix_homeserver_config_path }}"
  49. block: |
  50. listeners:
  51. - port: 8008
  52. tls: false
  53. type: http
  54. x_forwarded: true
  55. resources:
  56. - names: [client, federation, openid]
  57. compress: false
  58. marker: "# ANSIBLE MANAGED BLOCK - Element Call listeners"
  59. mode: '0644'
  60. owner: "{{ matrix_user_username }}"
  61. group: "{{ matrix_user_groupname }}"
  62. when: matrix_element_call_enabled | bool
  63. - name: Ensure serve_server_wellknown is enabled in homeserver.yaml
  64. ansible.builtin.lineinfile:
  65. path: "{{ matrix_homeserver_config_path }}"
  66. line: "serve_server_wellknown: true"
  67. insertafter: EOF
  68. state: present
  69. mode: '0644'
  70. owner: "{{ matrix_user_username }}"
  71. group: "{{ matrix_user_groupname }}"
  72. when: matrix_element_call_enabled | bool