From d68f60a39d53810908af73ab13bbcbe9efbdd6b0 Mon Sep 17 00:00:00 2001 From: pierreozoux <pierre@ozoux.net> Date: Wed, 18 Feb 2015 13:53:43 +0000 Subject: [PATCH] Revert "Removes discovery unit file" and removes 'while' loop --- unit-files/discovery@.service | 17 +++++++++++++++++ unit-files/web@.service | 7 +++---- 2 files changed, 20 insertions(+), 4 deletions(-) create mode 100644 unit-files/discovery@.service diff --git a/unit-files/discovery@.service b/unit-files/discovery@.service new file mode 100644 index 0000000..573dbf1 --- /dev/null +++ b/unit-files/discovery@.service @@ -0,0 +1,17 @@ +[Unit] +Description=%p for %i etcd registration + +# Requirements +Requires=etcd.service + +# Dependency binding +BindsTo=web@%i.service + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=/bin/bash -euxc ' \ + ip=`docker inspect --format \'{{.NetworkSettings.IPAddress}}\' %i`; \ + etcdctl --peers 172.17.42.1:4001 set /services/web/%i \'{"ip":"\'$ip\'", "port":"80"}\';' +ExecStop=-/usr/bin/etcdctl rm /services/web/%i + diff --git a/unit-files/web@.service b/unit-files/web@.service index 5caaba4..2c2daa7 100644 --- a/unit-files/web@.service +++ b/unit-files/web@.service @@ -3,10 +3,12 @@ Description=%p-%i # Requirements Requires=docker.service +Requires=discovery@%i.service Requires=backup@%i.timer # Dependency ordering After=docker.service +Before=discovery@%i.service Before=backup@%i.timer [Service] @@ -29,9 +31,6 @@ ExecStart=/bin/bash -euxc ' \ -v /data/runtime/domains/%i/log/apache2:/var/log/apache2 \ ${DOCKER_ARGUMENTS} \ pierreozoux/${APPLICATION}' -ExecStartPost=/bin/bash -c ' \ - ip=`docker inspect --format \'{{.NetworkSettings.IPAddress}}\' %i`; \ - /usr/bin/etcdctl --peers 172.17.42.1:4001 set /services/web/%i \'{"ip":"\'$ip\'", "port":"80"}\' +ExecReload=/usr/bin/docker restart %i ExecStop=/usr/bin/docker stop %i -ExecStopPost=-/usr/bin/etcdctl --peers 172.17.42.1:4001 rm /services/web/%i -- GitLab