X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=tools%2F2genesis.sh;h=e41eb40c090a8c64b2a2f3ca116671492a3f88de;hb=87dd646ac7e0fc62ffb339ec501d4432d2deb581;hp=59d9932fd24091cb994cd867b10045f06237cbf7;hpb=a3163ede73e8cbda4d6ffa5b14f5e2abcbb9e585;p=yaml_builds.git diff --git a/tools/2genesis.sh b/tools/2genesis.sh index 59d9932..e41eb40 100755 --- a/tools/2genesis.sh +++ b/tools/2genesis.sh @@ -15,11 +15,12 @@ # limitations under the License. # ############################################################################## -set -x -TIMESTAMP=$(date +"%Y%m%d%H%M") -echo "Logging to /var/log/yaml_builds/2genesis_$TIMESTAMP.log" -mkdir -p /var/log/yaml_builds -exec > /var/log/yaml_builds/2genesis_$TIMESTAMP.log +set -xe +LOGDIR="/var/log/akraino" +mkdir -p $LOGDIR +LOGFILE="$LOGDIR/${1}_$(date +"%Y%m%d%H%M%z")_$(basename $0|cut -d. -f1)" +echo "logging to $LOGFILE" +exec 1> >(tee -a $LOGFILE) exec 2>&1 source $(dirname $0)/setenv.sh @@ -43,18 +44,45 @@ fi source $(dirname $0)/env_$SITE.sh cd $YAML_BUILDS -# Install OS on Genesis + +echo "# Setup redfish tools to avoid race condition" +/opt/akraino/redfish/setup_tools.sh + +FILENAME=$(mktemp) +echo "# Updating BIOS settings on master and worker nodes in background [$FILENAME]" +python $YAML_BUILDS/scripts/update_bios_settings.py $SITE.yaml >$FILENAME & + +echo "# Install OS on Genesis" python $YAML_BUILDS/scripts/jcopy.py $SITE.yaml $YAML_BUILDS/tools/j2/serverrc.j2 $YAML_BUILDS/tools/"$GENESIS_NAME"rc -/opt/akraino/tools/install_server_os.sh --rc /opt/akraino/yaml_builds/tools/"$GENESIS_NAME"rc --skip-confirm +/opt/akraino/redfish/install_server_os.sh --rc /opt/akraino/yaml_builds/tools/"$GENESIS_NAME"rc --skip-confirm +echo "# Stage Airship files on Genesis" scp $YAML_BUILDS/tars/promenade-bundle-$SITE.tar $GENESIS_HOST:/tmp/ ssh $GENESIS_HOST << EOF + echo "#########################################" + echo "# Setup deployment files on genesis host" + echo "#########################################" # TODO avoid following hard coding$ route add -net 192.168.41.0/24 gw 192.168.2.1 bond0.41 mkdir -p /root/akraino - cp /tmp/promenade-bundle-$SITE.tar /root/akraino/ cd /root/akraino/ + cp /tmp/promenade-bundle-$SITE.tar . tar -xmf promenade-bundle-$SITE.tar + mv configs/promenade-bundle/deploy_site.sh . + mv configs/promenade-bundle/update_software.sh . + mv configs/promenade-bundle/openrc . + cp configs/promenade-bundle/run_openstack_cli.sh /usr/local/bin/openstack + find . -type f -not -path "./tools/*" -not -path "./global/*" EOF -# Update BIOS Setting -python $YAML_BUILDS/scripts/update_bios_settings.py $SITE.yaml + +echo "# Waiting for BIOS updates to finish on master and worker nodes" +wait +# Show output from BIOS updates on master and worker nodes +cat $FILENAME +rm $FILENAME + +echo "#######################################" +echo "# $0 finished" +echo "#######################################" +#pkill -9 $$ && exit 0 +