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
}
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
}
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"}
}
function list_nodes {
- NODES_FILE="${IRONIC_DATA_DIR}/nodes.json"
-
if [ ! -f "$NODES_FILE" ]; then
exit 1
fi
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}
}
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