From 85eba0afdcef3f59052ffff8eac6580a1126884c Mon Sep 17 00:00:00 2001 From: Alex Polvi Date: Wed, 19 Mar 2014 04:31:41 +0000 Subject: [PATCH 1/2] fix(c10n): do not set peer if it is your own IP, will create a leader --- .../coreos-overlay/coreos-base/oem-ami/files/coreos-c10n | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-ami/files/coreos-c10n b/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-ami/files/coreos-c10n index 4090add55d..880c3244f0 100755 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-ami/files/coreos-c10n +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-ami/files/coreos-c10n @@ -100,6 +100,9 @@ elif [ -n "${C10N_TOKEN}" ]; then ETCD_PEERS=$(curl -s $C10N_ENDPOINT -d "c10n_url=$C10N_TOKEN" -d"ip_list=$IP") echo "[Service]" > ${ETCD_SERVICE_D}/22-c10n.conf for peer in $ETCD_PEERS; do + if [ "${peer}" == "${IP}" ]; then + continue + fi echo "Environment=ETCD_PEERS=${peer}" >> ${ETCD_SERVICE_D}/22-c10n.conf done fi From 0e45883807efdb8b89188f170a23b4995a943832 Mon Sep 17 00:00:00 2001 From: Alex Polvi Date: Wed, 19 Mar 2014 04:56:23 +0000 Subject: [PATCH 2/2] move it to a list --- .../coreos-overlay/coreos-base/oem-ami/files/coreos-c10n | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-ami/files/coreos-c10n b/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-ami/files/coreos-c10n index 880c3244f0..f2a3644e39 100755 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-ami/files/coreos-c10n +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-ami/files/coreos-c10n @@ -98,13 +98,9 @@ elif [ -n "${C10N_TOKEN}" ]; then /usr/bin/block-until-url $C10N_ENDPOINT ETCD_PEERS=$(curl -s $C10N_ENDPOINT -d "c10n_url=$C10N_TOKEN" -d"ip_list=$IP") + IPS=$(echo "$ETCD_PEERS" | grep -v $IP | grep -v '^$' | sed 's/$/:7001/'| tr '\n' ','| sed 's/^,//' | sed 's/,$//') echo "[Service]" > ${ETCD_SERVICE_D}/22-c10n.conf - for peer in $ETCD_PEERS; do - if [ "${peer}" == "${IP}" ]; then - continue - fi - echo "Environment=ETCD_PEERS=${peer}" >> ${ETCD_SERVICE_D}/22-c10n.conf - done + echo "Environment=ETCD_PEERS=${IPS}" >> ${ETCD_SERVICE_D}/22-c10n.conf fi if [ "$START_FLEET" = "1" ]; then