63 Commits

Author SHA1 Message Date
Thomas Bechtold
e6773539b5 Switch to msgpack in pip-requires
msgpack-python got renamed to msgpack[1] so use the new name.

[1] https://pypi.python.org/pypi/msgpack/0.5.1

Signed-off-by: Thomas Bechtold <tbechtold@suse.com>
Acked-By: Iwase Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-03-20 22:36:04 +09:00
IWASE Yusuke
83650576e4 travis: Introduce autopep8 test
This patch add a new test using "autopep8" to keep codes reformatted
easily by using Python tool.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-12-17 19:27:46 +09:00
IWASE Yusuke
bdf3549563 pycodestyle: Replace pep8
pep8 has been renamed to pycodestyle and will be removed in a future
release.

This patch replaces pep8 by pycodestyle and adding some settings for
pycodestyle.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-12-17 19:27:41 +09:00
FUJITA Tomonori
a991fed7e4 Revert "tests: Separate test files from Ryu module"
This reverts commit a67ed2858417b9d795460f05126c01fb0cd344f9.

The commit breaks OpenStack neutron dynamic routing.
2017-06-30 14:23:03 +09:00
IWASE Yusuke
a67ed28584 tests: Separate test files from Ryu module
To prevent redundant files (e.g., pcap files, json files for tests,
packet data generator) to be installed, this patch separates test
directory from Ryu module.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-06-26 15:17:44 +09:00
IWASE Yusuke
d9d0588689 pip: OpenStack updated requirements of eventlet again
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-06-22 16:08:35 +09:00
IWASE Yusuke
bfcd65744c pip: OpenStack avoids newer eventlet
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-05-30 17:00:45 +09:00
IWASE Yusuke
dc57ff5b47 tools/optional-requires: SQLAlchemy for Zebra service
This patch adds a new optional requirements, SQLAlchemy, for Zebra
protocol service database.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-02-22 12:22:51 +09:00
IWASE Yusuke
6ebf0f7e4a optional-requires: Specify lxml version for OpenStack
OpenStack added "lxml!=3.7.0" into its requirements file, and this
patch adds the same specification for avoiding VersionConflict
error while installing.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-12-29 22:05:50 +09:00
IWASE Yusuke
1453f0f9e2 pip: Add doc requirements for convenience
This patch adds the requirements file for building the Ryu documentation.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-12-10 22:01:34 +09:00
IWASE Yusuke
03f77e7279 pip: Separate test-requires
Currently, in addition to "requirements for tests", test-requires
includes "optional requirements".
This makes it unclear to identify which packages are surely required
to use optional features (e.g., OF-Config, NETCONF, BGP speaker) and
causes the redundant installation when building Docker images.

This patch separates test-requires into two files("test requirements"
and "optional requirements").

Also, this patch reverts the version fixation for some packages.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-15 20:58:06 +09:00
IWASE Yusuke
b9e4345d5d pip: Move tinyrpc to pip-requires
Because the embedded tinyrpc was removed, tinyrpc is required to
be install for running Ryu application.
This patch moves tinyrpc from test-requires to pip-requires.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-11 12:11:50 +09:00
IWASE Yusuke
7e91a55a56 contrib/ncclient: Remove embedded ncclient, use upstream
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-04 09:51:27 +09:00
FUJITA Tomonori
a3ab6c8ab3 use old cryptography version
Looks like that the latest version (1.5.2) doesn't work:

https://s3.amazonaws.com/archive.travis-ci.org/jobs/164527154/log.txt

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-10-04 07:38:03 +09:00
IWASE Yusuke
51e0abd365 pip-requires: Add ovs>=2.6.0
Now OVS 2.6.0 has been released, which is including
Python 3 compatibility.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-10-01 21:28:52 +09:00
Iwase Yusuke
ba1fb5cf06 PyInstaller: Enable to build stand-alone executables
Usage: After installing Ryu (on virtualenv is better), build a
ryu-manager executable as following:
   $ pip install PyInstaller==3.1.1
   $ cd tools/
   $ pyinstaller ryu-manager.spec
   $ ./dist/ryu-manager

Note: PyInstaller==3.2 may have a bug of str encoding, please use
Pyinstaller==3.1.1 instead.
   https://github.com/pyinstaller/pyinstaller/issues/1976

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-08-25 14:25:57 +09:00
IWASE Yusuke
9b57e7bd07 test-requires: Update to use the latest Pylint
Current specified Pylint(==0.25.0) are not enough to support Python 3.
This patch updates test-requires to use the latest one.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-06-01 20:38:39 +09:00
IWASE Yusuke
4fa85d1e4b test-requires: Add tinyrpc for RPC controller in wsgi
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-06-01 20:38:27 +09:00
YAMAMOTO Takashi
9e3aaaf2d8 Make ovs optional
Requiring a dev version of ovs here causes version conflict issues
for projects which don't want to use dev versions of libraries. [1]

Make it optional and document it in README instead.

[1] https://bugs.launchpad.net/neutron/+bug/1584858

Signed-off-by: YAMAMOTO Takashi <yamamoto@ovn.org>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-05-26 23:30:49 +09:00
Victor J. Orlikowski
89b2bf52d5 Bump version requirement for oslo.config, given usage of min parameter to IntOpt
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-05-13 23:03:52 +09:00
FUJITA Tomonori
b8cb2d22aa pip-requires: force ovs>=2.6.0dev0 for everyone
The version of pip on Ubuntu 14.04 can't handle the version
condition. So force ovs>=2.6.0dev0 for python2.7 users too.

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Acked-by: Jason Kölker <jason@koelker.net>
2016-03-30 05:02:38 +09:00
Jason Kölker
8d2604ee67 contrib/ovs: Remove embeded ovs, use upstream
Signed-off-by: Jason Kölker <jason@koelker.net>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-03-21 19:28:32 +09:00
FUJITA Tomonori
af5e6b5fb7 drop python2.6 support
The Python core team[*1] stopped supporting python 2.6. Some Python
libraries started following the same path and trying to support 2.6
becomes painful...

For example, most of you already noticed, oslo.config dropped 2.6
support. I tried to work around it with the following commit:

2250171098

But this forces users of decent distributions (e.g Ubuntu 14.04) to
upgrade pip (old pip versions can't understand version conditions).

[*1]
http://www.curiousefficiency.org/posts/2015/04/stop-supporting-python26.html

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-02-18 06:54:47 +09:00
IWASE Yusuke
2ae4f884ab tox: Adapt to PyPy interpreter
Note: Though tests may not be enough, as far as running unit test,
this patch makes compatible with PyPy interpreter.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-02-10 13:46:35 +09:00
FUJITA Tomonori
2250171098 cap oslo.config version only in python2.6
https://bugs.launchpad.net/neutron/+bug/1531837

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Reviewed-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
2016-01-08 21:07:35 +09:00
FUJITA Tomonori
1ed92b25b5 avoid oslo.config 3.1.0 and later for python2.6 support
oslo.config v3.1.0 dropped python2.6 support:

9470f19eac

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-12-08 21:48:38 +09:00
IWAMOTO Toshihiro
2749f9d4ed python3: Use formencode instead of xml_compare
The last release of xml_compare is 7 years ago and doesn't support python3.

Signed-off-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-06-25 12:23:31 +09:00
FUJITA Tomonori
f65ecadfaa eventlet has already supported WebSocket(RFC6455) in stable releases (>= 0.15)
Signed-off-by: Satoshi Kobayashi <satoshi-k@stratosphere.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-06-23 14:55:51 +09:00
YAMAMOTO Takashi
c73d7303a6 Adapt to namespace-less oslo
oslo packages got away from namespaces while ago.
Update ryu to use the new namespace-less import path.
Bump oslo.config requirement version accordingly.

Reference:
https://blueprints.launchpad.net/oslo-incubator/+spec/drop-namespace-packages
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-05-19 15:39:27 +09:00
YAMAMOTO Takashi
ea5f9ff097 Revert "pip-requires: Remove comments"
This reverts commit 8fc25ca6c8c3f4510980b14db2604e62af043a2d.
The workaround is no longer necessary because the relevant fix
in devstack [1] has been merged.

[1] https://review.openstack.org/#/c/165709/

Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-03 17:51:29 +09:00
YAMAMOTO Takashi
8fc25ca6c8 pip-requires: Remove comments
This partially reverts commit bf58a6dcf3dcf6241fc1c9e58f3e43d2aa9ea7f2.

devstack (stable/juno) fails to process comments in this file.
While a fix for devstack has been proposed [1], it might take some time
to be merged.  I guess it's best to fix it in ryu, at least for a while.

[1] https://review.openstack.org/#/c/165709/

Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-22 15:39:18 +09:00
YAMAMOTO Takashi
f39e95043c requirements: Drop some optional requirements
Move some non pure python requirements (namely lxml and paramiko)
from pip-requires to test-requires.  Document it in README.rst.

Motivations:

- Make this pip-installable with pypy
- Less distribution package requirements (deb/rpm/etc) in case
  a user do not actually need the functionality

Note: while paramiko itself is pure python, it requires pycrypto.
Note: msgpack has pure python fallback implementation.

Separating ryu into smaller packages would be a better alternative.
However, it would involve a lot more work than this workaround.

Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-17 12:20:25 +09:00
YAMAMOTO Takashi
bf58a6dcf3 pip-requires: Add comments to say what's required by what
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-17 12:20:23 +09:00
YAMAMOTO Takashi
459baf87d3 pyang_plugins: pep8 style fix
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-10-14 10:54:36 +09:00
Hisaharu Ishii
8051160db1 pip-requires: gui_topology requires webob>=1.2
gui_topology imports webob.static.DirecoryApp
which was added since webob 1.2

Signed-off-by: Hisaharu Ishii <ishii.hisaharu@lab.ntt.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-07-07 22:13:37 +09:00
Yoshihiro Kaneko
78a9a20270 contrib: import tinyrpc library
https://pypi.python.org/pypi/tinyrpc/0.5
https://github.com/mbr/tinyrpc

Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-15 21:33:07 +09:00
Yoshihiro Kaneko
dbb143f972 downgrade required version of msgpack-python
For Ubuntu 14.04, downgrade the required version of msgpack-python.

Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-15 21:33:07 +09:00
YAMADA Hideki
192d693075 pip-requires: WebSocket-RPC requires tinyrpc
Signed-off-by: YAMADA Hideki <yamada.hideki@po.ntts.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-05-20 12:39:09 +09:00
YAMAMOTO Takashi
7d1fcd7581 pip-requires: require oslo.config >= 1.2.0
specifically we want their commit de803cdf
(Change-Id: If712e1d51c1e1329093acb16ed6a84e9f0baf8c1)
for stable order of cli options.
the following sub-command commits rely on it.

Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-04-20 20:59:14 +09:00
YAMAMOTO Takashi
13ec0df56d pyang plugin to generate of_config.generated_classes
the current version of generated_classes was written by hand.
this plugin allows it to be auto-generated from the yang module
of OF-Config if/when it's available.

unfortunately, there seems to be no yang modules usable for this
purpose publically available yet, though.
the yang module of OF-Config 1.1.1 is embedded in pdf.  besides that
it's hard to extract from the pdf, its license is unclear.
OF-Config 1.2 says that its yang module is distributed as a separate
file.  but i couldn't find it on ONF site.

Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16 20:37:39 +09:00
Wei-Li Tang
1875071ce2 six.add_metaclass requires six>=1.4.0
python-six package from Ubuntu 12.04 LTS remains version 1.1.0,
which prevents ryu-manager from being started and raises exception
"AttributeError: 'module' object has no attribute 'add_metaclass'".

Signed-off-by: Wei-Li Tang <alextwl@xinguard.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-04 13:21:38 +09:00
YAMAMOTO Takashi
d5bb06a3f9 use six.add_metaclass
as suggested by OpenStack Style Guideline.

Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-02-11 13:56:40 +09:00
YAMAMOTO Takashi
6f59821b50 pip-requires: sort in alphabetical order
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-02-11 13:34:45 +09:00
YAMAMOTO Takashi
7ca3621139 tests: add some tests for ryu.lib.of_config.classes
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-01-09 21:21:41 +09:00
YAMAMOTO Takashi
82dafb7300 requires lxml
will be used for OF-Config stuff.

Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2013-12-25 12:12:51 +09:00
YAMAMOTO Takashi
03ac8742f4 msgpack-rpc fixes and improvements
- make create_request returns msgid
- fix msgid wrap around
- rename classes
- convenient transport classes for socket-like
- update requirements
- copyright notice, comments, and assertions

Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2013-11-29 09:23:37 +09:00
YAMAMOTO Takashi
748f8ae970 unit test: test ryu.cmd.manager
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2013-11-27 12:49:47 +09:00
YAMAMOTO Takashi
4457537d26 a simple script to plot rest_topology's output
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2013-08-26 15:04:47 +09:00
YAMAMOTO Takashi
fef6f622bf a script to normalize json
this will be used to normalize *.json files in the tree
so that we can get more readable diffs.

Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2013-08-13 08:12:36 +09:00
Satoshi Kobayashi
8be31f062c Remove contrib/oslo directory
oslo.config is installed from PyPI

Signed-off-by: Satoshi Kobayashi <satoshi-k@stratosphere.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2013-07-28 13:50:18 +09:00