<PARAMS>
    #List of test cases:
    #CASE1:   Compile ONOS and push it to the test machines
    #CASE2:   Assign mastership to controllers
    #CASE21:  Assign mastership to controllers
    #CASE102: Start Spine-Leaf Topology in Mininet
    #CASE3:   Assign intents
    #CASE4:   Ping across added host intents
    #CASE104: Ping between all hosts
    #CASE5:   Reading state of ONOS
    #CASE6:   The Failure case.
    #CASE7:   Check state after control plane failure
    #CASE8:   Compare topo
    #CASE9:   Link down
    #CASE10:  Link up
    #CASE11:  Switch down
    #CASE12:  Switch up
    #CASE13:  Clean up
    #CASE14:  Start election app on all onos nodes
    #CASE15:  Check that Leadership Election is still functional
    #CASE16:  Install Distributed Primitives app
    #CASE17:  Check for basic functionality with distributed primitives
    <testcases>1,102,8,8,104,5,14,16,17,[6,8,7,104,15,17]*17,9,8,104,10,8,104,[11,8,104,12,8,104]*0,13</testcases>

    <GRAPH>
        <nodeCluster>VM</nodeCluster>
        <builds>20</builds>
    </GRAPH>

    <scaling>1,3b,3,3b,5b,5,5b,7b,7,7b,5b,5,5b,3b,3,3b,1</scaling>
    <server>
        <port>8000</port>
        <interface></interface>
    </server>
    <apps></apps>
    <ONOS_Configuration>
        <org.onosproject.store.flow.impl.ECFlowRuleStore>
            <backupCount>3</backupCount>
        </org.onosproject.store.flow.impl.ECFlowRuleStore>
    </ONOS_Configuration>
    <ONOS_Logging>
        <org.onosproject.events>TRACE</org.onosproject.events>
        <org.onosproject.segmentrouting>DEBUG</org.onosproject.segmentrouting>
        <org.onosproject.driver.pipeline>DEBUG</org.onosproject.driver.pipeline>
        <org.onosproject.store.group.impl>DEBUG</org.onosproject.store.group.impl>
        <org.onosproject.net.flowobjective.impl>DEBUG</org.onosproject.net.flowobjective.impl>
    </ONOS_Logging>
    <ENV>
        <cellName>HA</cellName>
        <appString>events,drivers,openflow,segmentrouting,netcfghostprovider</appString>
    </ENV>
    <GIT>
        <pull>False</pull>
        <branch>master</branch>
    </GIT>
    <num_controllers> 7 </num_controllers>
    <tcpdump> False </tcpdump>

    <topology>
        <files>
            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/fabric.py</topo>
            <dep1>~/TestON/tests/USECASE/SegmentRouting/dependencies/trellislib.py</dep1>
            <dep2>~/TestON/tests/USECASE/SegmentRouting/dependencies/routinglib.py</dep2>
        </files>
        <topoFile>fabric.py</topoFile>
        <args> --dhcp=0 --routers=0 --ipv6=0 --ipv4=1 </args>
        <configPath>/HA/dependencies/json/</configPath>
        <configName>TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
    </topology>
    <CTRL>
        <port1>6653</port1>
        <port2>6653</port2>
        <port3>6653</port3>
        <port4>6653</port4>
        <port5>6653</port5>
        <port6>6653</port6>
        <port7>6653</port7>
    </CTRL>
    <BACKUP>
        <ENABLED> False </ENABLED>
        <TESTONUSER>sdn</TESTONUSER>
        <TESTONIP>10.128.30.9</TESTONIP>
    </BACKUP>
    <timers>
        <NetCfg>5</NetCfg>
        <SRSetup>60</SRSetup>
        <LinkDiscovery>60</LinkDiscovery>
        <SwitchDiscovery>60</SwitchDiscovery>
        <gossip>5</gossip>
    </timers>
    <kill>
        <linkSrc>spine102</linkSrc>
        <linkDst>leaf1</linkDst>
        <switch> spine101 </switch>
        <dpid> 0000000000000101 </dpid>
        <links> leaf1 leaf2 leaf2 leaf3 leaf3 leaf4 leaf4 leaf5 leaf5 </links>
    </kill>
    <MNtcpdump>
        <intf>eth0</intf>
        <port> </port>
        <folder>~/packet_captures/</folder>
    </MNtcpdump>
</PARAMS>
