Separate matrix-dimension install/uninstall tasks
This commit is contained in:
		| @@ -8,8 +8,14 @@ | |||||||
|     - setup-all |     - setup-all | ||||||
|     - setup-dimension |     - setup-dimension | ||||||
|  |  | ||||||
| - import_tasks: "{{ role_path }}/tasks/setup_dimension.yml" | - import_tasks: "{{ role_path }}/tasks/setup_install.yml" | ||||||
|   when: run_setup|bool |   when: run_setup|bool and matrix_dimension_enabled|bool | ||||||
|  |   tags: | ||||||
|  |     - setup-all | ||||||
|  |     - setup-dimension | ||||||
|  |  | ||||||
|  | - import_tasks: "{{ role_path }}/tasks/setup_uninstall.yml" | ||||||
|  |   when: run_setup|bool and not matrix_dimension_enabled|bool | ||||||
|   tags: |   tags: | ||||||
|     - setup-all |     - setup-all | ||||||
|     - setup-dimension |     - setup-dimension | ||||||
|   | |||||||
| @@ -1,85 +0,0 @@ | |||||||
| --- |  | ||||||
|  |  | ||||||
| # |  | ||||||
| # Tasks related to setting up the dimension |  | ||||||
| # |  | ||||||
|  |  | ||||||
| - name: Ensure Dimension base path exists |  | ||||||
|   file: |  | ||||||
|     path: "{{ matrix_dimension_base_path }}" |  | ||||||
|     state: directory |  | ||||||
|     mode: 0770 |  | ||||||
|     owner: "{{ matrix_user_username }}" |  | ||||||
|     group: "{{ matrix_dimension_user_gid }}" |  | ||||||
|   when: matrix_dimension_enabled|bool |  | ||||||
|  |  | ||||||
| - name: Ensure Dimension config installed |  | ||||||
|   copy: |  | ||||||
|     content: "{{ matrix_dimension_configuration|to_nice_yaml }}" |  | ||||||
|     dest: "{{ matrix_dimension_base_path }}/config.yaml" |  | ||||||
|     mode: 0640 |  | ||||||
|     owner: "{{ matrix_user_username }}" |  | ||||||
|     group: "{{ matrix_dimension_user_gid }}" |  | ||||||
|   when: matrix_dimension_enabled|bool |  | ||||||
|  |  | ||||||
| - name: Ensure Dimension image is pulled |  | ||||||
|   docker_image: |  | ||||||
|     name: "{{ matrix_dimension_docker_image }}" |  | ||||||
|     source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}" |  | ||||||
|     force_source: "{{ matrix_dimension_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" |  | ||||||
|     force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_dimension_docker_image_force_pull }}" |  | ||||||
|   when: matrix_dimension_enabled|bool |  | ||||||
|  |  | ||||||
| - name: Ensure matrix-dimension.service installed |  | ||||||
|   template: |  | ||||||
|     src: "{{ role_path }}/templates/systemd/matrix-dimension.service.j2" |  | ||||||
|     dest: "{{ matrix_systemd_path }}/matrix-dimension.service" |  | ||||||
|     mode: 0644 |  | ||||||
|   register: matrix_dimension_systemd_service_result |  | ||||||
|   when: matrix_dimension_enabled|bool |  | ||||||
|  |  | ||||||
| - name: Ensure systemd reloaded after matrix-dimension.service installation |  | ||||||
|   service: |  | ||||||
|     daemon_reload: yes |  | ||||||
|   when: "matrix_dimension_enabled|bool and matrix_dimension_systemd_service_result.changed" |  | ||||||
|  |  | ||||||
| # |  | ||||||
| # Tasks related to getting rid of the dimension (if it was previously enabled) |  | ||||||
| # |  | ||||||
|  |  | ||||||
| - name: Check existence of matrix-dimension service |  | ||||||
|   stat: |  | ||||||
|     path: "{{ matrix_systemd_path }}/matrix-dimension.service" |  | ||||||
|   register: matrix_dimension_service_stat |  | ||||||
|   when: "not matrix_dimension_enabled|bool" |  | ||||||
|  |  | ||||||
| - name: Ensure matrix-dimension is stopped |  | ||||||
|   service: |  | ||||||
|     name: matrix-dimension |  | ||||||
|     state: stopped |  | ||||||
|     daemon_reload: yes |  | ||||||
|   register: stopping_result |  | ||||||
|   when: "not matrix_dimension_enabled|bool and matrix_dimension_service_stat.stat.exists" |  | ||||||
|  |  | ||||||
| - name: Ensure matrix-dimension.service doesn't exist |  | ||||||
|   file: |  | ||||||
|     path: "{{ matrix_systemd_path }}/matrix-dimension.service" |  | ||||||
|     state: absent |  | ||||||
|   when: "not matrix_dimension_enabled|bool and matrix_dimension_service_stat.stat.exists" |  | ||||||
|  |  | ||||||
| - name: Ensure systemd reloaded after matrix-dimension.service removal |  | ||||||
|   service: |  | ||||||
|     daemon_reload: yes |  | ||||||
|   when: "not matrix_dimension_enabled|bool and matrix_dimension_service_stat.stat.exists" |  | ||||||
|  |  | ||||||
| - name: Ensure Dimension environment variables path doesn't exist |  | ||||||
|   file: |  | ||||||
|     path: "{{ matrix_dimension_base_path }}" |  | ||||||
|     state: absent |  | ||||||
|   when: "not matrix_dimension_enabled|bool" |  | ||||||
|  |  | ||||||
| - name: Ensure Dimension Docker image doesn't exist |  | ||||||
|   docker_image: |  | ||||||
|     name: "{{ matrix_dimension_docker_image }}" |  | ||||||
|     state: absent |  | ||||||
|   when: "not matrix_dimension_enabled|bool" |  | ||||||
							
								
								
									
										36
									
								
								roles/matrix-dimension/tasks/setup_install.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								roles/matrix-dimension/tasks/setup_install.yml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | |||||||
|  | --- | ||||||
|  |  | ||||||
|  | - name: Ensure Dimension base path exists | ||||||
|  |   file: | ||||||
|  |     path: "{{ matrix_dimension_base_path }}" | ||||||
|  |     state: directory | ||||||
|  |     mode: 0770 | ||||||
|  |     owner: "{{ matrix_user_username }}" | ||||||
|  |     group: "{{ matrix_dimension_user_gid }}" | ||||||
|  |  | ||||||
|  | - name: Ensure Dimension config installed | ||||||
|  |   copy: | ||||||
|  |     content: "{{ matrix_dimension_configuration|to_nice_yaml }}" | ||||||
|  |     dest: "{{ matrix_dimension_base_path }}/config.yaml" | ||||||
|  |     mode: 0640 | ||||||
|  |     owner: "{{ matrix_user_username }}" | ||||||
|  |     group: "{{ matrix_dimension_user_gid }}" | ||||||
|  |  | ||||||
|  | - name: Ensure Dimension image is pulled | ||||||
|  |   docker_image: | ||||||
|  |     name: "{{ matrix_dimension_docker_image }}" | ||||||
|  |     source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}" | ||||||
|  |     force_source: "{{ matrix_dimension_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | ||||||
|  |     force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_dimension_docker_image_force_pull }}" | ||||||
|  |  | ||||||
|  | - name: Ensure matrix-dimension.service installed | ||||||
|  |   template: | ||||||
|  |     src: "{{ role_path }}/templates/systemd/matrix-dimension.service.j2" | ||||||
|  |     dest: "{{ matrix_systemd_path }}/matrix-dimension.service" | ||||||
|  |     mode: 0644 | ||||||
|  |   register: matrix_dimension_systemd_service_result | ||||||
|  |  | ||||||
|  | - name: Ensure systemd reloaded after matrix-dimension.service installation | ||||||
|  |   service: | ||||||
|  |     daemon_reload: yes | ||||||
|  |   when: "matrix_dimension_systemd_service_result.changed|bool" | ||||||
							
								
								
									
										35
									
								
								roles/matrix-dimension/tasks/setup_uninstall.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								roles/matrix-dimension/tasks/setup_uninstall.yml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,35 @@ | |||||||
|  | --- | ||||||
|  |  | ||||||
|  | - name: Check existence of matrix-dimension service | ||||||
|  |   stat: | ||||||
|  |     path: "{{ matrix_systemd_path }}/matrix-dimension.service" | ||||||
|  |   register: matrix_dimension_service_stat | ||||||
|  |  | ||||||
|  | - name: Ensure matrix-dimension is stopped | ||||||
|  |   service: | ||||||
|  |     name: matrix-dimension | ||||||
|  |     state: stopped | ||||||
|  |     daemon_reload: yes | ||||||
|  |   register: stopping_result | ||||||
|  |   when: "matrix_dimension_service_stat.stat.exists|bool" | ||||||
|  |  | ||||||
|  | - name: Ensure matrix-dimension.service doesn't exist | ||||||
|  |   file: | ||||||
|  |     path: "{{ matrix_systemd_path }}/matrix-dimension.service" | ||||||
|  |     state: absent | ||||||
|  |   when: "matrix_dimension_service_stat.stat.exists|bool" | ||||||
|  |  | ||||||
|  | - name: Ensure systemd reloaded after matrix-dimension.service removal | ||||||
|  |   service: | ||||||
|  |     daemon_reload: yes | ||||||
|  |   when: "matrix_dimension_service_stat.stat.exists|bool" | ||||||
|  |  | ||||||
|  | - name: Ensure Dimension base directory doesn't exist | ||||||
|  |   file: | ||||||
|  |     path: "{{ matrix_dimension_base_path }}" | ||||||
|  |     state: absent | ||||||
|  |  | ||||||
|  | - name: Ensure Dimension Docker image doesn't exist | ||||||
|  |   docker_image: | ||||||
|  |     name: "{{ matrix_dimension_docker_image }}" | ||||||
|  |     state: absent | ||||||
		Reference in New Issue
	
	Block a user