container: reorganize volume directory creation
This commit is contained in:
@@ -8,12 +8,25 @@
|
|||||||
final_docker_volumes: "{{ docker_volumes }}"
|
final_docker_volumes: "{{ docker_volumes }}"
|
||||||
container_image: ''
|
container_image: ''
|
||||||
|
|
||||||
|
- name: Set assistive variables
|
||||||
|
set_fact:
|
||||||
|
template_mounts_needed: "{{ docker_mounts | selectattr('template', 'defined') | list | length > 0 }}"
|
||||||
|
volumes_needed: "{{ docker_mounts | selectattr('name', 'defined') | list | length > 0 }}"
|
||||||
|
dockerfile_needed: "{{ dockerfile is defined and dockerfile | length > 0 }}"
|
||||||
|
- name: Set more assistive variables
|
||||||
|
set_fact:
|
||||||
|
bind_volumes_needed: "{{ volumes_needed and docker_volume_type == 'bind' }}"
|
||||||
|
named_volumes_needed: "{{ volumes_needed and docker_volume_type == 'named' }}"
|
||||||
|
- name: Set even more assistive variables
|
||||||
|
set_fact:
|
||||||
|
create_opt_directory: "{{ dockerfile_needed or docker_host_user or bind_volumes_needed or template_mounts_needed }}"
|
||||||
|
create_mounts_directory: "{{ bind_volumes_needed or template_mounts_needed }}"
|
||||||
|
|
||||||
- name: Set docker service full name
|
- name: Set docker service full name
|
||||||
set_fact:
|
set_fact:
|
||||||
docker_service_name: "{{ docker_service }}_{{ docker_service_suffix }}"
|
docker_service_name: "{{ docker_service }}_{{ docker_service_suffix }}"
|
||||||
when: docker_service_suffix is defined
|
when: docker_service_suffix is defined
|
||||||
|
|
||||||
|
|
||||||
- name: Warn about docker_volumes legacy format
|
- name: Warn about docker_volumes legacy format
|
||||||
debug:
|
debug:
|
||||||
msg: "docker_volumes is deprecated. This support may be removed after december 2022. Use docker_mounts instead!"
|
msg: "docker_volumes is deprecated. This support may be removed after december 2022. Use docker_mounts instead!"
|
||||||
|
|||||||
@@ -46,7 +46,7 @@
|
|||||||
path: "/opt/{{ docker_service }}"
|
path: "/opt/{{ docker_service }}"
|
||||||
state: directory
|
state: directory
|
||||||
mode: 0755
|
mode: 0755
|
||||||
when: (dockerfile is defined and dockerfile | length > 0) or docker_host_user or docker_volume_type == 'bind'
|
when: create_opt_directory
|
||||||
|
|
||||||
- name: Container image
|
- name: Container image
|
||||||
import_tasks: image.yml
|
import_tasks: image.yml
|
||||||
@@ -55,6 +55,25 @@
|
|||||||
include_tasks: host_user.yml
|
include_tasks: host_user.yml
|
||||||
when: docker_host_user
|
when: docker_host_user
|
||||||
|
|
||||||
|
- name: Create suffix directory
|
||||||
|
when: create_opt_directory and docker_service_suffix is defined
|
||||||
|
block:
|
||||||
|
- name: Create directory /opt/{{ docker_service + '/' + docker_service_suffix }}
|
||||||
|
file:
|
||||||
|
path: "/opt/{{ docker_service }}/{{ docker_service_suffix }}"
|
||||||
|
state: directory
|
||||||
|
owner: "{{ user.uid | default(omit) }}"
|
||||||
|
group: "{{ user.group | default(omit) }}"
|
||||||
|
mode: 0755
|
||||||
|
- name: Set container_workdir variable
|
||||||
|
set_fact:
|
||||||
|
container_workdir: /opt/{{ docker_service }}/{{ docker_service_suffix }}
|
||||||
|
|
||||||
|
- name: Set container_workdir variable
|
||||||
|
set_fact:
|
||||||
|
container_workdir: /opt/{{ docker_service }}
|
||||||
|
when: docker_service_suffix is not defined
|
||||||
|
|
||||||
- name: Container volumes
|
- name: Container volumes
|
||||||
import_tasks: volumes.yml
|
import_tasks: volumes.yml
|
||||||
|
|
||||||
|
|||||||
@@ -1,27 +1,11 @@
|
|||||||
---
|
---
|
||||||
|
|
||||||
- name: Create directories and put files in them
|
- name: Create directories and put files in them
|
||||||
when:
|
when: create_mounts_directory
|
||||||
- docker_mounts | length > 0
|
|
||||||
- (docker_volume_type == 'bind' and docker_mounts | selectattr('name', 'defined') | list | length > 0) or (docker_mounts | selectattr('template', 'defined') | list | length > 0)
|
|
||||||
block:
|
block:
|
||||||
- name: Create directory /opt/{{ docker_service + '/' + docker_service_suffix }}
|
|
||||||
file:
|
|
||||||
path: "/opt/{{ docker_service }}/{{ docker_service_suffix }}"
|
|
||||||
state: directory
|
|
||||||
owner: "{{ user.uid | default(omit) }}"
|
|
||||||
group: "{{ user.group | default(omit) }}"
|
|
||||||
mode: 0755
|
|
||||||
when: docker_service_suffix is defined
|
|
||||||
|
|
||||||
- name: Set docker_mounts_dir
|
- name: Set docker_mounts_dir
|
||||||
set_fact:
|
set_fact:
|
||||||
docker_mounts_dir: "/opt/{{ docker_service }}/{{ docker_service_suffix }}/mounts"
|
docker_mounts_dir: "{{ container_workdir }}/mounts"
|
||||||
when: docker_service_suffix is defined
|
|
||||||
- name: Set docker_mounts_dir
|
|
||||||
set_fact:
|
|
||||||
docker_mounts_dir: "/opt/{{ docker_service }}/mounts"
|
|
||||||
when: docker_service_suffix is not defined
|
|
||||||
|
|
||||||
- name: Create directory {{ docker_mounts_dir }}
|
- name: Create directory {{ docker_mounts_dir }}
|
||||||
file:
|
file:
|
||||||
|
|||||||
Reference in New Issue
Block a user