export REGION_ROOT=${REGION_ROOT:-$WEB_ROOT/region}
export BUILD_ROOT=${BUILD_ROOT:-$AKRAINO_ROOT/server-config}
export IPXE_ROOT=${IPXE_ROOT:-$AKRAINO_ROOT/ipxe}
+export YAML_ROOT=${YAML_ROOT:-$AKRAINO_ROOT/yaml_builds}
export UBUNTU_URL=${UBUNTU_URL:-http://releases.ubuntu.com/16.04/ubuntu-16.04.6-server-amd64.iso}
export BUILD_WEBPORT=8090
# LOAD SERVER VARIABLES IF SERVER RCFILE PROVIDED - OTHERWISE ASSUME THE VARIABLES HAVE BEEN EXPORTED
if [ -n "$RCFILE" ] && [ -f "$RCFILE" ]; then
+ # IF RCFILE IS YAML FORMAL THEN CONVERT RCFILE TO PROPERTIES FILE
+ if [ "$(grep -vP '^#|^\s*$' $RCFILE | head -n 1)" = "---" ]; then
+ NEWRCFILE=$BUILD_ROOT/$(basename "$RCFILE" | cut -d. -f1)rc
+ echo "WARNING: Converting yaml file [$RCFILE] to properties file [$NEWRCFILE]"
+ python $YAML_ROOT/scripts/jcopy.py $RCFILE $YAML_ROOT/tools/j2/serverrc.j2 $NEWRCFILE
+ export RCFILE=$NEWRCFILE
+ fi
source $RCFILE
fi
done
set -- "${POSITIONAL[@]}" # restore positional parameters
+# SKIP IF TOOLS HAVE ALREADY BEEN SETUP
+if [ -n "$REDFISH_TOOLS_SETUP" ]; then
+ exit 0
+fi
+
# LOAD BUILD DEFAULT VALUES IF BUILD VARIABLES ARE NOT LOADED
if [ -z "$AKRAINO_ROOT" ]; then
BASEDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
## CHECK THAT REQUIRED PACKAGES ARE INSTALLED
echo "Checking for known required packages"
-PACKAGES="xorriso sshpass python-requests python-pip coreutils"
+PACKAGES="docker python xorriso sshpass python-requests python-pip python-yaml python-jinja2 make gcc coreutils"
for PKG in $PACKAGES ; do
if ! apt list $PKG 2>/dev/null | grep "$PKG.*installed.*" ; then
echo "Attempting to install missing package $PKG"
fi
echo "Tools are ready in [$AKRAINO_ROOT]"
-
+export REDFISH_TOOLS_SETUP="True"