blob: 453c3fb2d200773a09a10fd45ad42c560063cfbe [file] [log] [blame]
#!/bin/bash -xe
CLUSTER_MODEL_REF=${CLUSTER_MODEL_REF:-master}
FORMULA_VERSION=${FORMULA_VERSION:-testing}
SALTSTACK_GPG=${SALTSTACK_GPG:-"https://repo.saltstack.com/apt/ubuntu/16.04/amd64/2016.3/SALTSTACK-GPG-KEY.pub"}
SALTSTACK_REPO=${SALTSTACK_REPO:-"http://repo.saltstack.com/apt/ubuntu/16.04/amd64/2016.3 xenial main"}
APT_MIRANTIS_GPG=${APT_MIRANTIS_GPG:-"http://apt.mirantis.com/public.gpg"}
APT_MIRANTIS_SALT_REPO=${APT_MIRANTIS_SALT_REPO:-"http://apt.mirantis.com/xenial/ $FORMULA_VERSION salt"}
GIT_SALT_FORMULAS_SCRIPTS=${GIT_SALT_FORMULAS_SCRIPTS:-"https://github.com/salt-formulas/salt-formulas-scripts"}
wget -O - ${SALTSTACK_GPG} | sudo apt-key add -
wget -O - ${APT_MIRANTIS_GPG} | apt-key add -
echo "deb [arch=amd64] ${SALTSTACK_REPO}" > /etc/apt/sources.list.d/saltstack.list
apt-get update
apt-get install git-core -y
for g_host in ${CLUSTER_MODEL} ${GIT_SALT_FORMULAS_SCRIPTS} ; do
_tmp_host=$(echo ${g_host} | awk -F/ '{print $3}')
ssh-keyscan -T 1 -H ${_tmp_host} >> ~/.ssh/known_hosts || true
done
git clone --recursive -b ${CLUSTER_MODEL_REF} ${CLUSTER_MODEL} /srv/salt/reclass || true
git clone ${GIT_SALT_FORMULAS_SCRIPTS} /srv/salt/scripts || true
# bootstrap.sh opts
export FORMULAS_SOURCE=pkg
export HOSTNAME=apt01
export DOMAIN="${CLUSTER_NAME}.local"
export EXTRA_FORMULAS="ntp aptly nginx iptables docker"
export APT_REPOSITORY=" deb [arch=amd64] ${APT_MIRANTIS_SALT_REPO} "
export APT_REPOSITORY_GPG=${APT_MIRANTIS_GPG}
if [[ ! -z "${PACKER_OFFLINE_BUILD}" ]];then
echo "INFO: build in offline detected!"
export BOOTSTRAP_SALTSTACK_COM="file:///tmp/bootstrap.saltstack.com.sh"
# extra opts will push bootstrap script NOT install upstream repos.
export BOOTSTRAP_SALTSTACK_OPTS=${BOOTSTRAP_SALTSTACK_OPTS:- -dXr $BOOTSTRAP_SALTSTACK_VERSION }
fi
#
bash -x /srv/salt/scripts/bootstrap.sh || true