User VM's can test in TestON
Change-Id: I9dd60b757d16b0c09e9311ccf4a6616f129a0cb0
diff --git a/TestON/drivers/common/cli/onosclidriver.py b/TestON/drivers/common/cli/onosclidriver.py
index cc6fa9f..7c2acb5 100755
--- a/TestON/drivers/common/cli/onosclidriver.py
+++ b/TestON/drivers/common/cli/onosclidriver.py
@@ -61,7 +61,7 @@
self.karafPort = None
self.karafTimeout = None
self.address = None
-
+ self.karafPromptUser = None
self.dockerPrompt = None
self.graph = Graph()
super( OnosCliDriver, self ).__init__()
@@ -87,6 +87,8 @@
self.karafTimeout = self.options[ key ]
elif key == "karaf_port":
self.karafPort = self.options[ key ]
+ elif key == "karafPromptUser":
+ self.karafPromptUser = self.options[ key ]
self.home = self.checkOptions( self.home, "~/onos" )
self.karafUser = self.checkOptions( self.karafUser, self.user_name )
self.karafPass = self.checkOptions( self.karafPass, self.pwd )
@@ -94,8 +96,7 @@
self.dockerPrompt = self.checkOptions( self.dockerPrompt, "~/onos#" )
self.karafTimeout = self.checkOptions( self.karafTimeout, 7200000 )
- self.karafPrompt = self.karafUser + "@root >"
-
+ self.karafPrompt = self.karafPromptUser + "@root >"
for key in self.options:
if key == 'onosIp':
self.onosIp = self.options[ 'onosIp' ]
diff --git a/TestON/drivers/common/cli/onosclusterdriver.py b/TestON/drivers/common/cli/onosclusterdriver.py
index b0f924b..f3de41d 100755
--- a/TestON/drivers/common/cli/onosclusterdriver.py
+++ b/TestON/drivers/common/cli/onosclusterdriver.py
@@ -95,7 +95,9 @@
self.useDocker = False
self.dockerPrompt = None
self.maxNodes = None
+ self.karafPromptPass = None
self.kubeConfig = None
+ self.karafPromptUser = None
self.nodes = []
super( OnosClusterDriver, self ).__init__()
@@ -118,6 +120,14 @@
self.karafUser = self.options[ key ]
elif key == "karaf_password":
self.karafPass = self.options[ key ]
+ elif key == "node_username":
+ self.nodeUser = self.options[ key ]
+ elif key == "node_password":
+ self.nodePass = self.options[ key ]
+ elif key == "karafPrompt_username":
+ self.karafPromptUser = self.options[ key ]
+ elif key == "karafPrompt_password":
+ self.karafPromptPass = self.options[ key ]
elif key == "cluster_name":
prefix = self.options[ key ]
elif key == "useDocker":
@@ -137,6 +147,10 @@
self.home = self.checkOptions( self.home, "~/onos" )
self.karafUser = self.checkOptions( self.karafUser, self.user_name )
self.karafPass = self.checkOptions( self.karafPass, self.pwd )
+ self.nodeUser = self.checkOptions( self.nodeUser, self.user_name )
+ self.nodePass = self.checkOptions( self.nodePass, self.pwd )
+ self.karafPromptUser = self.checkOptions( self.karafPromptUser, self.user_name )
+ self.karafPromptPass = self.checkOptions( self.karafPromptPass, self.pwd )
self.webUser = self.checkOptions( self.webUser, "onos" )
self.webPass = self.checkOptions( self.webPass, "rocks" )
prefix = self.checkOptions( prefix, "ONOS" )
@@ -288,6 +302,7 @@
home = main.componentDictionary[name]['COMPONENTS'].get( "onos_home", None )
main.componentDictionary[name]['home'] = self.checkOptions( home, None )
main.componentDictionary[name]['type'] = "OnosCliDriver"
+ main.componentDictionary[name]['COMPONENTS']['karafPromptUser'] = self.karafPromptUser
main.componentDictionary[name]['connect_order'] = str( int( main.componentDictionary[name]['connect_order'] ) + 1 )
def createCliComponent( self, name, host ):
@@ -415,8 +430,8 @@
# TODO: for now we use karaf user name and password also for logging to the onos nodes
# FIXME: We shouldn't use karaf* for this, what we want is another set of variables to
# login to a shell on the server ONOS is running on
- #main.componentDictionary[name]['user'] = self.karafUser
- #main.componentDictionary[name]['password'] = self.karafPass
+ main.componentDictionary[name]['user'] = self.nodeUser
+ main.componentDictionary[name]['password'] = self.nodePass
main.componentDictionary[name]['connect_order'] = str( int( main.componentDictionary[name]['connect_order'] ) + 1 )
def createServerComponent( self, name, ipAddress ):
diff --git a/TestON/tests/SAMP/SAMPstartTemplate_3node/SAMPstartTemplate_3node.topo b/TestON/tests/SAMP/SAMPstartTemplate_3node/SAMPstartTemplate_3node.topo
index 612b658..163dfd2 100755
--- a/TestON/tests/SAMP/SAMPstartTemplate_3node/SAMPstartTemplate_3node.topo
+++ b/TestON/tests/SAMP/SAMPstartTemplate_3node/SAMPstartTemplate_3node.topo
@@ -15,8 +15,8 @@
<COMPONENTS>
<cluster_name></cluster_name> # Used as a prefix for cluster components. Defaults to 'ONOS'
<diff_clihost></diff_clihost> # if it has different host other than localhost for CLI. True or empty. OC# will be used if True.
- <karaf_username></karaf_username>
- <karaf_password></karaf_password>
+ <karaf_username>sdn</karaf_username>
+ <karaf_password>rocks</karaf_password>
<web_user></web_user>
<web_pass></web_pass>
<rest_port></rest_port>
diff --git a/TestON/tests/dependencies/Cluster.py b/TestON/tests/dependencies/Cluster.py
index 2e16a45..b905381 100644
--- a/TestON/tests/dependencies/Cluster.py
+++ b/TestON/tests/dependencies/Cluster.py
@@ -746,8 +746,15 @@
Returns True if it successfully checked
"""
results = True
- self.command( "getAddress", specificDriver=2 )
nodesOutput = self.command( "nodes", specificDriver=2 )
+ if None in nodesOutput:
+ return False
+ try:
+ self.command( "getAddress", specificDriver=2 )
+ except ( ValueError, TypeError ):
+ main.log.error( "Error parsing summary output" )
+ currentResult = False
+ return currentResult
ips = sorted( self.getIps( activeOnly=True ) )
for i in nodesOutput:
try: