Fix some startup issues now that we use cluster size
- Change max cluster size to size of largest cluster
- Cleanup some reading of params
- Catch when ONOS isn't fully started
Change-Id: I5b2ca791046bd4061d31355276958ead39f8b65c
(cherry picked from commit ace1f317e19fd50924e78e53b566d69db23f5683)
diff --git a/TestON/drivers/common/cli/onosclusterdriver.py b/TestON/drivers/common/cli/onosclusterdriver.py
index 6ca91b7..11c44ae 100755
--- a/TestON/drivers/common/cli/onosclusterdriver.py
+++ b/TestON/drivers/common/cli/onosclusterdriver.py
@@ -93,6 +93,7 @@
self.handle = None
self.useDocker = False
self.dockerPrompt = None
+ self.maxNodes = None
self.nodes = []
super( OnosClusterDriver, self ).__init__()
@@ -110,7 +111,7 @@
self.home = "~/onos"
for key in self.options:
if key == "home":
- self.home = self.options[ 'home' ]
+ self.home = self.options[ key ]
elif key == "karaf_username":
self.karafUser = self.options[ key ]
elif key == "karaf_password":
@@ -125,6 +126,9 @@
self.webUser = self.options[ key ]
elif key == "web_pass":
self.webPass = self.options[ key ]
+ elif key == "nodes":
+ # Maximum number of ONOS nodes to run, if there is any
+ self.maxNodes = self.options[ key ]
self.home = self.checkOptions( self.home, "~/onos" )
self.karafUser = self.checkOptions( self.karafUser, self.user_name )
@@ -134,20 +138,10 @@
prefix = self.checkOptions( prefix, "ONOS" )
self.useDocker = self.checkOptions( self.useDocker, False )
self.dockerPrompt = self.checkOptions( self.dockerPrompt, "~/onos#" )
+ self.maxNodes = int( self.checkOptions( self.maxNodes, 100 ) )
self.name = self.options[ 'name' ]
- # The 'nodes' tag is optional and it is not required in .topo file
- for key in self.options:
- if key == "nodes":
- # Maximum number of ONOS nodes to run, if there is any
- self.maxNodes = int( self.options[ 'nodes' ] )
- break
- self.maxNodes = None
-
- if self.maxNodes is None or self.maxNodes == "":
- self.maxNodes = 100
-
# Grabs all OC environment variables based on max number of nodes
# TODO: Also support giving an ip range as a compononet option
self.onosIps = {} # Dictionary of all possible ONOS ip