Add service role
This commit is contained in:
63
roles/service/tasks/init.yml
Normal file
63
roles/service/tasks/init.yml
Normal file
@@ -0,0 +1,63 @@
|
||||
---
|
||||
|
||||
- name: Fail if docker_volumes defined
|
||||
ansible.builtin.fail:
|
||||
msg: "docker_volumes is not supported anymore. Use docker_mounts instead!"
|
||||
when: docker_volumes is defined
|
||||
|
||||
- name: Store variables to be reset in the end
|
||||
ansible.builtin.set_fact:
|
||||
_docker_service_name: "{{ docker_service_name }}"
|
||||
_docker_mount_definition: "{{ docker_mount_definition }}"
|
||||
_container_published_ports: "{{ container_published_ports }}"
|
||||
_container_image: "{{ container_image }}"
|
||||
_container_networks: "{{ container_networks }}"
|
||||
_template_mounts_needed: "{{ template_mounts_needed }}"
|
||||
_copypath_mounts_needed: "{{ copypath_mounts_needed }}"
|
||||
_volumes_needed: "{{ volumes_needed }}"
|
||||
_dockerfile_needed: "{{ dockerfile_needed }}"
|
||||
_db_config_mounts_needed: "{{ db_config_mounts_needed }}"
|
||||
_bind_volumes_needed: "{{ bind_volumes_needed }}"
|
||||
_named_volumes_needed: "{{ named_volumes_needed }}"
|
||||
_create_opt_directory: "{{ create_opt_directory }}"
|
||||
_create_mounts_directory: "{{ create_mounts_directory }}"
|
||||
_docker_service_underscore_name: "{{ docker_service_underscore_name }}"
|
||||
_image_user: "{{ image_user }}"
|
||||
when: create_mounts_directory is defined
|
||||
|
||||
- name: Initialize variables
|
||||
ansible.builtin.set_fact:
|
||||
_docker_namespace: "{{ docker_namespace }}"
|
||||
docker_service_name: "{{ docker_namespace }}"
|
||||
docker_mount_definition: []
|
||||
container_published_ports: []
|
||||
container_image: ''
|
||||
image_user: ''
|
||||
container_networks: []
|
||||
|
||||
- name: Add suffix to docker_service_name
|
||||
ansible.builtin.set_fact:
|
||||
docker_service_name: "{{ docker_service_name }}-{{ docker_service_suffix }}"
|
||||
when: docker_service_suffix | length > 0
|
||||
|
||||
- name: Add docker_service to docker_service_name
|
||||
ansible.builtin.set_fact:
|
||||
docker_service_name: "{{ docker_service_name }}-{{ docker_service }}"
|
||||
when: docker_namespace != docker_service
|
||||
|
||||
- name: Set assistive variables
|
||||
set_fact:
|
||||
docker_service_underscore_name: "{{ docker_service_name | replace('-', '_') }}"
|
||||
template_mounts_needed: "{{ docker_mounts | selectattr('template', 'defined') | list | length > 0 }}"
|
||||
copypath_mounts_needed: "{{ docker_mounts | selectattr('copypath', 'defined') | list | length > 0 }}"
|
||||
volumes_needed: "{{ docker_mounts | selectattr('name', 'defined') | list | length > 0 or docker_database != 'none' }}"
|
||||
dockerfile_needed: "{{ dockerfile | length > 0 }}"
|
||||
db_config_mounts_needed: "{{ docker_mariadb_config | 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 or copypath_mounts_needed or db_config_mounts_needed }}"
|
||||
create_mounts_directory: "{{ bind_volumes_needed or template_mounts_needed or copypath_mounts_needed or db_config_mounts_needed }}"
|
||||
Reference in New Issue
Block a user