| @@ -10,8 +10,8 @@ matrix_conduit_docker_image_tag: "v0.4.0" | |||||
| matrix_conduit_docker_image_force_pull: "{{ matrix_conduit_docker_image.endswith(':latest') }}" | matrix_conduit_docker_image_force_pull: "{{ matrix_conduit_docker_image.endswith(':latest') }}" | ||||
| matrix_conduit_base_path: "{{ matrix_base_data_path }}/conduit" | matrix_conduit_base_path: "{{ matrix_base_data_path }}/conduit" | ||||
| matrix_conduit_config_dir_path: "{{ matrix_conduit_base_path }}/config" | |||||
| matrix_conduit_data_dir_path: "{{ matrix_conduit_base_path }}/storage" | |||||
| matrix_conduit_config_path: "{{ matrix_conduit_base_path }}/config" | |||||
| matrix_conduit_data_path: "{{ matrix_conduit_base_path }}/storage" | |||||
| matrix_conduit_port_number: 6167 | matrix_conduit_port_number: 6167 | ||||
| @@ -13,7 +13,7 @@ | |||||
| - name: Ensure Conduit configuration installed | - name: Ensure Conduit configuration installed | ||||
| template: | template: | ||||
| src: "{{ role_path }}/templates/conduit/conduit.toml.j2" | src: "{{ role_path }}/templates/conduit/conduit.toml.j2" | ||||
| dest: "{{ matrix_conduit_config_dir_path }}/conduit.toml" | |||||
| dest: "{{ matrix_conduit_config_path }}/conduit.toml" | |||||
| mode: 0644 | mode: 0644 | ||||
| owner: "{{ matrix_user_username }}" | owner: "{{ matrix_user_username }}" | ||||
| group: "{{ matrix_user_groupname }}" | group: "{{ matrix_user_groupname }}" | ||||
| @@ -7,8 +7,20 @@ | |||||
| owner: "{{ matrix_user_username }}" | owner: "{{ matrix_user_username }}" | ||||
| group: "{{ matrix_user_groupname }}" | group: "{{ matrix_user_groupname }}" | ||||
| with_items: | with_items: | ||||
| - {path: "{{ matrix_conduit_config_dir_path }}", when: true} | |||||
| - {path: "{{ matrix_conduit_data_dir_path }}", when: true} | |||||
| - {path: "{{ matrix_conduit_config_path }}", when: true} | |||||
| - {path: "{{ matrix_conduit_data_path }}", when: true} | |||||
| when: "matrix_conduit_enabled|bool and item.when" | when: "matrix_conduit_enabled|bool and item.when" | ||||
| # We do this as a separate task, because: | |||||
| # - we'd like to do it for the data path only, not for the base path (which contains root-owned environment variable files we'd like to leave as-is) | |||||
| # - matrix-postgres does something similar | |||||
| - name: Ensure Conduit data path ownership is correct | |||||
| file: | |||||
| path: "{{ matrix_conduit_data_path }}" | |||||
| state: directory | |||||
| owner: "{{ matrix_user_username }}" | |||||
| group: "{{ matrix_user_groupname }}" | |||||
| recurse: true | |||||
| when: matrix_conduit_enabled|bool | |||||
| - import_tasks: "{{ role_path }}/tasks/conduit/setup.yml" | - import_tasks: "{{ role_path }}/tasks/conduit/setup.yml" | ||||
| @@ -20,8 +20,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-conduit \ | |||||
| --tmpfs=/tmp:rw,noexec,nosuid,size={{ matrix_conduit_tmp_directory_size_mb }}m \ | --tmpfs=/tmp:rw,noexec,nosuid,size={{ matrix_conduit_tmp_directory_size_mb }}m \ | ||||
| --network={{ matrix_docker_network }} \ | --network={{ matrix_docker_network }} \ | ||||
| --env CONDUIT_CONFIG=/etc/matrix-conduit/conduit.toml \ | --env CONDUIT_CONFIG=/etc/matrix-conduit/conduit.toml \ | ||||
| --mount type=bind,src={{ matrix_conduit_data_dir_path }},dst=/var/lib/matrix-conduit \ | |||||
| --mount type=bind,src={{ matrix_conduit_config_dir_path }},dst=/etc/matrix-conduit,ro \ | |||||
| --mount type=bind,src={{ matrix_conduit_data_path }},dst=/var/lib/matrix-conduit \ | |||||
| --mount type=bind,src={{ matrix_conduit_config_path }},dst=/etc/matrix-conduit,ro \ | |||||
| {% for arg in matrix_conduit_container_extra_arguments %} | {% for arg in matrix_conduit_container_extra_arguments %} | ||||
| {{ arg }} \ | {{ arg }} \ | ||||
| {% endfor %} | {% endfor %} | ||||