Package: openstack-cluster-installer-agent
Version: 42.3.0~bpo12+1

The command used in openstack-cluster-installer-agent to determine the
speed of a NIC can in some cases return the string "null", but the script
only checks for an empty response when checking if no speed could be
determined

# ip link show dev ens3 | grep 'link/ether' | awk '{print $2}'
52:54:00:55:74:03
# lshw -class network -json 2>/dev/null | jq '.[] | select(.serial == 
"'52:54:00:55:74:03'") | .capacity' | head -n 1
null

This prevents installations as OCI cannot find a matching NIC to
configure the network.

I've attached a patch which updates openstack-cluster-installer-agent to
handle the "null" response

--

Regards
Jim
diff --git a/common/usr/bin/openstack-cluster-installer-agent b/common/usr/bin/openstack-cluster-installer-agent
index 85df5d6e..22f30999 100755
--- a/common/usr/bin/openstack-cluster-installer-agent
+++ b/common/usr/bin/openstack-cluster-installer-agent
@@ -194,7 +194,7 @@ for i in $(ip link show | grep -v '^ ' | grep -v 'lo:' | cut -d' ' -f2 | cut -d:
 	fi
 	NET_DRIVER_NAME=$(ethtool -i $i | grep driver | sed -e 's/driver: //' | awk '{print $1}')
 	LSHW_SPEED=$(lshw -class network -json 2>/dev/null | jq '.[] | select(.serial == "'${MAC_ADDR}'") | .capacity' | head -n 1)
-	if [ -n "${LSHW_SPEED}" ] ; then
+	if [ -n "${LSHW_SPEED}" ] && [ "${LSHW_SPEED}" != "null" ] ; then
 		ETH_SPEED=$(( ${LSHW_SPEED} / 1000000 ))
 	else
 		# If we can't find a speed, let's report it as 100 MBits/s

Reply via email to