From 875e3d49df10a7c87c0945e21b868e25e594f89d Mon Sep 17 00:00:00 2001 From: Justin Santa Barbara Date: Tue, 10 Nov 2015 23:47:22 -0500 Subject: [PATCH] AWS: Create a helper to set salt grain from env var This is better from a DRY standpoint. This helps reduce the script size, so we have a little bit of breathing room vs the 16KB limit. --- cluster/aws/templates/salt-master.sh | 43 +++++++++++----------------- 1 file changed, 16 insertions(+), 27 deletions(-) diff --git a/cluster/aws/templates/salt-master.sh b/cluster/aws/templates/salt-master.sh index b8480e2b2ca..abdd473c12b 100755 --- a/cluster/aws/templates/salt-master.sh +++ b/cluster/aws/templates/salt-master.sh @@ -26,35 +26,24 @@ grains: cbr-cidr: "${MASTER_IP_RANGE}" EOF -if [[ -n "${DOCKER_OPTS}" ]]; then - cat <>/etc/salt/minion.d/grains.conf - docker_opts: '$(echo "$DOCKER_OPTS" | sed -e "s/'/''/g")' +# Helper that sets a salt grain in grains.conf, if the upper-cased key is a non-empty env +function env_to_salt { + local key=$1 + local env_key=`echo $key | tr '[:lower:]' '[:upper:]'` + local value=${!env_key} + if [[ -n "${value}" ]]; then + # Note this is yaml, so indentation matters + cat <>/etc/salt/minion.d/grains.conf + ${key}: '$(echo "${value}" | sed -e "s/'/''/g")' EOF -fi + fi +} -if [[ -n "${DOCKER_ROOT}" ]]; then - cat <>/etc/salt/minion.d/grains.conf - docker_root: '$(echo "$DOCKER_ROOT" | sed -e "s/'/''/g")' -EOF -fi - -if [[ -n "${KUBELET_ROOT}" ]]; then - cat <>/etc/salt/minion.d/grains.conf - kubelet_root: '$(echo "$KUBELET_ROOT" | sed -e "s/'/''/g")' -EOF -fi - -if [[ -n "${MASTER_EXTRA_SANS}" ]]; then - cat <>/etc/salt/minion.d/grains.conf - master_extra_sans: '$(echo "$MASTER_EXTRA_SANS" | sed -e "s/'/''/g")' -EOF -fi - -if [[ ! -z "${RUNTIME_CONFIG:-}" ]]; then - cat <>/etc/salt/minion.d/grains.conf - runtime_config: '$(echo "$RUNTIME_CONFIG" | sed -e "s/'/''/g")' -EOF -fi +env_to_salt docker_opts +env_to_salt docker_root +env_to_salt kubelet_root +env_to_salt master_extra_sans +env_to_salt runtime_config # Auto accept all keys from minions that try to join mkdir -p /etc/salt/master.d