summaryrefslogtreecommitdiffstats
path: root/roles/atomic_proxy/tasks/setup_containers.yml
diff options
context:
space:
mode:
Diffstat (limited to 'roles/atomic_proxy/tasks/setup_containers.yml')
-rw-r--r--roles/atomic_proxy/tasks/setup_containers.yml57
1 files changed, 57 insertions, 0 deletions
diff --git a/roles/atomic_proxy/tasks/setup_containers.yml b/roles/atomic_proxy/tasks/setup_containers.yml
new file mode 100644
index 000000000..63c385afe
--- /dev/null
+++ b/roles/atomic_proxy/tasks/setup_containers.yml
@@ -0,0 +1,57 @@
+---
+- name: get output of: docker images
+ command: docker images
+ changed_when: False # don't report as changed
+ register: docker_images
+
+- name: docker pull busybox ONLY if it's not present
+ command: "docker pull busybox:latest"
+ when: "not docker_images.stdout | search('busybox.*latest')"
+
+- name: docker pull containers ONLY if they're not present (needed otherwise systemd will timeout pulling the containers)
+ command: "docker pull docker-registry.ops.rhcloud.com/{{ item }}:{{ oo_env }}"
+ with_items:
+ - oso-v2-proxy
+ - oso-v2-puppet
+ - oso-v2-monitoring
+ when: "not docker_images.stdout | search('docker-registry.ops.rhcloud.com/{{ item }}.*{{ oo_env }}')"
+
+- name: get output of: docker ps -a
+ command: docker ps -a
+ changed_when: False # don't report as changed
+ register: docker_ps
+
+- name: run proxy-shared-data-1
+ command: /usr/bin/docker run --name "proxy-shared-data-1" \
+ -v /shared/etc/haproxy \
+ -v /shared/etc/httpd \
+ -v /shared/etc/openshift \
+ -v /shared/etc/pki \
+ -v /shared/var/run/ctr-ipc \
+ -v /shared/var/lib/haproxy \
+ -v /shared/usr/local \
+ "busybox:latest" true
+ when: "not docker_ps.stdout | search('proxy-shared-data-1')"
+
+- name: Deploy systemd files for containers
+ template:
+ src: "systemd/{{ item }}.j2"
+ dest: "/etc/systemd/system/{{ item }}"
+ mode: 0640
+ owner: root
+ group: root
+ with_items:
+ - ctr-proxy-1.service
+ - ctr-proxy-monitoring-1.service
+ - ctr-proxy-puppet-1.service
+ notify: reload systemd
+
+- name: start containers
+ service:
+ name: "{{ item }}"
+ state: started
+ enabled: yes
+ with_items:
+ - ctr-proxy-puppet-1
+ - ctr-proxy-1
+ - ctr-proxy-monitoring-1