Skip to content

Commit 96c95fd

Browse files
committed
Merge pull request #1212 from deis/fix_etcd_safe_set
fix(*): fix etcd_safe_set to not override values
2 parents d2583b2 + 0ce0864 commit 96c95fd

4 files changed

Lines changed: 29 additions & 37 deletions

File tree

controller/bin/boot

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,15 @@ done
2424
# wait until etcd has discarded potentially stale values
2525
sleep $(($ETCD_TTL+1))
2626

27-
function etcd_safe_set {
28-
if ! etcdctl --no-sync -C $ETCD get $ETCD_PATH/$1 >/dev/null 2>&1; then
29-
etcdctl --no-sync -C $ETCD set $ETCD_PATH/$1 $2 >/dev/null
30-
fi
27+
function etcd_set_default {
28+
etcdctl --no-sync -C $ETCD mk $ETCD_PATH/$1 $2 >/dev/null 2>&1 || true
3129
}
3230

33-
etcd_safe_set protocol ${DEIS_PROTOCOL:-http}
34-
etcd_safe_set secretKey ${DEIS_SECRET_KEY:-`openssl rand -base64 64 | tr -d '\n'`}
35-
etcd_safe_set builderKey ${DEIS_BUILDER_KEY:-`openssl rand -base64 64 | tr -d '\n'`}
36-
etcd_safe_set registrationEnabled 1
37-
etcd_safe_set webEnabled 0
31+
etcd_set_default protocol ${DEIS_PROTOCOL:-http}
32+
etcd_set_default secretKey ${DEIS_SECRET_KEY:-`openssl rand -base64 64 | tr -d '\n'`}
33+
etcd_set_default builderKey ${DEIS_BUILDER_KEY:-`openssl rand -base64 64 | tr -d '\n'`}
34+
etcd_set_default registrationEnabled 1
35+
etcd_set_default webEnabled 0
3836

3937
# wait for confd to run once and install initial templates
4038
until confd -onetime -node $ETCD -config-file /app/confd.toml 2>/dev/null; do

database/bin/boot

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,18 +31,16 @@ done
3131
# wait until etcd has discarded potentially stale values
3232
sleep $(($ETCD_TTL+1))
3333

34-
function etcd_safe_set {
35-
if ! etcdctl --no-sync -C $ETCD get $ETCD_PATH/$1 >/dev/null 2>&1; then
36-
etcdctl --no-sync -C $ETCD set $ETCD_PATH/$1 $2 >/dev/null
37-
fi
34+
function etcd_set_default {
35+
etcdctl --no-sync -C $ETCD mk $ETCD_PATH/$1 $2 >/dev/null 2>&1 || true
3836
}
3937

40-
etcd_safe_set engine postgresql_psycopg2
41-
etcd_safe_set adminUser ${PG_ADMIN_USER:-postgres}
42-
etcd_safe_set adminPass ${PG_ADMIN_PASS:-changeme123}
43-
etcd_safe_set user ${PG_USER_NAME:-deis}
44-
etcd_safe_set password ${PG_USER_PASS:-changeme123}
45-
etcd_safe_set name ${PG_USER_DB:-deis}
38+
etcd_set_default engine postgresql_psycopg2
39+
etcd_set_default adminUser ${PG_ADMIN_USER:-postgres}
40+
etcd_set_default adminPass ${PG_ADMIN_PASS:-changeme123}
41+
etcd_set_default user ${PG_USER_NAME:-deis}
42+
etcd_set_default password ${PG_USER_PASS:-changeme123}
43+
etcd_set_default name ${PG_USER_DB:-deis}
4644

4745
# wait for confd to run once and install initial templates
4846
until confd -onetime -node $ETCD -config-file /app/confd.toml; do

registry/bin/boot

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,15 +27,13 @@ done
2727
# wait until etcd has discarded potentially stale values
2828
sleep $(($ETCD_TTL+1))
2929

30-
function etcd_safe_set {
31-
if ! etcdctl --no-sync -C $ETCD get $ETCD_PATH/$1 >/dev/null 2>&1; then
32-
etcdctl --no-sync -C $ETCD set $ETCD_PATH/$1 $2 >/dev/null
33-
fi
30+
function etcd_set_default {
31+
etcdctl --no-sync -C $ETCD mk $ETCD_PATH/$1 $2 >/dev/null 2>&1 || true
3432
}
3533

3634
# seed initial service configuration if necessary
37-
etcd_safe_set protocol http
38-
etcd_safe_set secretKey ${REGISTRY_SECRET_KEY:-`openssl rand -base64 64 | tr -d '\n'`}
35+
etcd_set_default protocol http
36+
etcd_set_default secretKey ${REGISTRY_SECRET_KEY:-`openssl rand -base64 64 | tr -d '\n'`}
3937

4038
# wait for confd to run once and install initial templates
4139
until confd -onetime -node $ETCD -config-file /app/confd.toml; do

router/bin/boot

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -28,24 +28,22 @@ function etcd_safe_mkdir {
2828
etcdctl --no-sync -C $ETCD mkdir $1 >/dev/null 2>&1 || true
2929
}
3030

31-
function etcd_safe_set {
32-
if ! etcdctl --no-sync -C $ETCD get $ETCD_PATH/$1 >/dev/null 2>&1; then
33-
etcdctl --no-sync -C $ETCD set $ETCD_PATH/$1 $2 >/dev/null
34-
fi
31+
function etcd_set_default {
32+
etcdctl --no-sync -C $ETCD mk $ETCD_PATH/$1 $2 >/dev/null 2>&1 || true
3533
}
3634

3735
etcd_safe_mkdir /deis/controller
3836
etcd_safe_mkdir /deis/services
3937
etcd_safe_mkdir /deis/domains
4038
etcd_safe_mkdir /deis/builder
41-
etcd_safe_set port ${PORT:-80}
42-
etcd_safe_set gzip on
43-
etcd_safe_set gzipHttpVersion 1.0
44-
etcd_safe_set gzipCompLevel 2
45-
etcd_safe_set gzipProxied any
46-
etcd_safe_set gzipVary on
47-
etcd_safe_set gzipDisable "\"msie6\""
48-
etcd_safe_set gzipTypes "application/x-javascript, application/xhtml+xml, application/xml, application/xml+rss, application/json, text/css, text/javascript, text/plain, text/xml"
39+
etcd_set_default port ${PORT:-80}
40+
etcd_set_default gzip on
41+
etcd_set_default gzipHttpVersion 1.0
42+
etcd_set_default gzipCompLevel 2
43+
etcd_set_default gzipProxied any
44+
etcd_set_default gzipVary on
45+
etcd_set_default gzipDisable "\"msie6\""
46+
etcd_set_default gzipTypes "application/x-javascript, application/xhtml+xml, application/xml, application/xml+rss, application/json, text/css, text/javascript, text/plain, text/xml"
4947

5048
# wait for confd to run once and install initial templates
5149
until confd -onetime -node $ETCD -config-file /app/confd.toml >/dev/null 2>/dev/null; do

0 commit comments

Comments
 (0)