From: davidplunkett Date: Thu, 14 Mar 2019 19:18:01 +0000 (+0000) Subject: merge tools and redfish directories, fix var names X-Git-Tag: 1.0.0~25 X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F73%2F473%2F1;p=redfish.git merge tools and redfish directories, fix var names Change-Id: I5ca1253ecc60ba74d52009b1609ee2ba2245f311 Signed-off-by: davidplunkett --- diff --git a/apply_dellxml.sh b/apply_dellxml.sh index 572ded2..bd4c430 100755 --- a/apply_dellxml.sh +++ b/apply_dellxml.sh @@ -84,12 +84,12 @@ for VAR in $CHECKLIST; do done # CHECK IF TEMPLATE PASSED AND EXISTS -if [ -z "$TEMPLATE" ] || ! [ -f "$TOOLS_ROOT/$TEMPLATE" ]; then - echo "ERROR: Invalid or missing template file [$TOOLS_ROOT/$TEMPLATE]" +if [ -z "$TEMPLATE" ] || ! [ -f "$REDFISH_ROOT/$TEMPLATE" ]; then + echo "ERROR: Invalid or missing template file [$REDFISH_ROOT/$TEMPLATE]" echo "usage: ./apply_dellxml.sh [--rc settingsfile] --template templatefile [--no-confirm] [--no-apply-hw] [--help]" exit 1 else - echo "Using template [$TOOLS_ROOT/$TEMPLATE]" + echo "Using template [$REDFISH_ROOT/$TEMPLATE]" fi # SET ADDITIONAL VARIABLES BASED ON RC FILE @@ -124,7 +124,7 @@ STIME=$(date +%s) echo "Creating server BIOS/RAID settings file [$BUILD_ROOT/$XMLFILE] for server [$SRV_NAME]" mkdir -p $BUILD_ROOT rm -f $BUILD_ROOT/$XMLFILE -cp -f $TOOLS_ROOT/$TEMPLATE $BUILD_ROOT/$XMLFILE +cp -f $REDFISH_ROOT/$TEMPLATE $BUILD_ROOT/$XMLFILE for VAR in $(set | grep -P "^SRV_|^BUILD_" | cut -f 1 -d'='); do sed -i -e "s|@@$VAR@@|${!VAR}|g" $BUILD_ROOT/$XMLFILE diff --git a/apply_hpejson.sh b/apply_hpejson.sh index 10bc8ec..da0f4b0 100755 --- a/apply_hpejson.sh +++ b/apply_hpejson.sh @@ -84,12 +84,12 @@ for VAR in $CHECKLIST; do done # CHECK IF TEMPLATE PASSED AND EXISTS -if [ -z "$TEMPLATE" ] || ! [ -f "$TOOLS_ROOT/$TEMPLATE" ]; then - echo "ERROR: Invalid or missing template file [$TOOLS_ROOT/$TEMPLATE]" +if [ -z "$TEMPLATE" ] || ! [ -f "$REDFISH_ROOT/$TEMPLATE" ]; then + echo "ERROR: Invalid or missing template file [$REDFISH_ROOT/$TEMPLATE]" echo "usage: ./apply_hpejson.sh [--rc settingsfile] --template templatefile [--no-confirm] [--no-apply-hw] [--help]" exit 1 else - echo "Using template [$TOOLS_ROOT/$TEMPLATE]" + echo "Using template [$REDFISH_ROOT/$TEMPLATE]" fi # SET ADDITIONAL VARIABLES BASED ON RC FILE @@ -124,7 +124,7 @@ STIME=$(date +%s) echo "Creating server BIOS/RAID settings file [$BUILD_ROOT/$JSONFILE] for server [$SRV_NAME]" mkdir -p $BUILD_ROOT rm -f $BUILD_ROOT/$JSONFILE -cp -f $TOOLS_ROOT/$TEMPLATE $BUILD_ROOT/$JSONFILE +cp -f $REDFISH_ROOT/$TEMPLATE $BUILD_ROOT/$JSONFILE for VAR in $(set | grep -P "^SRV_|^BUILD_" | cut -f 1 -d'='); do sed -i -e "s|@@$VAR@@|${!VAR}|g" $BUILD_ROOT/$JSONFILE @@ -143,7 +143,7 @@ if [ -z "$NO_APPLY_HW" ]; then ## PUSH HARDWARE CONFIG JSON USING REDFISH - BYPASS PROXY FOR INTERNAL CONNECTION TO IDRAC echo "Applying server settings file [$BUILD_ROOT/$JSONFILE] to [$SRV_OOB_IP]" echo "This step could take up to 10 minutes" - HTTPS_PROXY= https_proxy= PYTHONPATH=$HPE_ROOT/examples/Redfish/ python -u "$TOOLS_ROOT/set_hpe_config.py" \ + HTTPS_PROXY= https_proxy= PYTHONPATH=$HPE_ROOT/examples/Redfish/ python -u "$REDFISH_ROOT/set_hpe_config.py" \ -ip $SRV_OOB_IP -u $SRV_OOB_USR -p $SRV_OOB_PWD -f $BUILD_ROOT/$JSONFILE 2>&1 if [ "$?" -ne 0 ]; then echo "ERROR: failed applying server BIOS/RAID settings" diff --git a/buildrc b/buildrc index c2af2e6..f9c12ec 100644 --- a/buildrc +++ b/buildrc @@ -25,15 +25,15 @@ export DELL_GIT=${DELL_GIT:-https://github.com/dell/iDRAC-Redfish-Scripting.git} export DELL_GIT_COMMIT=${DELL_GIT_COMMIT:-64f184c8c37ed1f64831c5695cd69092105e5eec} export HPE_GIT=${HPE_GIT:-https://github.com/HewlettPackard/python-ilorest-library.git} -export REDFISH_ROOT=${REDFISH_ROOT:-/opt/akraino} -export WEB_ROOT=${WEB_ROOT:-$REDFISH_ROOT/www} -export DHCP_ROOT=${DHCP_ROOT:-$REDFISH_ROOT/dhcp} -export TOOLS_ROOT=${TOOLS_ROOT:-$REDFISH_ROOT/tools} -export DELL_ROOT=${DELL_ROOT:-$REDFISH_ROOT/dell} -export HPE_ROOT=${HPE_ROOT:-$REDFISH_ROOT/hpe} +export AKRAINO_ROOT=${AKRAINO_ROOT:-/opt/akraino} +export WEB_ROOT=${WEB_ROOT:-$AKRAINO_ROOT/www} +export DHCP_ROOT=${DHCP_ROOT:-$AKRAINO_ROOT/dhcp} +export REDFISH_ROOT=${REDFISH_ROOT:-$AKRAINO_ROOT/redfish} +export DELL_ROOT=${DELL_ROOT:-$AKRAINO_ROOT/dell} +export HPE_ROOT=${HPE_ROOT:-$AKRAINO_ROOT/hpe} export REGION_ROOT=${REGION_ROOT:-$WEB_ROOT/region} -export BUILD_ROOT=${BUILD_ROOT:-$REDFISH_ROOT/server-config} -export IPXE_ROOT=${IPXE_ROOT:-$REDFISH_ROOT/ipxe} +export BUILD_ROOT=${BUILD_ROOT:-$AKRAINO_ROOT/server-config} +export IPXE_ROOT=${IPXE_ROOT:-$AKRAINO_ROOT/ipxe} export UBUNTU_URL=${UBUNTU_URL:-http://releases.ubuntu.com/16.04/ubuntu-16.04.5-server-amd64.iso} export BUILD_WEBPORT=8090 diff --git a/create_ipxe.sh b/create_ipxe.sh index 2dda187..b092f98 100755 --- a/create_ipxe.sh +++ b/create_ipxe.sh @@ -48,7 +48,7 @@ done set -- "${POSITIONAL[@]}" # restore positional parameters # LOAD BUILD DEFAULT VALUES IF BUILD VARIABLES ARE NOT LOADED -if [ -z "$REDFISH_ROOT" ]; then +if [ -z "$AKRAINO_ROOT" ]; then BASEDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" if [ -z "$BASEDIR" ] || ! [ -f "$BASEDIR/buildrc" ]; then echo "ERROR: Invalid or missing build variables rcfile [$BASEDIR/buildrc]" @@ -88,7 +88,7 @@ sed -i 's|//#define VLAN_CMD|#define VLAN_CMD|g' $IPXE_ROOT/src/config/general.h rm -f $IPXE_ROOT/boot.ipxe sed -e "s|@@IPXE_VLAN@@|$IPXE_VLAN|g" \ -e "s|@@IPXE_INTF@@|$IPXE_INTF|g" \ - $TOOLS_ROOT/boot.ipxe.template > $IPXE_ROOT/boot.ipxe + $REDFISH_ROOT/boot.ipxe.template > $IPXE_ROOT/boot.ipxe if [ ! -f "$IPXE_ROOT/boot.ipxe" ]; then echo "ERROR: failed creating script [$IPXE_ROOT/boot.ipxe]" exit 1 diff --git a/install_server_os.sh b/install_server_os.sh index 9b8df70..75d67ee 100755 --- a/install_server_os.sh +++ b/install_server_os.sh @@ -162,7 +162,7 @@ fi case $SRV_OEM in Dell|DELL) if [ -z "$SRV_MAC" ]; then - SRV_MAC=$(. $TOOLS_ROOT/get_dellnicmac.sh --nic $SRV_HTTP_BOOT_DEV) + SRV_MAC=$(. $REDFISH_ROOT/get_dellnicmac.sh --nic $SRV_HTTP_BOOT_DEV) if [ "$?" -ne 0 ]; then echo "ERROR: Unable to get Dell nic mac address from [$SRV_OOB_IP]" exit 1; @@ -182,7 +182,7 @@ case $SRV_OEM in esac ## UPDATE WEB ROOT WITH UBUNTU ISO -. $TOOLS_ROOT/update_webroot.sh; +. $REDFISH_ROOT/update_webroot.sh; if [ "$?" -ne 0 ]; then echo "ERROR: failed to add [$UBUNTU_ISO] contents to web root" exit 1 @@ -190,14 +190,14 @@ fi ## CREATE IPXE FILE echo "Creating ixpe.efi for web root in folder [$WEB_ROOT] using interface [$SRV_IPXE_INF] and vlan [$SRV_VLAN]" -if ! (IPXE_VLAN=$SRV_VLAN IPXE_INTF=$SRV_IPXE_INF $TOOLS_ROOT/create_ipxe.sh); then +if ! (IPXE_VLAN=$SRV_VLAN IPXE_INTF=$SRV_IPXE_INF $REDFISH_ROOT/create_ipxe.sh); then echo "ERROR: failed to add ipxe file to web root" exit 1 fi ## ADD FIRSTBOOT SCRIPT TO WEB ROOT echo "Adding firstboot script [$SRV_NAME.firstboot.sh] to web root [$WEB_ROOT]" -cp -f $TOOLS_ROOT/$SRV_FIRSTBOOT_TEMPLATE $WEB_ROOT/$SRV_NAME.firstboot.sh +cp -f $REDFISH_ROOT/$SRV_FIRSTBOOT_TEMPLATE $WEB_ROOT/$SRV_NAME.firstboot.sh for VAR in $(set | grep -P "^SRV_|^BUILD_" | cut -f 1 -d'='); do sed -i -e "s|@@$VAR@@|${!VAR}|g" $WEB_ROOT/$SRV_NAME.firstboot.sh @@ -213,7 +213,7 @@ fi ## CREATE SERVER SEED FILE echo "Creating seed file [$WEB_ROOT/$SRV_NAME.seed] for server [$SRV_NAME]" -cp -f $TOOLS_ROOT/ubuntu.seed.template $WEB_ROOT/$SRV_NAME.seed +cp -f $REDFISH_ROOT/ubuntu.seed.template $WEB_ROOT/$SRV_NAME.seed for VAR in $(set | grep -P "^SRV_|^BUILD_" | cut -f 1 -d'='); do sed -i -e "s|@@$VAR@@|${!VAR}|g" $WEB_ROOT/$SRV_NAME.seed @@ -244,7 +244,7 @@ fi if [ ! -f "$DHCP_ROOT/dhcpd.conf" ]; then echo "Creating new dhcp configuration [$DHCP_ROOT/dhcpd.conf]" mkdir -p $DHCP_ROOT - cp -f $TOOLS_ROOT/dhcpd.conf.template $DHCP_ROOT/dhcpd.conf + cp -f $REDFISH_ROOT/dhcpd.conf.template $DHCP_ROOT/dhcpd.conf fi SRV_DNSCSV=$(echo $SRV_DNS | tr ' ' ',') @@ -319,24 +319,24 @@ fi case $SRV_OEM in Dell|DELL) if [ -n "$SRV_BIOS_TEMPLATE" ]; then - . $TOOLS_ROOT/apply_dellxml.sh --template $SRV_BIOS_TEMPLATE + . $REDFISH_ROOT/apply_dellxml.sh --template $SRV_BIOS_TEMPLATE echo "Completed update with status [$?]" sleep 80 fi if [ -n "$SRV_BOOT_TEMPLATE" ]; then - . $TOOLS_ROOT/apply_dellxml.sh --template $SRV_BOOT_TEMPLATE + . $REDFISH_ROOT/apply_dellxml.sh --template $SRV_BOOT_TEMPLATE echo "Completed update with status [$?]" sleep 20 fi ;; HP|HPE) if [ -n "$SRV_BIOS_TEMPLATE" ]; then - . $TOOLS_ROOT/apply_hpejson.sh --template $SRV_BIOS_TEMPLATE + . $REDFISH_ROOT/apply_hpejson.sh --template $SRV_BIOS_TEMPLATE echo "Completed update with status [$?]" fi if [ -n "$SRV_BOOT_TEMPLATE" ]; then - . $TOOLS_ROOT/apply_hpejson.sh --template $SRV_BOOT_TEMPLATE + . $REDFISH_ROOT/apply_hpejson.sh --template $SRV_BOOT_TEMPLATE echo "Completed update with status [$?]" echo "Waiting for server to reboot with new settings." fi diff --git a/setup_tools.sh b/setup_tools.sh index 44ac6da..adeb4ad 100755 --- a/setup_tools.sh +++ b/setup_tools.sh @@ -43,7 +43,7 @@ done set -- "${POSITIONAL[@]}" # restore positional parameters # LOAD BUILD DEFAULT VALUES IF BUILD VARIABLES ARE NOT LOADED -if [ -z "$REDFISH_ROOT" ]; then +if [ -z "$AKRAINO_ROOT" ]; then BASEDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" if [ -z "$BASEDIR" ] || ! [ -f "$BASEDIR/buildrc" ]; then echo "ERROR: Invalid or missing build variables rcfile [$BASEDIR/buildrc]" @@ -53,7 +53,7 @@ if [ -z "$REDFISH_ROOT" ]; then fi # CHECK A FEW REQUIRED VARIABLES -if [ -z "$WEB_ROOT" ] || [ -z "$DHCP_ROOT" ] || [ -z "$TOOLS_ROOT" ] || [ -z "$DELL_ROOT" ] || [ -z "$BUILD_ROOT" ]; then +if [ -z "$WEB_ROOT" ] || [ -z "$DHCP_ROOT" ] || [ -z "$REDFISH_ROOT" ] || [ -z "$DELL_ROOT" ] || [ -z "$BUILD_ROOT" ]; then echo "ERROR: Invalid or missing variables in rcfile [$BASEDIR/buildrc]" exit 1 fi @@ -75,18 +75,18 @@ for PKG in $PACKAGES ; do fi done -## DOWNLOAD TOOLS TO TOOLS_ROOT IF TOOLS FOLDER MISSING -if [ ! -d "$TOOLS_ROOT" ]; then - echo "Installing latest tools from [$REDFISH_REPO] to [$TOOLS_ROOT]" - mkdir -p $TOOLS_ROOT - curl -L "$REDFISH_REPO" | tar -xzo -C $TOOLS_ROOT +## DOWNLOAD TOOLS TO REDFISH_ROOT IF TOOLS FOLDER MISSING +if [ ! -d "$REDFISH_ROOT" ]; then + echo "Installing latest tools from [$REDFISH_REPO] to [$REDFISH_ROOT]" + mkdir -p $REDFISH_ROOT + curl -L "$REDFISH_REPO" | tar -xzo -C $REDFISH_ROOT fi -if [ ! -f "$TOOLS_ROOT/boot.ipxe.template" ]; then - echo "ERROR: failed cloning tools from [$REDFISH_GIT] to [$TOOLS_ROOT]" +if [ ! -f "$REDFISH_ROOT/boot.ipxe.template" ]; then + echo "ERROR: failed cloning tools from [$REDFISH_GIT] to [$REDFISH_ROOT]" exit 1 fi -## DOWNLOAD DELL REDFISH TOOLS_ROOT IF DELL FOLDER MISSING +## DOWNLOAD DELL REDFISH REDFISH_ROOT IF DELL FOLDER MISSING if [ ! -d "$DELL_ROOT" ]; then echo "Cloning Dell redfish source from [$DELL_GIT] to [$DELL_ROOT]" git clone $DELL_GIT $DELL_ROOT @@ -104,7 +104,7 @@ if [ ! -f "$DELL_ROOT/Redfish Python/ImportSystemConfigurationLocalFilenameREDFI exit 1 fi -## DOWNLOAD HPE REDFISH TOOLS_ROOT IF HPE FOLDER MISSING +## DOWNLOAD HPE REDFISH REDFISH_ROOT IF HPE FOLDER MISSING if [ ! -d "$HPE_ROOT" ]; then echo "Cloning HPE redfish tools from [$HPE_GIT] to [$HPE_ROOT]" git clone $HPE_GIT $HPE_ROOT @@ -121,5 +121,5 @@ if [ ! -f "$HPE_ROOT/examples/Redfish/_redfishobject.py" ]; then exit 1 fi -echo "Tools are ready in [$REDFISH_ROOT]" +echo "Tools are ready in [$AKRAINO_ROOT]" diff --git a/update_webroot.sh b/update_webroot.sh index c02147d..280cf7f 100755 --- a/update_webroot.sh +++ b/update_webroot.sh @@ -115,7 +115,7 @@ mkdir -p $UBUNTU_FOLDER ## COPY FILES echo "Extracting files to [$WEB_ROOT]" -cp -f $TOOLS_ROOT/sources.list $WEB_ROOT +cp -f $REDFISH_ROOT/sources.list $WEB_ROOT xorriso -osirrox on:auto_chmod_on -indev $UBUNTU_ISO -find / -type d -exec chmod u+rwx -- -extract / $UBUNTU_FOLDER -rollback_end 2>&1 | sed -e "s/^/ /g" ## EXPAND KERNEL AND INITRD (HWE AND STANDARD) @@ -136,13 +136,13 @@ sed -e "s|@@KERNEL@@|$HWE_KERNEL|g" \ -e "s|@@INITRD@@|$HWE_INITRD|g" \ -e "s|@@BASE_KERNEL@@|$HWE_OIMAGE|g" \ -e "s|@@UBUNTU_ROOT@@|$UBUNTU_ROOT|g" \ - $TOOLS_ROOT/script.ipxe.template > $WEB_ROOT/script-hwe-$ISO_VERSION-$ISO_ARCH.ipxe + $REDFISH_ROOT/script.ipxe.template > $WEB_ROOT/script-hwe-$ISO_VERSION-$ISO_ARCH.ipxe sed -e "s|@@KERNEL@@|$STD_KERNEL|g" \ -e "s|@@INITRD@@|$STD_INITRD|g" \ -e "s|@@BASE_KERNEL@@|$STD_OIMAGE|g" \ -e "s|@@UBUNTU_ROOT@@|$UBUNTU_ROOT|g" \ - $TOOLS_ROOT/script.ipxe.template > $WEB_ROOT/script-$ISO_VERSION-$ISO_ARCH.ipxe + $REDFISH_ROOT/script.ipxe.template > $WEB_ROOT/script-$ISO_VERSION-$ISO_ARCH.ipxe echo "Files for Ubuntu version [$ISO_VERSION] [$ISO_ARCH] are ready in folder [$WEB_ROOT]" echo "Use script-hwe-$ISO_VERSION-$ISO_ARCH.ipxe or script-$ISO_VERSION-$ISO_ARCH.ipxe in the dhcp config depending on the kernel version required."