From 252c15bf19630b3a7e0934199172207fce16e9cd Mon Sep 17 00:00:00 2001 From: James Slagle Date: Tue, 20 Apr 2021 07:25:19 -0400 Subject: [PATCH] Handle nodes with no ctlplane IP's during deny list handling The deny list of IP addresses is returned as a list of empty strings, e.g. ['', '', ...] in the case where nothing is denied. This creates an issue for nodes that have no ctlplane IP addresses, such as when using deployed-server and all services are moved to other networks other than the ctlplane, and the ctlplane port for those nodes are noop'd or not set in DeployedServerPortMap. In that case, the ctlplane IP for those nodes is also returned as an empty string, in which case the code was trying to process the node as denied since it found a match of empty string in the list. This change adds a simple check that the denied IP is not none, in which case the deny logic handling is skipped. Change-Id: I5b38abd4c5ce0631f3f701a6fe907ffb7b0bbdf2 Signed-off-by: James Slagle --- tripleoclient/workflows/deployment.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tripleoclient/workflows/deployment.py b/tripleoclient/workflows/deployment.py index 2ce575379..3c2aee637 100644 --- a/tripleoclient/workflows/deployment.py +++ b/tripleoclient/workflows/deployment.py @@ -131,6 +131,8 @@ def get_overcloud_hosts(stack, ssh_network): # for each blacklisted ctlplane ip, remove the corresponding # ssh_network ip at that same index in the net_ips list for bcip in blacklisted_ctlplane_ips: + if not bcip: + continue index = ctlplane_ips.index(bcip) ctlplane_ips.pop(index) net_ips.pop(index)