Skip to content
This repository was archived by the owner on Nov 2, 2023. It is now read-only.

Commit e24cf4c

Browse files
authored
Merge pull request #41 from CiscoDevNet/0.8.2
Merging branch 0.8.2 to master
2 parents 59820b5 + 262d754 commit e24cf4c

File tree

649 files changed

+584680
-76820
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

649 files changed

+584680
-76820
lines changed

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ sudo: required
33
matrix:
44
include:
55
- os: osx
6+
osx_image: xcode8.3
67
language: generic
78
- env: DOCKER=true OS_TYPE=centos OS_VERSION=centos7
89
- env: DOCKER=true OS_TYPE=ubuntu OS_VERSION=xenial
@@ -11,7 +12,6 @@ matrix:
1112
- os: osx
1213

1314
before_install:
14-
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update ; fi
1515
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then ./dependencies_osx.sh ; fi
1616
- if [[ "$DOCKER" == "true" ]]; then docker pull ${OS_TYPE}:${OS_VERSION} ; fi
1717

README.rst

Lines changed: 85 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,8 @@ YDK is composed of a core package that defines services and providers, plus one
2121
Backward Compatibility
2222
----------------------
2323

24-
Due to changes in Entity class this release of YDK in general is not compatible with model bundles generated with previous YDK releases.
25-
However model bundles for Python generated with YDK-0.7.3 are still compatible with this release.
26-
Please see `the release notes <https://github.com/CiscoDevNet/ydk-py/releases/tag/0.8.1>`_ for details.
24+
The Python YDK-0.8.2 core package is compatible with all model bundles generated previously with ydk-gen releases starting from 0.7.3.
25+
Please see `the release notes <https://github.com/CiscoDevNet/ydk-py/releases/tag/0.8.2>`_ for details.
2726

2827
Docker
2928
------
@@ -61,13 +60,13 @@ For Xenial (Ubuntu 16.04.4)::
6160
sudo ln -sf /usr/bin/gcc-5 /usr/bin/cc
6261
sudo ln -sf /usr/bin/g++-5 /usr/bin/c++
6362

64-
wget https://devhub.cisco.com/artifactory/debian-ydk/0.8.1/xenial/libydk_0.8.1-1_amd64.deb
65-
sudo gdebi libydk_0.8.1-1_amd64.deb
63+
wget https://devhub.cisco.com/artifactory/debian-ydk/0.8.2/xenial/libydk-0.8.2-1.amd64.deb
64+
sudo gdebi libydk-0.8.2-1.amd64.deb
6665

6766
For Bionic (Ubuntu 18.04.1)::
6867

69-
wget https://devhub.cisco.com/artifactory/debian-ydk/0.8.1/bionic/libydk_0.8.1-1_amd64.deb
70-
sudo gdebi libydk_0.8.1-1_amd64.deb
68+
wget https://devhub.cisco.com/artifactory/debian-ydk/0.8.2/bionic/libydk-0.8.2-1.amd64.deb
69+
sudo gdebi libydk-0.8.2-1.amd64.deb
7170

7271
**Centos (Fedora-based)**
7372

@@ -84,22 +83,19 @@ The following packages must be present in your system before installing YDK-Py.
8483
sudo ln -sf /opt/rh/devtoolset-4/root/usr/bin/g++ /usr/bin/c++
8584

8685
# Install YDK core library
87-
sudo yum install https://devhub.cisco.com/artifactory/rpm-ydk/0.8.1/libydk-0.8.1-1.x86_64.rpm
86+
sudo yum install https://devhub.cisco.com/artifactory/rpm-ydk/0.8.2/libydk-0.8.2-1.x86_64.rpm
8887

8988
MacOS
9089
~~~~~
9190

92-
It is required to install Xcode command line tools, `homebrew <http://brew.sh>`_ and the following homebrew packages on your system before installing YDK-Py.
93-
94-
You can download the latest python package from `here <https://www.python.org/downloads/>`_.
95-
Please do not use the homebrew version of python as it causes issues with installing ydk packages. Please execute ``brew rm python python3`` to remove any homebrew python packages::
91+
It is required to install Xcode command line tools, `homebrew <http://brew.sh>`_ and the following homebrew packages on your system before installing YDK-Py::
9692

9793
xcode-select --install
9894
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
9995
brew install pkg-config libssh xml2 libxml2 curl pcre cmake pybind11
10096

101-
curl -O https://devhub.cisco.com/artifactory/osx-ydk/0.8.1/libydk-0.8.1-Darwin.pkg
102-
sudo installer -pkg libydk-0.8.1-Darwin.pkg -target /
97+
curl -O https://devhub.cisco.com/artifactory/osx-ydk/0.8.2/libydk-0.8.2-Darwin.pkg
98+
sudo installer -pkg libydk-0.8.2-Darwin.pkg -target /
10399

104100
Libssh Installation
105101
-------------------
@@ -146,22 +142,22 @@ Instal YDK gNMI library
146142

147143
For Xenial (Ubuntu 16.04.4)::
148144

149-
wget https://devhub.cisco.com/artifactory/debian-ydk/0.8.1/xenial/libydk_gnmi_0.4.0-1_amd64.deb
150-
sudo gdebi libydk_gnmi_0.4.0-1_amd64.deb
145+
wget https://devhub.cisco.com/artifactory/debian-ydk/0.8.2/xenial/libydk_gnmi_0.4.0-2_amd64.deb
146+
sudo gdebi libydk_gnmi_0.4.0-2_amd64.deb
151147

152148
For Bionic (Ubuntu 18.04.1)::
153149

154-
wget https://devhub.cisco.com/artifactory/debian-ydk/0.8.1/bionic/libydk_gnmi_0.4.0-1_amd64.deb
155-
sudo gdebi libydk_gnmi_0.4.0-1_amd64.deb
150+
wget https://devhub.cisco.com/artifactory/debian-ydk/0.8.2/bionic/libydk_gnmi_0.4.0-2_amd64.deb
151+
sudo gdebi libydk_gnmi_0.4.0-2_amd64.deb
156152

157153
**CentOS**::
158154

159-
sudo yum install https://devhub.cisco.com/artifactory/rpm-ydk/0.8.1/libydk_gnmi_0.4.0-1.x86_64.rpm
155+
sudo yum install https://devhub.cisco.com/artifactory/rpm-ydk/0.8.2/libydk_gnmi_0.4.0-2.x86_64.rpm
160156

161157
**MacOS**::
162158

163-
curl -O https://devhub.cisco.com/artifactory/osx-ydk/0.8.1/libydk_gnmi-0.4.0-1_Darwin.pkg
164-
sudo installer -pkg libydk_gnmi-0.4.0-1_Darwin.pkg -target /
159+
curl -O https://devhub.cisco.com/artifactory/osx-ydk/0.8.2/libydk_gnmi-0.4.0-2_Darwin.pkg
160+
sudo installer -pkg libydk_gnmi-0.4.0-2_Darwin.pkg -target /
165161

166162
Runtime environment
167163
~~~~~~~~~~~~~~~~~~~
@@ -185,9 +181,76 @@ It is also required for Python installation to include corresponding shared libr
185181

186182
Please follow `System Requirements` to assure presence of shared Python libraries.
187183

184+
Mac OS
185+
======
186+
187+
The developers of Python2 on Mac OS might face an issue ([#837](https://github.com/CiscoDevNet/ydk-gen/issues/837)).
188+
This is well known and documented issue. Each developer might have different approaches for its resolution.
189+
One of them is to use Python2 virtual environment. See section below for details.
190+
191+
In addition it is required properly set CMAKE_LIBRARY_PATH environment variable to assure that `cmake` uses correct Python library.
192+
Follow these steps to find and set correct library path.
193+
194+
1. Find installations of `libpython2.7` library::
195+
196+
locate libpython2.7.dylib
197+
198+
Example::
199+
200+
$ locate libpython2.7.dylib
201+
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib
202+
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/config/libpython2.7.dylib
203+
/usr/lib/libpython2.7.dylib
204+
/usr/local/Cellar/python@2/2.7.15_1/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib
205+
/usr/local/Cellar/python@2/2.7.15_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/config/libpython2.7.dylib
206+
207+
2. Choose non-system Python library installation and set CMAKE_LIBRARY_PATH before any YDK component installation. Example::
208+
209+
export CMAKE_LIBRARY_PATH=/usr/local/Cellar/python@2/2.7.15_1/Frameworks/Python.framework/Versions/2.7/lib
210+
211+
3. Run YDK core package installation with '-v' flag to check that `PythonLibs` points to correct library path. Example::
212+
213+
$ ./generate.py --core
214+
$ pip install -v gen-api/python/ydk/dist/ydk*.tar.gz
215+
216+
# In 'cmake' log look for 'PythonLibs' and 'found version' settings line:
217+
218+
-- Found PythonLibs: /usr/local/Cellar/python@2/2.7.15_1/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib (found version "2.7.15")
219+
220+
4. Finally test you YDK core library installation from CLI, making sure there are no errors::
221+
222+
$ python -c "import ydk.types"
223+
224+
188225
How to install
189226
--------------
190227

228+
Using Python virtual environment
229+
================================
230+
231+
You may want to perform the installation under Python virtual environment (`virtualenv <https://pypi.python.org/pypi/virtualenv/>`_/`virtualenvwrapper <https://pypi.python.org/pypi/virtualenvwrapper>`_).
232+
The virtual environment allows you to install multiple versions of YDK if needed. In addition, it prevents any potential conflicts between package dependencies in your system.
233+
234+
To install virtual environment support in your system, execute::
235+
236+
pip install virtualenv virtualenvwrapper
237+
source /usr/local/bin/virtualenvwrapper.sh
238+
239+
To create and activate new virtual environment::
240+
241+
mkvirtualenv -p python2.7 ydk-py
242+
243+
To activate existing virtual environment::
244+
245+
source ~/.virtualenvs/py2/bin/activate
246+
247+
To exit virtual environment::
248+
249+
deactivate
250+
251+
Once Python virtual environment is activated, you can perform quick installation or installation from source described above.
252+
Take into consideration that you must not attempt to install YDK as root user under virtual environment.
253+
191254
Quick Install
192255
~~~~~~~~~~~~~
193256

@@ -262,22 +325,6 @@ To install the ``cisco-ios-xr`` bundle, execute::
262325
cisco-ios-xr$ pip install dist/ydk*.gz
263326
cisco-ios-xr$ cd ..
264327

265-
Using a Virtual Environment
266-
~~~~~~~~~~~~~~~~~~~~~~~~~~~
267-
You may want to perform the installation under a Python virtual environment (`virtualenv <https://pypi.python.org/pypi/virtualenv/>`_/`virtualenvwrapper <https://pypi.python.org/pypi/virtualenvwrapper>`_).
268-
A virtual environment allows you to install multiple versions of YDK if needed. In addition, it prevents any potential conflicts between package dependencies in your system.
269-
270-
To install virtual environment support in your system, execute::
271-
272-
pip install virtualenv virtualenvwrapper
273-
source /usr/local/bin/virtualenvwrapper.sh
274-
275-
Create new virtual environment::
276-
277-
mkvirtualenv -p python2.7 ydk-py
278-
279-
At this point, you can perform the quick install or the installation from source described above. Take into account that must not attempt to install YDK as root under a virtual environment.
280-
281328
Documentation and Support
282329
--------------------------
283330
- Read the `API documentation <http://ydk.cisco.com/py/docs>`_ for details on how to use the API and specific models
@@ -289,4 +336,4 @@ Documentation and Support
289336
Release Notes
290337
--------------
291338

292-
The current YDK release version is 0.8.1. YDK-Py is licensed under the Apache 2.0 License.
339+
The current YDK release version is 0.8.2. YDK-Py is licensed under the Apache 2.0 License.

cisco-ios-xe/[email protected]

-2.03 MB
Binary file not shown.

cisco-ios-xe/[email protected]

2.03 MB
Binary file not shown.

cisco-ios-xe/setup.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,10 @@
2424

2525
HERE = path.abspath(path.dirname(__file__))
2626

27-
INSTALL_REQUIREMENTS = ['ydk>=0.7.3']
27+
INSTALL_REQUIREMENTS = ['ydk>=0.8.2']
2828

2929
NMSP_PKG_NAME = "ydk-models-cisco-ios-xe"
30-
NMSP_PKG_VERSION = "16.9.1"
30+
NMSP_PKG_VERSION = "16.9.3"
3131
NMSP_PKG_DEPENDENCIES = ['ydk-models-ietf>=0.1.5.post2']
3232

3333

cisco-ios-xe/ydk/models/cisco_ios_xe/Cisco_IOS_XE_cellwan_oper.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1083,7 +1083,7 @@ class CellwanOperData(Entity):
10831083
"""
10841084

10851085
_prefix = 'cellwan-ios-xe-oper'
1086-
_revision = '2018-09-04'
1086+
_revision = '2018-05-18'
10871087

10881088
def __init__(self):
10891089
super(CellwanOperData, self).__init__()
@@ -1234,7 +1234,7 @@ class CellwanHardware(Entity):
12341234
"""
12351235

12361236
_prefix = 'cellwan-ios-xe-oper'
1237-
_revision = '2018-09-04'
1237+
_revision = '2018-05-18'
12381238

12391239
def __init__(self):
12401240
super(CellwanOperData.CellwanHardware, self).__init__()
@@ -1402,7 +1402,7 @@ class CellwanRadio(Entity):
14021402
"""
14031403

14041404
_prefix = 'cellwan-ios-xe-oper'
1405-
_revision = '2018-09-04'
1405+
_revision = '2018-05-18'
14061406

14071407
def __init__(self):
14081408
super(CellwanOperData.CellwanRadio, self).__init__()
@@ -1624,7 +1624,7 @@ class CellwanNetwork(Entity):
16241624
"""
16251625

16261626
_prefix = 'cellwan-ios-xe-oper'
1627-
_revision = '2018-09-04'
1627+
_revision = '2018-05-18'
16281628

16291629
def __init__(self):
16301630
super(CellwanOperData.CellwanNetwork, self).__init__()
@@ -1853,7 +1853,7 @@ class CellwanConnection(Entity):
18531853
"""
18541854

18551855
_prefix = 'cellwan-ios-xe-oper'
1856-
_revision = '2018-09-04'
1856+
_revision = '2018-05-18'
18571857

18581858
def __init__(self):
18591859
super(CellwanOperData.CellwanConnection, self).__init__()
@@ -1967,7 +1967,7 @@ class CellwanSecurity(Entity):
19671967
"""
19681968

19691969
_prefix = 'cellwan-ios-xe-oper'
1970-
_revision = '2018-09-04'
1970+
_revision = '2018-05-18'
19711971

19721972
def __init__(self):
19731973
super(CellwanOperData.CellwanSecurity, self).__init__()
@@ -2136,7 +2136,7 @@ class CellwanSms(Entity):
21362136
"""
21372137

21382138
_prefix = 'cellwan-ios-xe-oper'
2139-
_revision = '2018-09-04'
2139+
_revision = '2018-05-18'
21402140

21412141
def __init__(self):
21422142
super(CellwanOperData.CellwanSms, self).__init__()
@@ -2253,7 +2253,7 @@ class CellwanGps(Entity):
22532253
"""
22542254

22552255
_prefix = 'cellwan-ios-xe-oper'
2256-
_revision = '2018-09-04'
2256+
_revision = '2018-05-18'
22572257

22582258
def __init__(self):
22592259
super(CellwanOperData.CellwanGps, self).__init__()

cisco-ios-xe/ydk/models/cisco_ios_xe/Cisco_IOS_XE_interfaces_oper.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,8 @@ class EtherSpeed(Enum):
9999
100100
.. data:: speed_unknown = 8
101101
102+
.. data:: speed_auto = 9
103+
102104
"""
103105

104106
speed_10mb = Enum.YLeaf(0, "speed-10mb")
@@ -119,6 +121,8 @@ class EtherSpeed(Enum):
119121

120122
speed_unknown = Enum.YLeaf(8, "speed-unknown")
121123

124+
speed_auto = Enum.YLeaf(9, "speed-auto")
125+
122126

123127
class IetfIntfType(Enum):
124128
"""

0 commit comments

Comments
 (0)