summaryrefslogtreecommitdiff
path: root/global/overlay
diff options
context:
space:
mode:
Diffstat (limited to 'global/overlay')
-rw-r--r--global/overlay/etc/puppet/manifests/cosmos-site.pp8
-rwxr-xr-xglobal/overlay/usr/local/bin/ping-check19
2 files changed, 24 insertions, 3 deletions
diff --git a/global/overlay/etc/puppet/manifests/cosmos-site.pp b/global/overlay/etc/puppet/manifests/cosmos-site.pp
index c313a0a..88696a4 100644
--- a/global/overlay/etc/puppet/manifests/cosmos-site.pp
+++ b/global/overlay/etc/puppet/manifests/cosmos-site.pp
@@ -764,11 +764,13 @@ node 'sto-tug-kvm2.swamid.se' {
sunet::docker_run {'flog_app':
image => 'docker.sunet.se/flog/flog_app',
volumes => ['/opt/flog/dotenv:/opt/flog/.env','/var/log/flog/:/opt/flog/logs/'],
+ pre_start => '/usr/local/bin/ping-check flog_db.docker && run-parts /usr/local/etc/docker.d',
} ->
sunet::docker_run {'flog_nginx':
- image => 'docker.sunet.se/flog/nginx',
- ports => ['80:80', '443:443'],
- volumes => ['/opt/flog/nginx/sites-enabled/:/etc/nginx/sites-enabled/','/opt/flog/nginx/certs/:/etc/nginx/certs', '/var/log/flog_nginx/:/var/log/nginx'],
+ image => 'docker.sunet.se/flog/nginx',
+ ports => ['80:80', '443:443'],
+ volumes => ['/opt/flog/nginx/sites-enabled/:/etc/nginx/sites-enabled/','/opt/flog/nginx/certs/:/etc/nginx/certs', '/var/log/flog_nginx/:/var/log/nginx'],
+ pre_start => '/usr/local/bin/ping-check flog_app.docker && run-parts /usr/local/etc/docker.d',
}
}
diff --git a/global/overlay/usr/local/bin/ping-check b/global/overlay/usr/local/bin/ping-check
new file mode 100755
index 0000000..26c99ed
--- /dev/null
+++ b/global/overlay/usr/local/bin/ping-check
@@ -0,0 +1,19 @@
+#!/usr/bin/env bash
+#
+# Ping until reply or MAX_TRIES. One try == 1s.
+#
+
+MAX_TRIES=10
+LOGTAG="sunet_docker_ping_check"
+
+count=0
+until ping -c1 $1 &> /dev/null
+do
+ if [ $count -gt $MAX_TRIES ]
+ then
+ logger -t "$LOGTAG" "No response from $1 after $MAX_TRIES tries."
+ exit 1
+ fi
+ sleep 1
+ count=$[$count+1]
+done