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 ):