Skip to content

Commit 3bee168

Browse files
author
Matthew Fisher
committed
fix(*): check for key already exists errors only
1 parent 947463b commit 3bee168

1 file changed

Lines changed: 8 additions & 6 deletions

File tree

bin/boot

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,19 +26,21 @@ sleep $(($ETCD_TTL+1))
2626

2727
function etcd_set_default {
2828
set +e
29-
etcdctl --no-sync -C $ETCD mk $ETCD_PATH/$1 $2 >/dev/null 2>&1
30-
if [[ $? -ne 0 && $? -ne 4 ]]; then
31-
echo "etcd_set_default: an etcd error occurred. aborting..."
29+
ERROR="$(etcdctl --no-sync -C $ETCD mk $ETCD_PATH/$1 $2 2>&1 >/dev/null)"
30+
if [[ $? -ne 0 && $(echo $ERROR | grep -ive "key already exists") ]]; then
31+
echo "etcd_set_default: an etcd error occurred ($ERROR)"
32+
echo "aborting..."
3233
exit 1
3334
fi
3435
set -e
3536
}
3637

3738
function etcd_safe_mkdir {
3839
set +e
39-
etcdctl --no-sync -C $ETCD mkdir $1 >/dev/null 2>&1
40-
if [[ $? -ne 0 && $? -ne 4 ]]; then
41-
echo "etcd_safe_mkdir: an etcd error occurred. aborting..."
40+
ERROR="$(etcdctl --no-sync -C $ETCD mkdir $1 2>&1 >/dev/null)"
41+
if [[ $? -ne 0 && $(echo $ERROR | grep -ive "key already exists") ]]; then
42+
echo "etcd_safe_mkdir: an etcd error occurred ($ERROR)"
43+
echo "aborting..."
4244
exit 1
4345
fi
4446
set -e

0 commit comments

Comments
 (0)