net-teardown-vnets.xml 2.42 KB
<!--
  ~  Copyright 2016-present Open Networking Laboratory
  ~
  ~  Licensed under the Apache License, Version 2.0 (the "License");
  ~  you may not use this file except in compliance with the License.
  ~  You may obtain a copy of the License at
  ~
  ~      http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~  Unless required by applicable law or agreed to in writing, software
  ~  distributed under the License is distributed on an "AS IS" BASIS,
  ~  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~  See the License for the specific language governing permissions and
  ~  limitations under the License.
  -->
<scenario name="net-teardown-vnets" description="Network (vnets) teardown steps">
    <group name="Net-Teardown-Vnets">

        <step name="Check-NetworkId-Variable-Exists" 
              exec="test '${networkId}' != ''"/>

        <step name="Check-Vnet-Link" requires="^"
              exec="onos ${OCI} vnet-links ${networkId}"/>

        <step name="Remove-Bidirectional-Link" requires="^"
              exec="onos -f ${OCI} vnet-remove-link --bidirectional ${networkId} device2 2 device1 1"/>

        <step name="Check-intents-removed" requires="^"
              exec="onos-check-intent ${OCI} networkId=${networkId} IGNORE_STATE 0"/>

        <step name="Ping-hosts-2" requires="^"
              exec="onos-mininet sendAndExpect h4 ping -c1 h9 --expect \ 100% packet loss"/>

        <step name="Remove-Port-2" requires="^"
              exec="onos ${OCI} vnet-remove-port ${networkId} device2 2"/>

        <step name="Remove-Port-1" requires="^"
              exec="onos ${OCI} vnet-remove-port ${networkId} device1 1"/>

        <step name="Remove-Device-2" requires="^"
              exec="onos ${OCI} vnet-remove-device ${networkId} device2"/>

        <step name="Remove-Device-1" requires="^"
              exec="onos ${OCI} vnet-remove-device ${networkId} device1"/>

        <step name="Remove-Vnet" requires="^"
              exec="onos ${OCI} vnet-remove ${networkId}"/>

        <step name="Check-TenantId-Variable-Exists" requires="^" 
              exec="test '${tenantId}' != ''"/>

        <step name="Remove-Tenant" requires="Check-TenantId-Variable-Exists"
              exec="onos ${OCI} vnet-remove-tenant ${tenantId}"/>

        <step name="Enable-FwdApp" requires="^" if="echo $ONOS_APPS | grep -w fwd"
              exec="onos ${OCI} onos:app activate org.onosproject.fwd"/>

    </group>
</scenario>