Skip to content

Commit

Permalink
Update samples/readme for 0.5.1 (CiscoDevNet#271)
Browse files Browse the repository at this point in the history
  • Loading branch information
Abhi Keshav authored and psykokwak4 committed Oct 31, 2016
1 parent b511a89 commit 9b499d6
Show file tree
Hide file tree
Showing 6 changed files with 43 additions and 50 deletions.
11 changes: 6 additions & 5 deletions sdk/python/README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -105,20 +105,21 @@ Using the model APIs
------------------------
After establishing the connection, we instantiate the entities and set some data. First, we import the types from the OpenConfig BGP module::

from ydk.models.openconfig import bgp
from ydk.models.openconfig import openconfig_bgp
from ydk.models.openconfig import openconfig_bgp_types

Next, create a BGP configuration object and set the attributes::

# create BGP object
bgp_cfg = bgp.Bgp()
bgp_cfg = openconfig_bgp.Bgp()

# set the Global AS
bgp_cfg.global_.config.as_ = 65001

# Create an AFI SAFI config
ipv4_afsf = bgp_cfg.global_.afi_safis.AfiSafi()
ipv4_afsf.afi_safi_name = 'ipv4-unicast'
ipv4_afsf.config.afi_safi_name = 'ipv4-unicast'
ipv4_afsf.afi_safi_name = openconfig_bgp_types.Ipv4Unicast()
ipv4_afsf.config.afi_safi_name = openconfig_bgp_types.Ipv4Unicast()
ipv4_afsf.config.enabled = True

# Add the AFI SAFI config to the global AFI SAFI list
Expand Down Expand Up @@ -155,7 +156,7 @@ YDK uses common Python logging. All modules are based on the "ydk" log::

Release Notes
--------------
The current YDK release version is 0.5.1 (beta). YDK-Py is licensed under the Apache 2.0 License.
The current YDK release version is 0.5.0 (beta). YDK-Py is licensed under the Apache 2.0 License.

Documentation and Support
--------------------------
Expand Down
23 changes: 12 additions & 11 deletions sdk/python/core/samples/_config_builder.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,23 +14,24 @@
# limitations under the License.
# ------------------------------------------------------------------

from ydk.models.openconfig import bgp
from ydk.models.openconfig.routing_policy import RoutingPolicy
from ydk.models.openconfig import openconfig_bgp
from ydk.models.openconfig import openconfig_bgp_types
from ydk.models.openconfig.openconfig_routing_policy import RoutingPolicy


def _get_bgp_config():
bgp_cfg = bgp.Bgp()
bgp_cfg = openconfig_bgp.Bgp()

bgp_cfg.global_.config.as_ = 65001

ipv4_afsf = bgp_cfg.global_.afi_safis.AfiSafi()
ipv4_afsf.afi_safi_name = 'ipv4-unicast'
ipv4_afsf.config.afi_safi_name = 'ipv4-unicast'
ipv4_afsf.afi_safi_name = openconfig_bgp_types.Ipv4UnicastIdentity()
ipv4_afsf.config.afi_safi_name = openconfig_bgp_types.Ipv4UnicastIdentity()
ipv4_afsf.config.enabled = True

ipv6_afsf = bgp_cfg.global_.afi_safis.AfiSafi()
ipv6_afsf.afi_safi_name = 'ipv6-unicast'
ipv6_afsf.config.afi_safi_name = 'ipv6-unicast'
ipv6_afsf.afi_safi_name = openconfig_bgp_types.Ipv6UnicastIdentity()
ipv6_afsf.config.afi_safi_name = openconfig_bgp_types.Ipv6UnicastIdentity()
ipv6_afsf.config.enabled = True

bgp_cfg.global_.afi_safis.afi_safi.append(ipv4_afsf)
Expand All @@ -44,9 +45,9 @@ def _get_bgp_config():
nbr_ipv4.config.peer_as = 65002

nbr_ipv4_afsf = nbr_ipv4.afi_safis.AfiSafi()
nbr_ipv4_afsf.afi_safi_name = 'ipv4-unicast'
nbr_ipv4_afsf.afi_safi_name = openconfig_bgp_types.Ipv4UnicastIdentity()
nbr_ipv4_afsf.config.peer_as = 65002
nbr_ipv4_afsf.config.afi_safi_name = 'ipv4-unicast'
nbr_ipv4_afsf.config.afi_safi_name = openconfig_bgp_types.Ipv4UnicastIdentity()
nbr_ipv4_afsf.config.enabled = True

# Create afi-safi policy instances
Expand All @@ -69,8 +70,8 @@ def _get_routing_cfg():

comm_set = RoutingPolicy.DefinedSets.BgpDefinedSets.CommunitySets.CommunitySet()
comm_set.community_set_name = 'testing'
comm_set.community_member.append("testing123")
comm_set.community_member.append("testing456")
comm_set.community_member.append("65172:16001")
comm_set.community_member.append("65172:16032")
routing_policy.defined_sets.bgp_defined_sets.community_sets.community_set.append(comm_set)
return routing_policy

Expand Down
39 changes: 18 additions & 21 deletions sdk/python/core/samples/bgp.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,10 @@
from ydk.services import CRUDService
import logging

from .session_mgr import establish_session, init_logging
from ydk.models.openconfig import bgp
from ydk.models.openconfig.bgp_types import Ipv4UnicastIdentity
from ydk.models.openconfig.bgp_types import Ipv6UnicastIdentity
from ydk.models.openconfig.routing_policy import RoutingPolicy
from session_mgr import establish_session, init_logging
from ydk.models.openconfig import openconfig_bgp
from ydk.models.openconfig import openconfig_bgp_types
from ydk.models.openconfig.openconfig_routing_policy import RoutingPolicy
from ydk.errors import YPYError


Expand Down Expand Up @@ -80,7 +79,7 @@
def bgp_run(crud_service, session):

# Global config
bgp_cfg = bgp.Bgp()
bgp_cfg = openconfig_bgp.Bgp()

try:
crud_service.delete(session, bgp_cfg)
Expand All @@ -103,20 +102,17 @@ def bgp_run(crud_service, session):
routing_policy.policy_definitions.policy_definition.append(pass_all_policy_defn)
pass_all_policy_defn._parent = routing_policy.policy_definitions

crud_service.create(session, routing_policy)

bgp_cfg.global_.config.as_ = 65001

# afi-safi config fails name verification on netsim
# I think there needs to be some init data to fix that
ipv4_afsf = bgp_cfg.global_.afi_safis.AfiSafi()
ipv4_afsf.afi_safi_name = 'ipv4-unicast'
ipv4_afsf.config.afi_safi_name = 'ipv4-unicast'
ipv4_afsf.afi_safi_name = openconfig_bgp_types.Ipv4UnicastIdentity()
ipv4_afsf.config.afi_safi_name = openconfig_bgp_types.Ipv4UnicastIdentity()
ipv4_afsf.config.enabled = True

ipv6_afsf = bgp_cfg.global_.afi_safis.AfiSafi()
ipv6_afsf.afi_safi_name = 'ipv6-unicast'
ipv6_afsf.config.afi_safi_name = 'ipv6-unicast'
ipv6_afsf.afi_safi_name = openconfig_bgp_types.Ipv6UnicastIdentity()
ipv6_afsf.config.afi_safi_name = openconfig_bgp_types.Ipv6UnicastIdentity()
ipv6_afsf.config.enabled = True

bgp_cfg.global_.afi_safis.afi_safi.append(ipv4_afsf)
Expand All @@ -130,15 +126,15 @@ def bgp_run(crud_service, session):
nbr_ipv4.config.peer_as = 65002

nbr_ipv4_afsf = nbr_ipv4.afi_safis.AfiSafi()
nbr_ipv4_afsf.afi_safi_name = 'ipv4-unicast'
nbr_ipv4_afsf.afi_safi_name = openconfig_bgp_types.Ipv4UnicastIdentity()
nbr_ipv4_afsf.config.peer_as = 65002
nbr_ipv4_afsf.config.afi_safi_name = 'ipv4-unicast'
nbr_ipv4_afsf.config.afi_safi_name = openconfig_bgp_types.Ipv4UnicastIdentity()
nbr_ipv4_afsf.config.enabled = True

# Create afi-safi policy instances
#nbr_ipv4_afsf.apply_policy.config.import_policy.append('PASS-ALL')
nbr_ipv4_afsf.apply_policy.config.import_policy.append('PASS-ALL')

#nbr_ipv4_afsf.apply_policy.config.export_policy.append('PASS-ALL')
nbr_ipv4_afsf.apply_policy.config.export_policy.append('PASS-ALL')

nbr_ipv4.afi_safis.afi_safi.append(nbr_ipv4_afsf)

Expand All @@ -149,6 +145,7 @@ def bgp_run(crud_service, session):
# IPv4 Neighbor instance config done

crud_service.create(session, bgp_cfg)
# crud_service.create(session, routing_policy)

bgp_cfg_read = crud_service.read(session, bgp.Bgp())

Expand All @@ -164,15 +161,15 @@ def bgp_run(crud_service, session):
nbr_ipv6.config.peer_as = 65002

nbr_ipv6_afsf = nbr_ipv6.afi_safis.AfiSafi()
nbr_ipv6_afsf.afi_safi_name = 'ipv6-unicast'
nbr_ipv6_afsf.afi_safi_name = openconfig_bgp_types.Ipv6UnicastIdentity()
nbr_ipv6_afsf.config.peer_as = 65002
nbr_ipv6_afsf.config.afi_safi_name = 'ipv6-unicast'
nbr_ipv6_afsf.config.afi_safi_name = openconfig_bgp_types.Ipv6UnicastIdentity()
nbr_ipv6_afsf.config.enabled = True

# Create afi-safi policy instances
#nbr_ipv6_afsf.apply_policy.config.import_policy.append('PASS-ALL')
nbr_ipv6_afsf.apply_policy.config.import_policy.append('PASS-ALL')

#nbr_ipv6_afsf.apply_policy.config.export_policy.append('PASS-ALL')
nbr_ipv6_afsf.apply_policy.config.export_policy.append('PASS-ALL')

nbr_ipv6.afi_safis.afi_safi.append(nbr_ipv6_afsf)

Expand Down
7 changes: 0 additions & 7 deletions sdk/python/core/samples/bgp_codec.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,6 @@ def bgp_run(codec_service, provider):
bgp_cfg = _get_bgp_config()
bgp_payload = codec_service.encode(provider, bgp_cfg)
bgp_entity = codec_service.decode(provider, bgp_payload)
# print 'Encoded payload:\n', bgp_payload, \
# '\nRe-encode the decoded payload:\n', codec_service.encode(provider, bgp_entity)
assert bgp_payload == codec_service.encode(provider, bgp_entity)


Expand All @@ -44,18 +42,13 @@ def run_routing(codec_service, provider):
routing_payload = codec_service.encode(provider, routing_policy)
print(routing_payload)
routing_entity = codec_service.decode(provider, routing_payload)
# print 'Encoded payload:\n', routing_payload, \
# '\nRe-encode the decoded payload:\n', codec_service.encode(provider, routing_entity)
assert routing_payload == codec_service.encode(provider, routing_entity)


def run_multiple_routing_bgp(codec_service, provider):
multi_cfg = _get_bgp_routing_multiple_object()
multi_payload = codec_service.encode(provider, multi_cfg)
# print routing_payload
multi_entity = codec_service.decode(provider, multi_payload)
# print 'Encoded payload:\n', multi_payload, \
# '\nRe-encode the decoded payload:\n', codec_service.encode(provider, multi_entity)
assert multi_payload == codec_service.encode(provider, multi_entity)


Expand Down
11 changes: 6 additions & 5 deletions sdk/python/core/samples/bgp_netconf.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,9 @@
from ydk.types import Empty
from ydk.providers import NetconfServiceProvider, CodecServiceProvider
from ydk.services import CRUDService, NetconfService, CodecService, Datastore
from ydk.models.openconfig import bgp
from ydk.models.openconfig.routing_policy import RoutingPolicy
from ydk.models.openconfig import openconfig_bgp
from ydk.models.openconfig import openconfig_bgp_types
from ydk.models.openconfig.openconfig_routing_policy import RoutingPolicy

from _config_builder import _get_bgp_config, _get_routing_cfg, _get_bgp_routing_multiple_object

Expand All @@ -54,9 +55,9 @@ def bgp_run(netconf_service, session):
nbr_ipv6.config.peer_as = 65002

nbr_ipv6_afsf = nbr_ipv6.afi_safis.AfiSafi()
nbr_ipv6_afsf.afi_safi_name = 'ipv6-unicast'
nbr_ipv6_afsf.afi_safi_name = openconfig_bgp_types.Ipv6UnicastIdentity()
nbr_ipv6_afsf.config.peer_as = 65002
nbr_ipv6_afsf.config.afi_safi_name = 'ipv6-unicast'
nbr_ipv6_afsf.config.afi_safi_name = openconfig_bgp_types.Ipv6UnicastIdentity()
nbr_ipv6_afsf.config.enabled = True

nbr_ipv6.afi_safis.afi_safi.append(nbr_ipv6_afsf)
Expand Down Expand Up @@ -106,7 +107,7 @@ def init_logging():

if __name__ == "__main__":
init_logging()
provider = NetconfServiceProvider(address='127.0.0.1', username='admin', password='admin', protocol='ssh', port=12022)
provider = NetconfServiceProvider(address='localhost', username='admin', password='admin', protocol='ssh', port=1220)
netconf_service = NetconfService()
bgp_run(netconf_service, provider)
# run_multiple_routing_bgp(netconf_service, provider)
Expand Down
2 changes: 1 addition & 1 deletion sdk/python/packages/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
'Twisted>=16.0.0',
'protobuf==3.0.0b2.post2',
'ncclient>=0.4.7',
'ydk>=0.5.0']
'ydk>=0.5.1']

NMSP_PKG_NAME = "$PACKAGE$"
NMSP_PKG_VERSION = "$VERSION$"
Expand Down

0 comments on commit 9b499d6

Please sign in to comment.