|
@@ -1,4 +1,9 @@
|
|
|
---
|
|
|
+#- debug:
|
|
|
+ #msg: output={{ containers | map(attribute='service_name') | flatten | map('regex_replace', '(.*)', '"\1"') | join(', ') }}
|
|
|
+
|
|
|
+#- meta: end_play
|
|
|
+
|
|
|
- name: Install docker packages (Fedora)
|
|
|
dnf:
|
|
|
name:
|
|
@@ -114,6 +119,41 @@
|
|
|
with_items:
|
|
|
- "{{ containers | map(attribute='service_name') | flatten }}"
|
|
|
|
|
|
+- name: Copy script for automated docker pull
|
|
|
+ template:
|
|
|
+ src: docker-pull.sh.j2
|
|
|
+ dest: /usr/local/bin/docker-pull.sh
|
|
|
+ owner: root
|
|
|
+ group: root
|
|
|
+ mode: '0750'
|
|
|
+
|
|
|
+- name: Install docker-pull systemd artifacts
|
|
|
+ template:
|
|
|
+ src: docker-pull.{{ item }}.j2
|
|
|
+ dest: /etc/systemd/system/docker-pull.{{ item }}
|
|
|
+ owner: root
|
|
|
+ group: root
|
|
|
+ mode: '0750'
|
|
|
+ loop:
|
|
|
+ - service
|
|
|
+ - timer
|
|
|
+ loop_control:
|
|
|
+ label: docker-pull.{{ item }}
|
|
|
+
|
|
|
+- name: Install docker-purge systemd artifacts
|
|
|
+ template:
|
|
|
+ src: docker-purge.{{ item }}.j2
|
|
|
+ dest: /etc/systemd/system/docker-purge.{{ item }}
|
|
|
+ owner: root
|
|
|
+ group: root
|
|
|
+ mode: '0644'
|
|
|
+ notify: Refresh systemd service files
|
|
|
+ loop:
|
|
|
+ - service
|
|
|
+ - timer
|
|
|
+ loop_control:
|
|
|
+ label: docker-purge.{{ item }}
|
|
|
+
|
|
|
- meta: flush_handlers
|
|
|
|
|
|
- name: Open up firewall ports
|
|
@@ -131,3 +171,12 @@
|
|
|
state: started
|
|
|
with_items:
|
|
|
- "{{ containers | map(attribute='service_name') | flatten }}"
|
|
|
+
|
|
|
+- name: Enable docker timers for automated pull & cleanup
|
|
|
+ systemd:
|
|
|
+ name: "{{ item }}"
|
|
|
+ enabled: yes
|
|
|
+ state: started
|
|
|
+ loop:
|
|
|
+ - docker-pull.timer
|
|
|
+ - docker-purge.timer
|