Allow overriding of nodes.json location 61/4561/1
authorTodd Malsbary <todd.malsbary@intel.com>
Fri, 19 Nov 2021 23:27:06 +0000 (15:27 -0800)
committerTodd Malsbary <todd.malsbary@intel.com>
Mon, 13 Dec 2021 21:35:54 +0000 (13:35 -0800)
Signed-off-by: Todd Malsbary <todd.malsbary@intel.com>
Change-Id: Id9e88dadeda2db0c57a11344cd50808dcff327a6

deploy/metal3/scripts/01_metal3.sh
env/lib/common.sh

index b3995a8..5780858 100755 (executable)
@@ -86,8 +86,8 @@ function configure_nodes {
     fi
 
     #make sure nodes.json file in /opt/ironic/ are configured
-    if [ ! -f $IRONIC_DATA_DIR/nodes.json ]; then
-        cp ${SCRIPTDIR}/nodes.json.sample $IRONIC_DATA_DIR/nodes.json
+    if [ ! -f $NODES_FILE ]; then
+        cp ${SCRIPTDIR}/nodes.json.sample $NODES_FILE
     fi
 }
 
@@ -106,8 +106,8 @@ function clean_bm_hosts {
 
 function clean_all {
     list_nodes | clean_bm_hosts
-    if [ -f $IRONIC_DATA_DIR/nodes.json ]; then
-        rm -rf $IRONIC_DATA_DIR/nodes.json
+    if [ -f $NODES_FILE ]; then
+        rm -rf $NODES_FILE
     fi
 }
 
index 2009c58..6ee235e 100755 (executable)
@@ -2,6 +2,7 @@
 set -eu -o pipefail
 
 IRONIC_DATA_DIR=${IRONIC_DATA_DIR:-"/opt/ironic"}
+NODES_FILE=${NODES_FILE:-"${IRONIC_DATA_DIR}/nodes.json"}
 #IRONIC_PROVISIONING_INTERFACE is required to be provisioning, don't change it
 IRONIC_INTERFACE=${IRONIC_INTERFACE:-}
 IRONIC_PROVISIONING_INTERFACE=${IRONIC_PROVISIONING_INTERFACE:-"provisioning"}
@@ -78,8 +79,6 @@ function call_api {
 }
 
 function list_nodes {
-    NODES_FILE="${IRONIC_DATA_DIR}/nodes.json"
-
     if [ ! -f "$NODES_FILE" ]; then
         exit 1
     fi
@@ -125,7 +124,6 @@ function networkdata_networks_field {
     name=$1
     network=$2
     field=$3
-    NODES_FILE="${IRONIC_DATA_DIR}/nodes.json"
     cat $NODES_FILE | jq -c -r --arg name "$name" --arg network "$network" --arg field "$field" '.nodes[] | select(.name==$name) | .net.networks[] | select(.id==$network).'${field}
 }
 
@@ -134,15 +132,12 @@ function networkdata_links_field {
     name=$1
     link=$2
     field=$3
-    NODES_FILE="${IRONIC_DATA_DIR}/nodes.json"
     cat $NODES_FILE | jq -c -r --arg name "$name" --arg link "$link" --arg field "$field" '.nodes[] | select(.name==$name) | .net.links[] | select(.id==$link).'${field}
 }
 
 function node_networkdata {
     name=$1
 
-    NODES_FILE="${IRONIC_DATA_DIR}/nodes.json"
-
     if [ ! -f "$NODES_FILE" ]; then
         exit 1
     fi