Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for new python core #507

Merged
156 commits merged into from Aug 1, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
156 commits
Select commit Hold shift + click to select a range
e6f6f17
Fix
psykokwak4 Feb 18, 2017
cf181db
Add local reference to generated API
psykokwak4 Feb 19, 2017
1fcecfa
Update test_sanity_levels.py
psykokwak4 Feb 20, 2017
27ace62
Replace monkey patching imports
psykokwak4 Feb 21, 2017
7aec133
Read behavior changed, test case no longer apply.
psykokwak4 Feb 21, 2017
9a387f0
Update python.cpp interface, test case, glue code
psykokwak4 Feb 22, 2017
9e426ac
update python generation to produce new/updated style of python
ylil93 Feb 15, 2017
2f3d5c2
tweak
ylil93 Feb 16, 2017
7fe07b6
add clone_ptr method, _local_refs, and typo fixes in python printer
ylil93 Feb 21, 2017
a84892b
Use YList() instead of python list for entities with list objects in …
ylil93 Feb 21, 2017
91283ca
Update test case, add parent pointer to YList
psykokwak4 Feb 22, 2017
2badcfc
Remove local ydktest_sanity.py under tests folder
psykokwak4 Feb 22, 2017
410db8b
Rethrow C++ exceptions as python exceptions
psykokwak4 Feb 24, 2017
aaf2907
Fix test case
psykokwak4 Feb 24, 2017
6cbdf18
Update test_sanity_errors.
psykokwak4 Feb 24, 2017
74acd2f
Improve error handling
psykokwak4 Feb 25, 2017
e0ed9fd
Fix
psykokwak4 Feb 18, 2017
94e6a06
added NetconfService python wrapper and updated tests
ylil93 Feb 27, 2017
a90cd71
add NetconfService gluecode and remove EntityList wrapper
ylil93 Mar 2, 2017
a7d964e
tweak
ylil93 Feb 28, 2017
a1f51c4
Update deviation tests
psykokwak4 Feb 28, 2017
ff5dcd9
Change clone_ptr to const
psykokwak4 Mar 3, 2017
7f96989
Update augmentation test case
psykokwak4 Mar 3, 2017
645ab7a
Add CodecService/CodecServiceProvider wrapper
psykokwak4 Mar 3, 2017
26ab6b7
Update test_sanity_service_errors.SanityCodec
psykokwak4 Mar 6, 2017
cbaccc2
Add codec wrapper for JSON encoding/decoding
psykokwak4 Mar 6, 2017
c30cd11
Update JSON codec tests
psykokwak4 Mar 6, 2017
a3fa4f9
Added docstring
psykokwak4 Mar 6, 2017
e2fe31e
Update test case and python wrapper code
psykokwak4 Mar 7, 2017
d972261
Propagate libydk logging to Python logging
psykokwak4 Mar 7, 2017
5eeef6d
Test generator update
psykokwak4 Mar 11, 2017
af189f4
added NetconfService python wrapper and updated tests
ylil93 Feb 27, 2017
cd44329
update test_sanity_types, add gluecode for YLeaf, bug fixes
ylil93 Mar 6, 2017
c6a7227
Fix python bits issue and get_children method
psykokwak4 Mar 15, 2017
1be67b8
Update test case
psykokwak4 Mar 16, 2017
462d345
Fixes for backward compatibility
Mar 16, 2017
879132e
Fix restconf log, test CI issue, add python keywords to escape
Mar 17, 2017
23abed3
Add python test cases
psykokwak4 Mar 21, 2017
16d114b
add executor service python tests
ylil93 Mar 22, 2017
b44df3e
Suppress "handlers not found" error message
psykokwak4 Mar 21, 2017
16f6b7a
Use keyword argument for NetconfServiceProvider
psykokwak4 Mar 22, 2017
e2badaa
Update CI
psykokwak4 Mar 22, 2017
621d816
Update generated tests
psykokwak4 Mar 25, 2017
45e0c91
Update python.cpp
psykokwak4 Mar 25, 2017
b5ade9a
Fix API signature
psykokwak4 Mar 27, 2017
b2d013a
change ydk download directory to user home directory to avoid sudo is…
Mar 28, 2017
71650a3
Change models download dir to $HOME/.cache/ydk to conform to linux st…
Mar 28, 2017
b167e56
Add debug for repo error
Mar 28, 2017
b309297
change to .local for testing
Mar 29, 2017
e77b82f
Try another apth
Mar 29, 2017
413f3bb
Update ydk documentation
psykokwak4 Mar 30, 2017
e6adeb0
tweak
ylil93 Apr 4, 2017
2e919e7
update python side executor service & tests
ylil93 Apr 4, 2017
712cd86
update python binding
ylil93 Apr 4, 2017
c90f9ad
Update << operator for LeafData
psykokwak4 Apr 5, 2017
ec28c22
Add logging callback to ydk
Mar 31, 2017
ab962a9
Logging cleanup
psykokwak4 Apr 4, 2017
1b56a56
Update
psykokwak4 Apr 5, 2017
582ac25
remove redundant test
ylil93 Apr 6, 2017
ca12c21
read filter
Mar 24, 2017
56d6a45
Update read filter
psykokwak4 Apr 5, 2017
604c809
fix test case
psykokwak4 Apr 6, 2017
7864f3c
Update read filter
psykokwak4 Apr 7, 2017
20082dd
Update Python test cases
psykokwak4 Apr 7, 2017
a4e2046
some minor fixes to prerequisites setup.py, repo models error msg
Apr 11, 2017
a968571
Some minor fixes
Apr 14, 2017
658b1f5
Use old style constructor for provider in some tests
Apr 14, 2017
298e732
Fix typos
Apr 14, 2017
cb3d396
operations under "ydk.types" moved to "ydk.filters"
ylil93 Apr 18, 2017
6511899
update YOperation to YFilter in tests
ylil93 Apr 19, 2017
540c47f
update documentation, node names
ylil93 Apr 20, 2017
1474b0b
update hand written documentation
ylil93 Apr 20, 2017
45f9a96
update python doc gen
ylil93 Apr 21, 2017
2eda208
update doc generator
ylil93 Apr 21, 2017
7d5414c
Correct message handling in various exception raises (#440)
tithomas1 Apr 14, 2017
c609618
update doc gen to sort toctree by name
ylil93 Apr 24, 2017
1344b3f
convert tabs to spaces
ylil93 May 2, 2017
ac566c7
fix presence container encoding/decoding in python
psykokwak4 May 2, 2017
9618e20
register cleanup function in python
psykokwak4 May 4, 2017
abe168a
add equal operator for Python
psykokwak4 May 5, 2017
9262140
add not equal operator for Python
psykokwak4 May 6, 2017
b475443
update test_sanity_filters.py
ylil93 May 9, 2017
09d4877
fix memory leak errors in ydk_core_test
psykokwak4 May 9, 2017
1638178
rename "operation" vars as "yfilter"
ylil93 May 24, 2017
95bf330
Update setup.py
May 25, 2017
8ddd213
Get home directory for model download at runtime instead of at build …
May 26, 2017
5979337
Fix Netconf key elements' serialization order (#363) (#460)
shgandhi May 30, 2017
de7d88b
CPack Update
ylil93 Jun 2, 2017
8b65e0d
Update packaging documentation
ylil93 Jun 2, 2017
bdd3b3e
Merge pull request #466 from ylil93/new_python
ylil93 Jun 2, 2017
9b99f7f
Update README.md
Jun 2, 2017
ce329c1
Update README.md
ylil93 Jun 2, 2017
94c7441
add libydk tcp client and update python wrapper
psykokwak4 Jun 2, 2017
aceaf35
add TCP client tests
psykokwak4 Jun 6, 2017
caadea2
add default arguments
psykokwak4 Jun 13, 2017
a3a0bc5
pull request peer review changes(#476)
psykokwak4 Jun 13, 2017
8f8b77e
Merge pull request #476 from psykokwak4/new_python-tcp
Jun 14, 2017
2661ce4
fix documentation
psykokwak4 Jun 14, 2017
b7d2869
Merge pull request #477 from psykokwak4/new_python
Jun 14, 2017
1f7d5f3
Add subtree filter option for codecservice decode
Jun 19, 2017
8b47380
Address code review
Jul 7, 2017
81845e2
Change netconf service get/get-config to use xml subtree codec
Jul 7, 2017
9bac81b
Merge pull request #489 from abhikeshav/new_python
Jul 7, 2017
8960fb0
Fix issue with python subtree xml with ydk-py (#491)
Jul 14, 2017
8bf8ca5
refactor: parent() --> get_parent()
ylil93 Jul 14, 2017
da02319
refactor: children() --> get_children()
ylil93 Jul 14, 2017
8902b95
refactor: root() --> get_root()
ylil93 Jul 14, 2017
b5f5862
refactor: path() --> get_path()
ylil93 Jul 19, 2017
4852fa4
refactor: statement() --> get_statement()
ylil93 Jul 19, 2017
ee5e93e
refactor: keys() --> get_keys()
ylil93 Jul 19, 2017
cd94336
refactor: create() --> create_datanode()
ylil93 Jul 19, 2017
32721aa
refactor: rpc() --> create_rpc()
ylil93 Jul 19, 2017
11a8a65
refactor: schema() --> get_schema_node()
ylil93 Jul 19, 2017
ade32d5
refactor: set() --> set_value()
ylil93 Jul 19, 2017
e3d247e
refactor: get() --> get_value()
ylil93 Jul 19, 2017
2b96e69
refactor: input() --> get_input_node()
ylil93 Jul 19, 2017
74a427a
refactor update
ylil93 Jul 19, 2017
aa5ac35
Merge pull request #494 from ylil93/path_cleanup_copy
ylil93 Jul 19, 2017
2899c12
On demand model downloading
psykokwak4 Jul 12, 2017
65764fa
Add --on-demand parameter to sanity tests
psykokwak4 Jul 20, 2017
173e7bf
On demand downloading by default
psykokwak4 Jul 20, 2017
32b6680
Merge pull request #496 from psykokwak4/new_python
Jul 21, 2017
0e0b3c0
Support any rpc in path API (#498)
Jul 25, 2017
7a7499b
On demand module loading
psykokwak4 Jul 25, 2017
4579610
Merge pull request #499 from psykokwak4/new_python
Jul 27, 2017
b18a134
Add model common cache option
psykokwak4 Jul 27, 2017
1d50103
Merge pull request #502 from psykokwak4/new_python
Jul 28, 2017
0e48adf
Add backward compatibility notes
Jul 31, 2017
b5eae2d
Fix ydk core dependency mismatch (#443)
shgandhi May 22, 2017
5bdb315
Update lxml dependency (#427)
shgandhi May 22, 2017
ce36a1d
Rename ydk-version to core-version
shgandhi May 23, 2017
d90f72d
Update ydk core dependency mismatch fix (#443)
shgandhi May 23, 2017
858a201
Update RPC input output documentation (#435) (#458)
shgandhi May 24, 2017
f3c9ceb
Fix RPC output to be decoded to entity; Single instance of list in re…
May 25, 2017
e96e5cb
Fix oper data not being encoded. Fixes #452
May 31, 2017
78e96ca
bump version to 0.5.5 (#465)
Jun 2, 2017
f4c2b37
Consolidate gitignore and add minor doc edits (#467)
111pontes Jun 2, 2017
a08cc5f
Add profile for Cisco IOS XE bundle (#468)
111pontes Jun 3, 2017
b27bae2
Fix documentation logo/icon for YDK-Py (#469)
111pontes Jun 6, 2017
5d90886
* Fix rpc output to be decoded into rpc output entity (#471)
Jun 6, 2017
b6f4da2
Updated release notes for 0.5.5 (#472)
Jun 6, 2017
39700d0
Fix issue with ydktest-sanity regex (#473)
Jun 8, 2017
f8b24bd
crud update fix (#481)
shemalathaa Jun 27, 2017
7a43e97
Added option to generate an adhoc bundle from a list of files
einarnn Jun 30, 2017
a56e1f5
Add details of how to generate an adhoc bundle
einarnn Jun 30, 2017
c7abe8d
Updated README TOC
einarnn Jun 30, 2017
8c99a8f
Update cpack to correctly produce project name for bundle (#497)
Jul 25, 2017
ca569dd
Add Codacy badge (#501)
codacy-badger Jul 28, 2017
66173f1
Minor updates
Jul 31, 2017
53a3cb0
Add backward compatibility notes
Jul 31, 2017
dda7395
Merge branch 'new_python' of https://github.com/abhikeshav/ydk-gen in…
Jul 31, 2017
fedb39b
Merge branch 'abhikeshav-new_python'
Jul 31, 2017
9889b47
Fix test
Jul 31, 2017
548e759
Fix issues raised by codacy
Aug 1, 2017
0983845
Fix
Aug 1, 2017
db83832
Fix
Aug 1, 2017
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
.idea/*
*.log
.settings/
.pydevproject
Expand Down
35 changes: 19 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ YANG Development Kit (Generator)

# Overview

**ydk-gen** is a developer tool that can generate API's that are modeled in YANG. Currently, it generates language binding for Python and C++ with planned support for other language bindings in the future.
**ydk-gen** is a developer tool that can generate API's that are modeled in YANG. Currently, it generates language binding for Python and C++ with planned support for other language bindings in the future.

Other tools and libraries are used to deliver `ydk-gen`'s functionality. In particular:

Expand All @@ -54,32 +54,35 @@ The output of ydk-gen is either a core package, that defines services and provid


# System requirements
Please follow the below instructions to install the system requirements before installing YDK-Py/YDK-Cpp:

## Linux
Ubuntu (Debian-based): The following packages must be present in your system before installing YDK-Py/YDK-Cpp:
Ubuntu (Debian-based):
```
$ sudo apt-get install python-pip zlib1g-dev python-lxml libxml2-dev libxslt1-dev python-dev libssh-dev libcurl4-openssl-dev libtool-bin libpcre3-dev libpcre++-dev libtool pkg-config python3-dev python3-lxml cmake clang
$ sudo apt-get install gdebi-core
$ wget https://devhub.cisco.com/artifactory/debian-ydk/0.6.0/libydk_0.6.0-1_amd64.deb
$ sudo gdebi libydk_0.6.0-1_amd64.deb
```

Centos (Fedora-based): The following packages must be present in your system before installing YDK-Py/YDK-Cpp:
Centos (Fedora-based):
```
$ sudo yum install epel-release
$ sudo yum install python-pip python-devel libxml2-devel libxslt-devel libssh-devel libcurl-devel libtool clang cmake3 pcre-devel
$ sudo ln -fs /usr/bin/cmake3 /usr/bin/cmake
$ sudo yum install epel-release
$ sudo yum install https://devhub.cisco.com/artifactory/rpm-ydk/0.6.0/libydk-0.6.0-1.x86_64.rpm
$ sudo ln –s /usr/bin/cmake3 /usr/bin/cmake && export PATH=/usr/bin/cmake:$PATH
```

## macOS
It is recommended to install [homebrew](http://brew.sh) and Xcode command line tools on your system before installing YDK-Py/YDK-Cpp:
```
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ xcode-select --install
$ brew install pkg-config cmake libssh xml2 curl pcre
$ xcode-select --install
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ brew install python pkg-config libssh xml2 curl pcre cmake
$ curl -O https://devhub.cisco.com/artifactory/osx-ydk/0.6.0/libydk_0.6.0_Darwin.pkg
$ sudo installer -pkg libydk_0.6.0_Darwin.pkg -target /
```

## Windows
You must install the following requirements::
* [Python Releases for Windows](https://www.python.org/downloads/windows)
* [Visual C++ Build Tools](http://landinghub.visualstudio.com/visual-cpp-build-tools)
Currently, ``YDK-Py`` and ``YDK-Cpp`` from release ``0.6.0`` onwards is not supported on Windows.

# Installation
## Setting up your environment
Expand Down Expand Up @@ -133,7 +136,7 @@ The below steps specify how to use `ydk-gen` to generate the core and a bundle.

The first step in using ydk-gen is either using one of the already existing [bundle profiles](https://github.com/CiscoDevNet/ydk-gen/tree/master/profiles/bundles) or constructing your own bundle profile, consisting of the YANG models you are interested in:

Construct a bundle profile file, such as [```ietf_0_1_1.json```](profiles/bundles/ietf_0_1_1.json) and specify its dependencies
Construct a bundle profile file, such as [```ietf_0_1_1.json```](profiles/bundles/ietf_0_1_1.json) and specify its dependencies.

### Details

Expand Down Expand Up @@ -272,8 +275,8 @@ When run in this way, we will generate a bundle that only contains tje files spe
```
README - install and usage notes
gen-api - generated bundle/core
- python (Python SDK)
- cpp (C++ SDK)
- python (Python SDK)
- cpp (C++ SDK)

generate.py - script used to generate SDK for yang models
profiles - profile files used during generation
Expand Down
70 changes: 35 additions & 35 deletions profiles/bundles/yang/ietf/ietf-interfaces-ext.yang
Original file line number Diff line number Diff line change
@@ -1,48 +1,48 @@
module ietf-interfaces-ext {

namespace "urn:ietf:params:xml:ns:yang:ietf-interfaces-ext";
prefix if-ext;
import ietf-yang-types {
prefix yang;
}
import ietf-interfaces {
prefix if;
}
organization
"IETF NETMOD (NETCONF Data Modeling Language) Working Group";
namespace "urn:ietf:params:xml:ns:yang:ietf-interfaces-ext";
prefix if-ext;
import ietf-yang-types {
prefix yang;
}
import ietf-interfaces {
prefix if;
}
organization
"IETF NETMOD (NETCONF Data Modeling Language) Working Group";

contact
"WG Web: <http://tools.ietf.org/wg/netmod/>
WG List: <mailto:netmod@ietf.org>
contact
"WG Web: <http://tools.ietf.org/wg/netmod/>
WG List: <mailto:netmod@ietf.org>

WG Chair: David Kessens
<mailto:david.kessens@nsn.com>
WG Chair: David Kessens
<mailto:david.kessens@nsn.com>

WG Chair: Juergen Schoenwaelder
<mailto:j.schoenwaelder@jacobs-university.de>
WG Chair: Juergen Schoenwaelder
<mailto:j.schoenwaelder@jacobs-university.de>


Editor: Martin Bjorklund
<mailto:mbj@tail-f.com>";
description
"augments needed for IOS-XE platform show interface command";
Editor: Martin Bjorklund
<mailto:mbj@tail-f.com>";
description
"augments needed for IOS-XE platform show interface command";

augment "/if:interfaces-state/if:interface/if:statistics" {
description
"this adds a leaf called total input packets as we have no way of doing arithmetic in RPL";
augment "/if:interfaces-state/if:interface/if:statistics" {
description
"this adds a leaf called total input packets as we have no way of doing arithmetic in RPL";

leaf in-pkts {
type yang:counter64;
description
"total packets input";
}
leaf in-pkts {
type yang:counter64;
description
"total packets input";
}

leaf out-pkts {
type yang:counter64;
description
"total packets output";
}
}
leaf out-pkts {
type yang:counter64;
description
"total packets output";
}
}

augment "/if:interfaces-state/if:interface" {
description
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -242,7 +242,7 @@ module bgp-operational {
}

leaf-list supported-capabilities {
type string;
type string;
/* type identityref {
base bgp-types:bgp-capability;
}*/
Expand Down
16 changes: 8 additions & 8 deletions profiles/bundles/yang/openconfig/bgp-types@2015-05-15.yang
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
module bgp-types {
yang-version "1";
yang-version "1";

namespace "http://openconfig.net/yang/bgp-types";
namespace "http://openconfig.net/yang/bgp-types";

prefix "bgp-types";
prefix "bgp-types";

import ietf-inet-types { prefix inet; }
import ietf-inet-types { prefix inet; }

// meta
organization
// meta
organization
"OpenConfig working group";

contact
Expand Down Expand Up @@ -210,7 +210,7 @@ module bgp-types {
}

typedef bgp-well-known-community-type {
type string;
type string;
/* type identityref {
base bgp-well-known-std-community;
} */
Expand Down Expand Up @@ -354,4 +354,4 @@ module bgp-types {
}


}
}
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ module policy-types {
condition statements";

leaf operator {
type string;
type string;
/* type identityref {
base attribute-comparison;
}*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -227,7 +227,7 @@ module routing-policy {
characteristic of a route";

leaf install-protocol-eq {
type string;
type string;
/*type identityref {
base pt:install-protocol-type;
}*/
Expand Down
112 changes: 56 additions & 56 deletions profiles/test/bgp.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,81 +7,81 @@

"models": {

"_descr_git": "Each element on the list has details on git repositories to source models from, including commit ids and relative paths inside the repositories. If no commit id is specified, HEAD is taken. This is unwise. The nested dir and file references are interpreted the same way as specific dir and file references above.",
"git": [
{
"url": "https://github.com/YangModels/yang.git",
"commits": [
"_descr_git": "Each element on the list has details on git repositories to source models from, including commit ids and relative paths inside the repositories. If no commit id is specified, HEAD is taken. This is unwise. The nested dir and file references are interpreted the same way as specific dir and file references above.",
"git": [
{
"url": "https://github.com/YangModels/yang.git",
"commits": [



{
{

"commitid": "a5e3d7f27e0e846cac6b6357ff460b8facc810a8",
"file": [
"standard/ietf/RFC/ietf-inet-types.yang",
"standard/ietf/RFC/ietf-interfaces.yang",
"standard/ietf/RFC/ietf-netconf-acm.yang",
"standard/ietf/RFC/ietf-yang-smiv2.yang",
"standard/ietf/RFC/ietf-yang-types.yang",
"standard/ietf/RFC/iana-if-type.yang"
"commitid": "a5e3d7f27e0e846cac6b6357ff460b8facc810a8",
"file": [
"standard/ietf/RFC/ietf-inet-types.yang",
"standard/ietf/RFC/ietf-interfaces.yang",
"standard/ietf/RFC/ietf-netconf-acm.yang",
"standard/ietf/RFC/ietf-yang-smiv2.yang",
"standard/ietf/RFC/ietf-yang-types.yang",
"standard/ietf/RFC/iana-if-type.yang"

]
},
]
},




{
{

"commitid": "be8ff2197e1179c2193433c38ba766a65aca5828",
"file": [
"standard/ietf/RFC/iana-crypt-hash.yang"
"commitid": "be8ff2197e1179c2193433c38ba766a65aca5828",
"file": [
"standard/ietf/RFC/iana-crypt-hash.yang"

]
},
]
},

{
{

"commitid": "f6b4e2d59d4eedf31ae8b2fa3119468e4c38259c",
"file": [
"experimental/openconfig/bgp/bgp.yang",
"experimental/openconfig/bgp/bgp-multiprotocol.yang",
"experimental/openconfig/bgp/bgp-operational.yang",
"experimental/openconfig/bgp/bgp-types.yang",
"experimental/openconfig/policy/policy-types.yang",
"experimental/openconfig/policy/routing-policy.yang",
"experimental/openconfig/structure/model-structure.yang"
"commitid": "f6b4e2d59d4eedf31ae8b2fa3119468e4c38259c",
"file": [
"experimental/openconfig/bgp/bgp.yang",
"experimental/openconfig/bgp/bgp-multiprotocol.yang",
"experimental/openconfig/bgp/bgp-operational.yang",
"experimental/openconfig/bgp/bgp-types.yang",
"experimental/openconfig/policy/policy-types.yang",
"experimental/openconfig/policy/routing-policy.yang",
"experimental/openconfig/structure/model-structure.yang"

]
}
]
}

]
},
]
},

{
"url": "https://github.com/openconfig/public.git",
"commits": [
{
"commitid": "4ab22755c2484e893b2c2b6d88f800b8dd41bb09",
"dir": [
{
"url": "https://github.com/openconfig/public.git",
"commits": [
{
"commitid": "4ab22755c2484e893b2c2b6d88f800b8dd41bb09",
"dir": [

"release/models/interfaces",
"release/models/inventory",
"release/models/mpls",
"release/models/optical-transport",
"release/models/rpc",
"release/models/telemetry",
"release/models/vlan"
"release/models/interfaces",
"release/models/inventory",
"release/models/mpls",
"release/models/optical-transport",
"release/models/rpc",
"release/models/telemetry",
"release/models/vlan"

],
"file": [
"release/models/openconfig-extensions.yang",
"release/models/openconfig-types.yang"
],
"file": [
"release/models/openconfig-extensions.yang",
"release/models/openconfig-types.yang"

]
}
]
]
}
]

}
]
Expand Down
Loading