From b7058b4b3f823cf4c95c38741dddc68b59b733cc Mon Sep 17 00:00:00 2001 From: Yifei Xue Date: Sat, 13 Aug 2016 09:15:22 +0800 Subject: Prepare the jump host offline JIRA: COMPASS-456 Change-Id: Ieced8e30bde3d19623b5d2486a52f81c1cf295a3 Signed-off-by: Yifei Xue --- deploy/prepare.sh | 94 ++++++++++++++++++++++++++++++++++++------------------- 1 file changed, 61 insertions(+), 33 deletions(-) (limited to 'deploy/prepare.sh') diff --git a/deploy/prepare.sh b/deploy/prepare.sh index a4f606af..7d7a02d5 100755 --- a/deploy/prepare.sh +++ b/deploy/prepare.sh @@ -9,11 +9,11 @@ ############################################################################## function print_logo() { - if ! apt --installed list 2>/dev/null | grep "figlet" - then - sudo apt-get update -y - sudo apt-get install -y --force-yes figlet - fi +# if ! apt --installed list 2>/dev/null | grep "figlet" +# then +# sudo apt-get update -y +# sudo apt-get install -y --force-yes figlet +# fi figlet -ctf slant Compass Installer set +x; sleep 2; set -x @@ -32,32 +32,19 @@ function download_iso() fi fi + rm -rf $WORK_DIR/iso + mkdir -p $WORK_DIR/iso + mkdir -p $WORK_DIR/cache curl --connect-timeout 10 -o $WORK_DIR/cache/$iso_name $ISO_URL -} -function prepare_env() { - if [[ "$DEPLOY_FIRST_TIME" == "true" ]]; then - sudo apt-get update -y - sudo apt-get install -y --force-yes mkisofs bc curl ipmitool openvswitch-switch - sudo apt-get install -y --force-yes git python-dev - sudo apt-get install -y --force-yes libxslt-dev libxml2-dev libvirt-dev build-essential qemu-utils qemu-kvm libvirt-bin virtinst libmysqld-dev - sudo apt-get install -y --force-yes libffi-dev libssl-dev - fi - - sudo service libvirt-bin restart - if sudo service openvswitch-switch status|grep stop; then - sudo service openvswitch-switch start - fi +} +function pre_prepare() { # prepare work dir - rm -rf $WORK_DIR/{installer,vm,network,iso} + rm -rf $WORK_DIR/{installer,vm,network} mkdir -p $WORK_DIR/installer mkdir -p $WORK_DIR/vm mkdir -p $WORK_DIR/network - mkdir -p $WORK_DIR/iso - mkdir -p $WORK_DIR/cache - - download_iso cp $WORK_DIR/cache/`basename $ISO_URL` $WORK_DIR/iso/centos.iso -f @@ -72,24 +59,65 @@ function prepare_env() { chmod 755 $WORK_DIR -R sudo cp ${COMPASS_DIR}/deploy/qemu_hook.sh /etc/libvirt/hooks/qemu + + rm -rf $WORK_DIR/cache/compass_tmp + mkdir -p $WORK_DIR/cache/compass_tmp + rm -rf $WORK_DIR/cache/jh_env_tmp + mkdir -p $WORK_DIR/cache/jh_env_tmp + sudo mount -o loop $WORK_DIR/cache/$iso_name $WORK_DIR/cache/compass_tmp/ + cp $WORK_DIR/cache/compass_tmp/jh_env_package/*.tar.gz $WORK_DIR/cache/jh_env_tmp/ + sudo umount $WORK_DIR/cache/compass_tmp/ + rm -rf $WORK_DIR/cache/compass_tmp + tar -zxvf $WORK_DIR/cache/jh_env_tmp/env_trusty_deb.tar.gz -C $WORK_DIR/cache/jh_env_tmp + tar -zxvf $WORK_DIR/cache/jh_env_tmp/env_trusty_pip.tar.gz -C $WORK_DIR/cache/jh_env_tmp +} + +function prepare_env() { + if [[ "$DEPLOY_FIRST_TIME" == "true" ]]; then + cd $WORK_DIR/cache/jh_env_tmp/jh_deb + dpkg -i *.deb + cd - + fi } function _prepare_python_env() { rm -rf $WORK_DIR/venv mkdir -p $WORK_DIR/venv - sudo apt-get install -y --force-yes python-pip - sudo pip install --upgrade virtualenv + rm -rf ~/.pip + mkdir -p ~/.pip + cd $WORK_DIR/cache/jh_env_tmp/ + +cat < ~/.pip/pip.conf +[global] +find-links = http://127.0.0.1:9999/jh_pip +no-index = true +[install] +trusted-host=127.0.0.1 +EOF + + nohup python -m SimpleHTTPServer 9999 & + + cd - + virtualenv $WORK_DIR/venv source $WORK_DIR/venv/bin/activate - pip install --upgrade pip - pip install --upgrade cheetah - pip install --upgrade pyyaml - pip install --upgrade requests - pip install --upgrade netaddr - pip install --upgrade oslo.config - pip install --upgrade ansible + PIP="markupsafe virtualenv cheetah pyyaml requests netaddr pbr oslo.config ansible" + for i in ${PIP}; do + pip install --upgrade $i + done + service libvirt-bin restart + if sudo service openvswitch-switch status|grep stop; then + sudo service openvswitch-switch start + fi + + pid=$(ps -ef | grep SimpleHTTPServer | grep 9999 | awk '{print $2}') + echo $pid + kill -9 $pid + + rm -rf ~/.pip/pip.conf + rm -rf $WORK_DIR/cache/jh_env_tmp } function prepare_python_env() -- cgit 1.2.3-korg