Module cisco_xe

  • License: Inmanta EULA

  • Version: 17.3.9

Entities

entity cisco_xe::Base

Parents: std::Entity

Base for all entities representing any part of device configuration.

By default the orchestrator manages the full configuration (comanage is false) of the resource represented by the entity. This means that when the configuration is modified outside the orchestrator, the configuration is replaced by the orchestrator on the next deploy or repair. This is achieved by setting the operation on the corresponding yang container to replace. When comanage is set to true, the yang container is set to the default merge behavior. This means that any parameter or container NOT managed by the container is not touched during deploy or repair. However, when modifying key attributes of a container care must be taken to set the old container to purged so that it will be removed, otherwise invalid configurations may be created

attribute bool comanaged=true

True for ‘merge’, False for ‘replace’

attribute bool purged=false

True if should be removed :rel device: The device this entity should deploy to :rel resource: The resource this entity is a part of :rel yang_container:

relation cisco_xe::BaseDevice device [1]

The device this entity should deploy to Peer relation:

relation cisco_xe::Resource resource [0:1]

The resource this entity is a part of Peer relation:

other end: cisco_xe::Resource.entities [0:*]

relation yang::Container yang_container [1]

The following implementations are defined for this entity:

The following implements statements select implementations for this entity:

entity cisco_xe::BaseDevice

Parents: yang::BaseDevice

Entity representing a device a config should be deployed to

attribute string[] models=List()

List of the model names this module uses

dict cisco_xe::BaseDevice.module_mapping={'Cisco-IOS-XE-acl': 'http://cisco.com/ns/yang/Cisco-IOS-XE-acl', 'Cisco-IOS-XE-bgp': 'http://cisco.com/ns/yang/Cisco-IOS-XE-bgp', 'Cisco-IOS-XE-l2vpn': 'http://cisco.com/ns/yang/Cisco-IOS-XE-l2vpn', 'Cisco-IOS-XE-native': 'http://cisco.com/ns/yang/Cisco-IOS-XE-native', 'Cisco-IOS-XE-ospfv3': 'http://cisco.com/ns/yang/Cisco-IOS-XE-ospfv3', 'Cisco-IOS-XE-policy': 'http://cisco.com/ns/yang/Cisco-IOS-XE-policy', 'Cisco-IOS-XE-route-map': 'http://cisco.com/ns/yang/Cisco-IOS-XE-route-map', 'ietf-inet-types': 'urn:ietf:params:xml:ns:yang:ietf-inet-types'}

Dictionary contraing namespaces definitions. Key - module name. Value - namespace URI.

The following implementations are defined for this entity:

entity cisco_xe::Native

Parents: cisco_xe::Base

Yang definition can be found here: Cisco-IOS-XE-native.yang:L306

Rel interface:

Configure Interfaces

Rel ip:

Global IP configuration subcommands

Rel l2vpn:

Layer2 VPN commands

Rel policy:

Rel route_map:

Route map tag

Rel router:

The following implementations are defined for this entity:

The following implements statements select implementations for this entity:

entity cisco_xe::NetconfDevice

Parents: cisco_xe::BaseDevice, yang::NetconfDevice

Entity representing a device that should be configured using netconf as backend

attribute bool persist=true

Whether the config should be persisted to a permanent data store on update.

attribute string persist_target='cisco-ia:save-config'

The target datastore where the config should be persisted (when persist is enabled).

attribute bool use_get_schema_invalid_namespaces_workaround=false

If true get-schema RPC reply processing code of ncclient will be patched for scanning and loading YANG models to accept response with invalid or malformed namespaces. It must be enabled for Juniper devices to avoid failure.

The following implements statements select implementations for this entity:

entity cisco_xe::Resource

Parents: yang::ResourceBuilder

All entities modelled in this module are translated to the correct yang model. Each device creates a global yang resource that collects all containers in the model.

When an entity that inherits from Base is associated with this resource, it will be added to a different yang resource. This can be used to create a distinction between global configuration and service specific configuration and put them in their own failure domain.

Rel entities:

relation cisco_xe::Base entities [0:*]

The resource this entity is a part of Peer relation:

other end: cisco_xe::Base.resource [0:1]

The following implements statements select implementations for this entity:

  • constraint true

Implementations

implementation cisco_xe::setupNativeYangContainer
implementation cisco_xe::yangBaseEntity
implementation cisco_xe::yangDevice

Setup the device root container and the agent.