2 ##############################################################################
3 # Copyright (c) 2018 AT&T Intellectual Property. All rights reserved. #
5 # Licensed under the Apache License, Version 2.0 (the "License"); you may #
6 # not use this file except in compliance with the License. #
8 # You may obtain a copy of the License at #
9 # http://www.apache.org/licenses/LICENSE-2.0 #
11 # Unless required by applicable law or agreed to in writing, software #
12 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT #
13 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
14 # See the License for the specific language governing permissions and #
15 # limitations under the License. #
16 ##############################################################################
19 LOGDIR="/var/log/akraino"
21 LOGFILE="$LOGDIR/${1}_$(date +"%Y%m%d%H%M%z")_$(basename $0|cut -d. -f1)"
22 echo "logging to $LOGFILE"
23 exec 1> >(tee -a $LOGFILE)
26 source $(dirname $0)/setenv.sh
30 echo "Please pass site name as command line argument"
37 if [ -z "$YAML_BUILDS" ]
39 echo "Please set YAML_BUILDS"
44 source $(dirname $0)/env_$SITE.sh
48 echo "# Setup redfish tools to avoid race condition"
49 /opt/akraino/redfish/setup_tools.sh
52 echo "# Updating BIOS settings on master and worker nodes in background [$FILENAME]"
53 python $YAML_BUILDS/scripts/update_bios_settings.py $SITE.yaml >$FILENAME &
55 echo "# Install OS on Genesis"
56 python $YAML_BUILDS/scripts/jcopy.py $SITE.yaml $YAML_BUILDS/tools/j2/serverrc.j2 $YAML_BUILDS/tools/"$GENESIS_NAME"rc
57 /opt/akraino/redfish/install_server_os.sh --rc /opt/akraino/yaml_builds/tools/"$GENESIS_NAME"rc --skip-confirm
59 echo "# Stage Airship files on Genesis"
60 scp $YAML_BUILDS/tars/promenade-bundle-$SITE.tar $GENESIS_HOST:/tmp/
61 ssh $GENESIS_HOST << EOF
62 # TODO avoid following hard coding$
63 route add -net 192.168.41.0/24 gw 192.168.2.1 bond0.41
64 mkdir -p /root/akraino
66 cp /tmp/promenade-bundle-$SITE.tar .
67 tar -xmf promenade-bundle-$SITE.tar
68 mv configs/promenade-bundle/deploy_site.sh .
69 mv configs/promenade-bundle/update_software.sh .
70 mv configs/promenade-bundle/openrc .
71 cp configs/run_openstack_cli.sh /usr/local/bin/openstack
74 echo "# Waiting for BIOS updates to finish on master and worker nodes"
76 # Show output from BIOS updates on master and worker nodes
80 echo "#######################################"
82 echo "#######################################"
83 #pkill -9 $$ && exit 0