[ONOS-7676] Enable support for fabric.p4 in SegmentRouting ONOS System Tests
Change-Id: I3dde8fe5d90d2c595021ff05ab45ccb37bbfbef6
diff --git a/TestON/tests/USECASE/SegmentRouting/SRMulticast/SRMulticast.params b/TestON/tests/USECASE/SegmentRouting/SRMulticast/SRMulticast.params
index 14b0977..7ee65f6 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRMulticast/SRMulticast.params
+++ b/TestON/tests/USECASE/SegmentRouting/SRMulticast/SRMulticast.params
@@ -14,6 +14,7 @@
<DEPENDENCY>
<useCommonConf>False</useCommonConf>
<useCommonTopo>True</useCommonTopo>
+ <useBmv2>False</useBmv2>
<topology>hagg_fabric.py</topology>
<lib>routinglib.py,trellislib.py</lib>
<conf>bgpdbgp1.conf,bgpdbgp2.conf,bgpdr1.conf,bgpdr2.conf,dhcpd6.conf,dhcpd.conf,zebradbgp1.conf,zebradbgp2.conf</conf>
@@ -21,7 +22,7 @@
<ENV>
<cellName>productionCell</cellName>
- <cellApps>drivers,segmentrouting,openflow,fpm,dhcprelay,netcfghostprovider,routeradvertisement,t3,mcast,hostprobingprovider</cellApps>
+ <cellApps>drivers,segmentrouting,openflow,fpm,dhcprelay,netcfghostprovider,routeradvertisement,t3,mcast,hostprobingprovider,drivers.bmv2,pipelines.fabric</cellApps>
</ENV>
<GIT>
diff --git a/TestON/tests/USECASE/SegmentRouting/SRMulticast/dependencies/SRMulticastTest.py b/TestON/tests/USECASE/SegmentRouting/SRMulticast/dependencies/SRMulticastTest.py
index 33e9656..39897d5 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRMulticast/dependencies/SRMulticastTest.py
+++ b/TestON/tests/USECASE/SegmentRouting/SRMulticast/dependencies/SRMulticastTest.py
@@ -23,6 +23,8 @@
def setupTest( main, test_idx, onosNodes ):
from tests.USECASE.SegmentRouting.dependencies.Testcaselib import Testcaselib as lib
+ import tests.USECASE.SegmentRouting.dependencies.cfgtranslator as translator
+
skipPackage = False
init = False
if not hasattr( main, "apps" ):
@@ -38,6 +40,11 @@
# Load configuration files
main.step( "Load configurations" )
main.cfgName = "TEST_CONFIG_ipv4=1_ipv6=1" if hasattr( main, "Mininet1" ) else main.params[ "DEPENDENCY" ][ "confName" ]
+ if main.useBmv2:
+ # Translate configuration file from OVS-OFDPA to BMv2 driver
+ translator.ofdpaToBmv2( main )
+ else:
+ translator.bmv2ToOfdpa( main )
lib.loadJson( main )
time.sleep( float( main.params[ "timers" ][ "loadNetcfgSleep" ] ) )
main.cfgName = "common" if hasattr( main, "Mininet1" ) else main.params[ "DEPENDENCY" ][ "confName" ]
@@ -47,6 +54,9 @@
if hasattr( main, "Mininet1" ):
# Run the test with Mininet
mininet_args = " --dhcp=1 --routers=1 --ipv6=1 --ipv4=1"
+ if main.useBmv2:
+ mininet_args += ' --switch bmv2'
+ main.log.info( "Using BMv2 switch" )
lib.startMininet( main, main.params[ "DEPENDENCY" ][ "topology" ], args=mininet_args )
time.sleep( float( main.params[ "timers" ][ "startMininetSleep" ] ) )
else: