Compare commits

..

8 Commits

Author SHA1 Message Date
coryHawkvelt a99dbaee07 Includes conditional setting for ulimts and devices 2022-11-17 00:37:48 +10:30
coryHawkvelt f0a6a7d51a changed defaultto None 2022-10-22 01:18:28 +10:30
coryHawkvelt 3c2d85f480 Add devices 2022-10-22 01:03:01 +10:30
coryHawkvelt 56beaa8208 Rollback ulimits 2022-10-11 00:18:19 +10:30
HawkveltGiteaAdmin 7016ab2464 Upd 2022-10-10 14:40:59 +10:30
HawkveltGiteaAdmin 032cc44c2b Upd 2022-10-10 14:39:36 +10:30
HawkveltGiteaAdmin 24d69d8d66 containerRestart1 2021-06-17 01:53:42 +09:30
HawkveltGiteaAdmin eb0372ded4 remove merge text 2021-06-17 01:07:43 +09:30
2 changed files with 77 additions and 41 deletions
+62 -26
View File
@@ -56,6 +56,7 @@
#----------------------------------TEMPLATES----------------------------------
#Only copy template files if there are templates defined in the incoming defintion dict
- set_fact: templates_Defined=0
@@ -79,9 +80,9 @@
loop_control:
loop_var: outer_item
when: templates_Defined ==1 and outer_item.value.generic is not defined
register: fileChanged
tags: always
register: regular_template
notify: Restart container
#Copy templates form a generic dir, allow ansible to search
- name: "Generic template mappings for {{ container_Name }}"
#Files will be copied to the 'config' dir as defined by container_configDir, they will be stored using their template file name but with the '.j2' stripped
@@ -91,9 +92,9 @@
loop_control:
loop_var: outer_item
when: templates_Defined ==1 and outer_item.value.generic is defined
register: fileChanged
tags: always
register: generic_template
notify: Restart container
- name: Append templated files to the mapping list
set_fact:
#build a list to pass to docker containing the source of the file(As on disk on the host) and the destination mount within the container
@@ -133,8 +134,9 @@
loop_control:
loop_var: outer_item
when: files_Defined == 1 and outer_item.value.generic is not defined and outer_item.value.src_text is not defined
register: fileChanged
tags: always
register: file_copy
notify: Restart container
#Copy files from a generic dir, allow ansible to search
- name: "Generic File mappings for {{ container_Name }}"
#Files will be copied to the 'config' dir as defined by container_configDir, they will be stored using their file name
@@ -144,8 +146,9 @@
loop_control:
loop_var: outer_item
when: files_Defined == 1 and outer_item.value.generic is defined and outer_item.value.src_text is not defined
register: fileChanged
tags: always
register: generic_copy
notify: Restart container
#Create files based on the suplied src_text param
- name: "Text based file creation for {{ container_Name }}"
#Files will be copied to the 'config' dir as defined by container_configDir, they will be stored using their file name
@@ -155,8 +158,9 @@
loop_control:
loop_var: outer_item
when: files_Defined == 1 and outer_item.value.src_text is defined
register: fileChanged
tags: always
register: text_copy
notify: Restart container
- name: Append static remote files to the mapping list
set_fact:
@@ -197,7 +201,6 @@
loop_control:
loop_var: outer_item
when: local_Defined == 1
register: fileChanged
tags: always
#----------------------------------/LOCAL----------------------------------
@@ -214,19 +217,9 @@
tags: always
#----------------------------------/Check ENV----------------------------------
<<<<<<< HEAD
- name: Restart the container if fileChanged is defined
set_fact: item.value.restart='yes'
when: fileChanged is defined
=======
#TODO - If a confile file or volume is changed, trestart the container
>>>>>>> 4f62020d89990a6ff0b6ec67f986f613e77f308f
- name: "Container {{ container_Name }}"
become: yes
docker_container:
- name: Setup default values for this container
set_fact:
default:
name: "{{ container_Name }}"
hostname: "{{ item.value.hostname | default(container_Name) }}"
command: "{{ item.value.command | default('') }}"
@@ -244,9 +237,52 @@
network_mode: "{{ item.value.network_mode | default ('default') }}"
shm_size: "{{ item.value.shm_size | default ('64M') }}"
ports: "{{ item.value.ports | default ([]) }}"
#log_driver: fluentd
#"{{item.value.ports | default ([json-file])}}"
#log_options:
# fluentd-sub-second-precision: true
# tag: myservice
tags: always
- name: Setup devices_override blank
set_fact:
devices_override:
tags: always
- name: Setup ulimit_override blank
set_fact:
ulimit_override:
tags: always
#----------Merge ulimits--------------
- name: Apply conditional override
set_fact:
ulimit_override:
ulimits: "{{ item.value.ulimits }}"
when: item.value.ulimits is defined
tags: always
- name: Merge the two lists
set_fact:
ulimits_merged: "{{ default | combine(ulimit_override, recursive=true) }}"
tags: always
#----------Merge devices--------------
- name: Apply conditional override
set_fact:
devices_override:
devices: "{{ item.value.devices }}"
when: item.value.devices is defined
tags: always
- name: Merge the two lists
set_fact:
final_merged: "{{ ulimits_merged | combine(devices_override, recursive=true) }}"
tags: always
- name: debug value
debug:
msg: "{{final_merged}}"
tags: always
- name: "Container {{ container_Name }}"
become: true
docker_container: "{{ final_merged }}"
tags: always
+2 -2
View File
@@ -1,7 +1,7 @@
#- name: "Checking docker volume {{working_volume_name}}"
# - name: "Checking docker volume {{working_volume_name}}"
# debug: msg="Checking docker volume {{working_volume_name}}"
#----------------------------------Local Volume----------------------------------
# ----------------------------------Local Volume----------------------------------
- set_fact: base_volume_name="local_"
tags: always