a5f97ccc3b
blueprint ovs-driver-extention This patch implements the blueprint ovs-driver-extention https://blueprints.launchpad.net/quantum/+spec/ovs-driver-extension This patch factors out ovs common logic from ovs plugin into ovscommon and adds Ryu NOS plugin. This patch enhances ovs plugin for generic OVS controller support and This patch is to add ofp controller support to OVS. Store ofp controller address in ovs quantum data base. - nova firewall_driver - nova linuxnet_interface_driver There may be ports unmanaged by nova/quantum. Those ports are used to connect vm to outside of physical machine. They needs special care. --- Changes 12 -> 13: - rebased to543e150d6d
changed files are only MANIFEST.in, setup.py, tools/pip-requres Changes 11 -> 12: - ryu agent eliminated from quantum.common import exceptions as exc - ryu.db.api eliminated ofp_has_servers - ryu.nova eliminated from quantum.plugins.ryu.nova import ovs_utils and eliminate ovs_utils Chnages 10 -> 11: - rebased toa945d1a304
- more Maru's review - setup.py: fix setup() argument This isn't directly related to ryu plugin though - improve fake ini file when unit test remove fake ini file after unit tests. use StringIO when no file is required. - LOG: don't use % Chnages 8 -> 9 -> 10: - minor fixes: forgot to commit some hunks Chnages 7 -> 8: - rebased tod6bf2b7616
- catch upd6bf2b7616
change introduced bin/quantum_ryu_agent - addressed Maru's review - avoid custom patching, use mock for test and added mox and mock to pip-requires - more pep8 - avoid \ for line continuation - avoid single char variables - db.api: first() -> one() - utilize implicit conversion var is not None -> var - and more... Changes 6 -> 7: - update comment in ryu/run_tests.py - make unit tests pass without ryu installed i.e. PLUGIN_DIR=quantum/plugins/ryu/ ./run_tests.sh works now Chages 5 -> 6: - remove comment Change 4 -> 5: - eliminate relative imports - copyright - doc string - naming (s/CONF_FILE/conf_file/g) - add " check to ryu/nova/ovs_utils - ryu/nova/linux_net: comment - ryu agent: eliminated unused methods - updated ryu/README: add http://www.osrg.net/ryu/using_with_openstack.html - added unit tests Changes 3 -> 4: - reflected Dan's review - on-OVS in ryu.ini - update @author - some naming Changes 2 -> 3: - rebased to04d144ae0b
- abandoned to share code and duplicated codes from openvswitch plugin for ovs plugin stability. - dropped setup_ryu.sh and added README - update nova driver to catch up upstream change (gflags -> cfg) Changes 1 -> 2: - unbreak openvswtich unit test - MANIFEST.in Changes 3 -> new 1: - rebased to1eb3c693b5
- factor out common loginc from openvswitch plugin into ovscommon - Introduced a new independent ryu plugin - try new review due to the previous effort was marked abandoned. > https://review.openstack.org/#change,3055 > Change-Id: I17801a7a74d4087838a8a26c1b1f97f28c2dcef3 Changes: - rebased to9c5c2caef1
- some clean ups Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp> Change-Id: Ia9fe87525cebccc87b7c18a533f48607272cd97f
124 lines
3.6 KiB
Python
124 lines
3.6 KiB
Python
try:
|
|
from setuptools import setup, find_packages
|
|
except ImportError:
|
|
from ez_setup import use_setuptools
|
|
use_setuptools()
|
|
from setuptools import setup, find_packages
|
|
|
|
import sys
|
|
import os
|
|
import subprocess
|
|
from quantum import version
|
|
|
|
|
|
def run_git_command(cmd):
|
|
output = subprocess.Popen(["/bin/sh", "-c", cmd],
|
|
stdout=subprocess.PIPE)
|
|
return output.communicate()[0].strip()
|
|
|
|
|
|
if os.path.isdir('.git'):
|
|
branch_nick_cmd = 'git branch | grep -Ei "\* (.*)" | cut -f2 -d" "'
|
|
branch_nick = run_git_command(branch_nick_cmd)
|
|
revid_cmd = "git --no-pager log --max-count=1 | cut -f2 -d' ' | head -1"
|
|
revid = run_git_command(revid_cmd)
|
|
revno_cmd = "git --no-pager log --oneline | wc -l"
|
|
revno = run_git_command(revno_cmd)
|
|
with open("quantum/vcsversion.py", 'w') as version_file:
|
|
version_file.write("""
|
|
# This file is automatically generated by setup.py, So don't edit it. :)
|
|
version_info = {
|
|
'branch_nick': '%s',
|
|
'revision_id': '%s',
|
|
'revno': %s
|
|
}
|
|
""" % (branch_nick, revid, revno))
|
|
|
|
Name = 'quantum'
|
|
Url = "https://launchpad.net/quantum"
|
|
Version = version.canonical_version_string()
|
|
License = 'Apache License 2.0'
|
|
Author = 'Netstack'
|
|
AuthorEmail = 'netstack@lists.launchpad.net'
|
|
Maintainer = ''
|
|
Summary = 'Quantum (virtual network service)'
|
|
ShortDescription = Summary
|
|
Description = Summary
|
|
|
|
requires = [
|
|
'Paste',
|
|
'PasteDeploy',
|
|
'Routes>=1.12.3',
|
|
'eventlet>=0.9.12',
|
|
'lxml==2.3',
|
|
'pep8>=0.6.1',
|
|
'python-gflags',
|
|
'simplejson',
|
|
'sqlalchemy',
|
|
'webob',
|
|
'webtest'
|
|
]
|
|
|
|
EagerResources = [
|
|
'quantum',
|
|
]
|
|
|
|
ProjectScripts = [
|
|
]
|
|
|
|
config_path = 'etc/quantum/'
|
|
init_path = 'etc/init.d'
|
|
ovs_plugin_config_path = 'etc/quantum/plugins/openvswitch'
|
|
cisco_plugin_config_path = 'etc/quantum/plugins/cisco'
|
|
linuxbridge_plugin_config_path = 'etc/quantum/plugins/linuxbridge'
|
|
nvp_plugin_config_path = 'etc/quantum/plugins/nicira'
|
|
ryu_plugin_config_path = 'etc/quantum/plugins/ryu'
|
|
|
|
DataFiles = [
|
|
(config_path,
|
|
['etc/quantum.conf', 'etc/quantum.conf.test', 'etc/plugins.ini']),
|
|
(init_path, ['etc/init.d/quantum-server']),
|
|
(ovs_plugin_config_path,
|
|
['etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini']),
|
|
(cisco_plugin_config_path,
|
|
['etc/quantum/plugins/cisco/credentials.ini',
|
|
'etc/quantum/plugins/cisco/l2network_plugin.ini',
|
|
'etc/quantum/plugins/cisco/nexus.ini',
|
|
'etc/quantum/plugins/cisco/ucs.ini',
|
|
'etc/quantum/plugins/cisco/cisco_plugins.ini',
|
|
'etc/quantum/plugins/cisco/db_conn.ini']),
|
|
(linuxbridge_plugin_config_path,
|
|
['etc/quantum/plugins/linuxbridge/linuxbridge_conf.ini']),
|
|
(nvp_plugin_config_path,
|
|
['etc/quantum/plugins/nicira/nvp.ini']),
|
|
(ryu_plugin_config_path, ['etc/quantum/plugins/ryu/ryu.ini']),
|
|
]
|
|
|
|
setup(
|
|
name=Name,
|
|
version=Version,
|
|
url=Url,
|
|
author=Author,
|
|
author_email=AuthorEmail,
|
|
description=ShortDescription,
|
|
long_description=Description,
|
|
license=License,
|
|
scripts=ProjectScripts,
|
|
install_requires=requires,
|
|
include_package_data=False,
|
|
packages=find_packages('.'),
|
|
data_files=DataFiles,
|
|
eager_resources=EagerResources,
|
|
entry_points={
|
|
'console_scripts': [
|
|
'quantum-linuxbridge-agent =' \
|
|
'quantum.plugins.linuxbridge.agent.linuxbridge_quantum_agent:main',
|
|
'quantum-openvswitch-agent =' \
|
|
'quantum.plugins.openvswitch.agent.ovs_quantum_agent:main',
|
|
'quantum-ryu-agent = ' \
|
|
'quantum.plugins.ryu.agent.ryu_quantum_agent:main',
|
|
'quantum-server = quantum.server:main',
|
|
]
|
|
},
|
|
)
|