# Copyright (c) 2014 Brocade Communications Systems, Inc. # All Rights Reserved. # # 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. """NOS NETCONF XML Configuration Command Templates. Interface Configuration Commands """ # Get NOS Version SHOW_FIRMWARE_VERSION = ( "show-firmware-version xmlns:nc=" "'urn:brocade.com:mgmt:brocade-firmware-ext'" ) GET_VCS_DETAILS = ( 'get-vcs-details xmlns:nc="urn:brocade.com:mgmt:brocade-vcs"' ) SHOW_VIRTUAL_FABRIC = ( 'show-virtual-fabric xmlns:nc="urn:brocade.com:mgmt:brocade-vcs"' ) GET_VIRTUAL_FABRIC_INFO = ( 'interface xmlns:nc="urn:brocade.com:mgmt:brocade-firmware-ext"' ) NOS_VERSION = "./*/{urn:brocade.com:mgmt:brocade-firmware-ext}os-version" VFAB_ENABLE = "./*/*/*/{urn:brocade.com:mgmt:brocade-vcs}vfab-enable" # Create VLAN (vlan_id) CREATE_VLAN_INTERFACE = """ {vlan_id} """ # Delete VLAN (vlan_id) DELETE_VLAN_INTERFACE = """ {vlan_id} """ # # AMPP Life-cycle Management Configuration Commands # # Create AMPP port-profile (port_profile_name) CREATE_PORT_PROFILE = """ {name} """ # Create VLAN sub-profile for port-profile (port_profile_name) CREATE_VLAN_PROFILE_FOR_PORT_PROFILE = """ {name} """ # Configure L2 mode for VLAN sub-profile (port_profile_name) CONFIGURE_L2_MODE_FOR_VLAN_PROFILE_IN_DOMAIN = """ {name} """ # Configure L2 mode for VLAN sub-profile (port_profile_name) CONFIGURE_L2_MODE_FOR_VLAN_PROFILE = """ {name} """ # Configure trunk mode for VLAN sub-profile (port_profile_name) CONFIGURE_TRUNK_MODE_FOR_VLAN_PROFILE = """ {name} trunk """ # Configure allowed VLANs for VLAN sub-profile # (port_profile_name, allowed_vlan, native_vlan) CONFIGURE_ALLOWED_VLANS_FOR_VLAN_PROFILE = """ {name} {vlan_id} """ # Delete port-profile (port_profile_name) DELETE_PORT_PROFILE = """ {name} """ # Activate port-profile (port_profile_name) ACTIVATE_PORT_PROFILE = """ {name} """ # Deactivate port-profile (port_profile_name) DEACTIVATE_PORT_PROFILE = """ {name} """ # Associate MAC address to port-profile (port_profile_name, mac_address) ASSOCIATE_MAC_TO_PORT_PROFILE = """ {name} {mac_address} """ # Dissociate MAC address from port-profile (port_profile_name, mac_address) DISSOCIATE_MAC_FROM_PORT_PROFILE = """ {name} {mac_address} """ # port-profile domain management commands REMOVE_PORTPROFILE_FROM_DOMAIN = """ {domain_name} {name} """ # put port profile in default domain CONFIGURE_PORTPROFILE_IN_DOMAIN = """ {domain_name} {name} """ # # L3 Life-cycle Management Configuration Commands # # Create SVI and assign ippaddres (rbridge_id,vlan_id,ip_address) CONFIGURE_SVI_WITH_IP_ADDRESS = """ {rbridge_id} {vlan_id}
{ip_address}
""" # delete SVI (rbridge_id,vlan_id) DELETE_SVI = """ {rbridge_id} {vlan_id} """ # Activate SVI (rbridge_id,vlan_id) ACTIVATE_SVI = """ {rbridge_id} {vlan_id} """ # Remove ipaddress from SVI (rbridge_id,vlan_id) DECONFIGURE_IP_FROM_SVI = """ {rbridge_id} {vlan_id}
{gw_ip}
""" # create vrf (rbridge_id,vrf_name) CREATE_VRF = """ {rbridge_id} {vrf_name} """ # delete vrf (rbridge_id,vrf_name) DELETE_VRF = """ {rbridge_id} {vrf_name} """ # configure route distinguisher for vrf (rbridge_id,vrf_name, rd) CONFIGURE_RD_FOR_VRF = """ {rbridge_id} {vrf_name} {rd} """ # configure address-family for vrf (rbridge_id,vrf_name) ADD_ADDRESS_FAMILY_FOR_VRF_V1 = """ {rbridge_id} {vrf_name} 1200 """ # configure address-family for vrf (rbridge_id,vrf_name) ADD_ADDRESS_FAMILY_FOR_VRF = """ {rbridge_id} {vrf_name} """ # Bind vrf to SVI (rbridge_id,vlan_idi, vrf) ADD_VRF_TO_SVI = """ {rbridge_id} {vlan_id} {vrf_name} """ # unbind vrf from SVI (rbridge_id,vlan_idi, vrf) DELETE_VRF_FROM_SVI = """ {rbridge_id} {vlan_id} {vrf_name} """ # # Constants # # Port profile naming convention for Neutron networks OS_PORT_PROFILE_NAME = "openstack-profile-{id}" OS_VRF_NAME = "osv-{id}" # Port profile filter expressions PORT_PROFILE_XPATH_FILTER = "/port-profile" PORT_PROFILE_NAME_XPATH_FILTER = "/port-profile[name='{name}']"