Update Cluster Driver

Change-Id: I8a3a57e19637ff210548e57d41178e6f194cf694
diff --git a/TestON/tests/SCPF/SCPFhostLat/SCPFhostLat.py b/TestON/tests/SCPF/SCPFhostLat/SCPFhostLat.py
index ec12f35..fb6dec8 100644
--- a/TestON/tests/SCPF/SCPFhostLat/SCPFhostLat.py
+++ b/TestON/tests/SCPF/SCPFhostLat/SCPFhostLat.py
@@ -33,7 +33,7 @@
     def __init__( self ):
         self.default = ''
 
-    def CASE0( self, main):
+    def CASE0( self, main ):
         import sys
         import json
         import time
@@ -83,18 +83,13 @@
             main.log.info( "Cresting DB file" )
             with open( main.dbFileName, "w+" ) as dbFile:
                 dbFile.write( "" )
-            stepResult = main.testSetUp.gitPulling()
+            stepResult = main.testSetUp.envSetup()
         except Exception as e:
             main.testSetUp.envSetupException( e )
         main.testSetUp.evnSetupConclusion( stepResult )
 
         main.commit = main.commit.split( " " )[ 1 ]
 
-    def CASE1( self ):
-        # main.scale[ 0 ] determines the current number of ONOS controller
-        main.testSetUp.getNumCtrls( True )
-        main.testSetUp.envSetup( includeGitPull=False, makeMaxNodes=False )
-
     def CASE2( self, main ):
         """
         - Uninstall ONOS cluster
@@ -102,17 +97,16 @@
         - Install ONOS cluster
         - Connect to cli
         """
-        main.testSetUp.ONOSSetUp( main.Mininet1, True,
-                                  cellName=main.cellName, killRemoveMax=False,
-                                  CtrlsSet=False )
+        main.testSetUp.ONOSSetUp( main.Mininet1, main.Cluster, True,
+                                  cellName=main.cellName, killRemoveMax=False )
 
     def CASE11( self, main ):
         main.log.info( "set and configure Application" )
         import json
         import time
-        time.sleep(main.startUpSleep)
+        time.sleep( main.startUpSleep )
         main.step( "Activating org.onosproject.proxyarp" )
-        appStatus = utilities.retry( main.ONOSrest1.activateApp,
+        appStatus = utilities.retry( main.Cluster.active( 0 ).REST.activateApp,
                                      main.FALSE,
                                      [ 'org.onosproject.proxyarp' ],
                                      sleep=3,
@@ -120,40 +114,41 @@
         utilities.assert_equals( expect=main.TRUE,
                                  actual=appStatus,
                                  onpass="Successfully activated proxyarp",
-                                 onfail="Failed to activated proxyarp")
+                                 onfail="Failed to activated proxyarp" )
 
         main.step( "Set up Default Topology Provider" )
         appStatus = main.TRUE
         configName = 'org.onosproject.net.topology.impl.DefaultTopologyProvider'
         configParam = 'maxEvents'
-        appStatus = appStatus and main.CLIs[0].setCfg(  configName, configParam,'1' )
+        appStatus = appStatus and main.Cluster.active( 0 ).CLI.setCfg( configName, configParam, '1' )
         configParam = 'maxBatchMs'
-        appStatus = appStatus and main.CLIs[0].setCfg( configName, configParam, '0')
+        appStatus = appStatus and main.Cluster.active( 0 ).CLI.setCfg( configName, configParam, '0' )
         configParam = 'maxIdleMs'
-        appStatus = appStatus and main.CLIs[0].setCfg( configName, configParam,'0' )
+        appStatus = appStatus and main.Cluster.active( 0 ).CLI.setCfg( configName, configParam, '0' )
         utilities.assert_equals( expect=main.TRUE,
                                  actual=appStatus,
                                  onpass="Successfully set DefaultTopologyProvider",
                                  onfail="Failed to set DefaultTopologyProvider" )
 
-        time.sleep( main.startUpSleep)
-        main.step('Starting mininet topology')
-        mnStatus = main.Mininet1.startNet(args='--topo=linear,1')
+        time.sleep( main.startUpSleep )
+        main.step( 'Starting mininet topology' )
+        mnStatus = main.Mininet1.startNet( args='--topo=linear,1' )
         utilities.assert_equals( expect=main.TRUE,
                                  actual=mnStatus,
                                  onpass="Successfully started Mininet",
                                  onfail="Failed to activate Mininet" )
-        main.step("Assinging masters to switches")
+        main.step( "Assinging masters to switches" )
         switches = main.Mininet1.getSwitches()
-        swStatus = main.Mininet1.assignSwController( sw=switches.keys(), ip=main.ONOSip[0] )
+        swStatus = main.Mininet1.assignSwController( sw=switches.keys(),
+                                                     ip=main.Cluster.active( 0 ).ipAddress )
         utilities.assert_equals( expect=main.TRUE,
                                  actual=swStatus,
                                  onpass="Successfully assigned switches to masters",
                                  onfail="Failed assign switches to masters" )
 
-        time.sleep( main.startUpSleep)
+        time.sleep( main.startUpSleep )
 
-    def CASE20(self, main):
+    def CASE20( self, main ):
         """
         host1 send arping package and measure latency
 
@@ -180,9 +175,9 @@
         # Host adding measurement
         assertion = main.TRUE
 
-        main.log.report('Latency of adding one host to ONOS')
-        main.log.report('First ' + str( main.iterIgnore ) + ' iterations ignored' + ' for jvm warmup time')
-        main.log.report('Total iterations of test: ' + str( main.numlter ) )
+        main.log.report( 'Latency of adding one host to ONOS' )
+        main.log.report( 'First ' + str( main.iterIgnore ) + ' iterations ignored' + ' for jvm warmup time' )
+        main.log.report( 'Total iterations of test: ' + str( main.numlter ) )
 
         addingHostTime = []
         metricsResultList = []
@@ -191,16 +186,16 @@
             with open( main.tsharkResultPath, "w" ) as dbFile:
                 dbFile.write( "" )
 
-            main.log.info('Starting tshark capture')
+            main.log.info( 'Starting tshark capture' )
             main.ONOSbench.tsharkGrep( main.tsharkPacketIn, main.tsharkResultPath )
             time.sleep( main.measurementSleep )
 
-            main.log.info('host 1 arping...')
-            main.Mininet1.arping(srcHost='h1', dstHost='10.0.0.2')
+            main.log.info( 'host 1 arping...' )
+            main.Mininet1.arping( srcHost='h1', dstHost='10.0.0.2' )
 
             time.sleep( main.measurementSleep )
 
-            main.log.info('Stopping all Tshark processes')
+            main.log.info( 'Stopping all Tshark processes' )
             main.ONOSbench.tsharkStop()
 
             time.sleep( main.measurementSleep )
@@ -209,7 +204,7 @@
             with open( main.tsharkResultPath, "r" ) as resultFile:
                 resultText = resultFile.readline()
                 main.log.info( 'Capture result:' + resultText )
-                resultText = resultText.split(' ')
+                resultText = resultText.split( ' ' )
                 if len( resultText ) > 1:
                     tsharkResultTime = float( resultText[ 1 ] ) * 1000.0
                 else:
@@ -220,8 +215,8 @@
             # Compare the timestemps, and get the lowest one.
             temp = 0;
             # Get host event timestamps from each nodes
-            for node in range ( 0, main.numCtrls ):
-                metricsResult = json.loads( main.CLIs[ node ].topologyEventsMetrics() )
+            for ctrl in main.Cluster.active():
+                metricsResult = json.loads( ctrl.CLI.topologyEventsMetrics() )
                 metricsResult = metricsResult.get( main.hostTimestampKey ).get( "value" )
                 main.log.info( "ONOS topology event matrics timestemp: {}".format( str( metricsResult ) ) )
 
@@ -230,12 +225,12 @@
                 metricsResult = temp
 
             addingHostTime.append( float( metricsResult ) - tsharkResultTime )
-            main.log.info( "Result of this iteration: {}".format( str( float( metricsResult ) - tsharkResultTime) ) )
+            main.log.info( "Result of this iteration: {}".format( str( float( metricsResult ) - tsharkResultTime ) ) )
             # gethost to remove
-            gethost = main.ONOSrest1.hosts()
+            gethost = main.Cluster.active( 0 ).REST.hosts()
             HosttoRemove = []
             HosttoRemove.append( json.loads( gethost[ 1:len( gethost )-1 ] ).get( 'id' ) )
-            main.CLIs[0].removeHost( HosttoRemove )
+            main.Cluster.active( 0 ).CLI.removeHost( HosttoRemove )
 
         main.log.info( "Result List: {}".format( addingHostTime ) )
 
@@ -244,28 +239,28 @@
         main.log.info( "Average Latency: {}".format( averageResult ) )
 
         # calculate std
-        stdResult = numpy.std(addingHostTime)
-        main.log.info("std: {}".format(stdResult))
+        stdResult = numpy.std( addingHostTime )
+        main.log.info( "std: {}".format( stdResult ) )
 
         # write to DB file
-        main.log.info("Writing results to DS file")
-        with open(main.dbFileName, "a") as dbFile:
+        main.log.info( "Writing results to DS file" )
+        with open( main.dbFileName, "a" ) as dbFile:
             temp = "'" + main.commit + "',"
             temp += "'" + main.nic + "',"
             # Scale number
-            temp += str( main.numCtrls )
+            temp += str( main.Cluster.numCtrls )
             temp += ",'" + "baremetal1" + "'"
             # average latency
             temp += "," + str( averageResult )
             # std of latency
-            temp += "," + str(stdResult)
+            temp += "," + str( stdResult )
             temp += "\n"
             dbFile.write( temp )
 
         assertion = main.TRUE
 
-        utilities.assert_equals(expect=main.TRUE, actual=assertion,
+        utilities.assert_equals( expect=main.TRUE, actual=assertion,
                 onpass='Host latency test successful',
-                onfail='Host latency test failed')
+                onfail='Host latency test failed' )
 
         main.Utils.mininetCleanup( main.Mininet1 )