Implements Mellanox Quantum plugin.
This plugin implements Quantum v2 APIs with support for Mellanox embedded
switch functionality as part of the VPI (Ethernet/InfiniBand) HCA.
Change-Id: I22907dfec5b6cb8f6ad8c3b6e390abc4f8e0ac10
* s+[/.]nicira_nvp_plugin++
* Backwards compatibility is maintained by importing the
nicira package as nicira_nvp_plugin in the plugins package.
* It may be necessary to remove stale .pyc/.pyo files under the
nicira path after applying this patch.
* DocImpact
* Addresses bug 1166307
Change-Id: I241a2a75106398506b01bcb7a6ddbaafa1b7bd30
Scope: Unification of all the various plugin files for the Cisco plugin into a single file.
Use Cases: Quantum with the Cisco plugin.
Implementation Overview: All the config values contained in the various files in
etc/quantum/plugins/cisco will be unified into a single file
etc/quantum/plugins/cisco/cisco_plugin.ini. The plugins needs to be modified to
read from a single file instead of multiple.
Added quantum.openstack.common.cfg support.
Change-Id: I9ef356eccfe330c3733f441b96400d03c3d7d1df
This commit indicates that the master branch has moved on to
representing the "havana" release. The previous commit will be use to
start the milestone-proposed branch for grizzly.
All future changes for grizzly must first be merged
into master, and then back-ported to a grizzly milestone-proposed branch
(or once grizzly is released, the stable/grizzly branch).
Change-Id: Ic2fadf815fd13d8c3d0afbc6493f8cd3ea6545d2
implements blueprint lbaas-namespace-agent
This a reference implemention of the Quantum load balancing service
using HAProxy. The implemention is designed for vendors, developers,
and deployers to become familiar with the API and service workflow.
This change also adds some constraint checks for data integrity.
Change-Id: I10a67da11840477ccf063b98149f4f77248802a1
blueprint brocade-quantum-plugin
This plugin is meant to orchestrate Brocade VCS switches
running NOS, examples of these are:
1. VDX 67xx series of switches
2. VDX 87xx series of switches
Change-Id: Ia8c91ba0e70d3dc7fa79e7f0e09f869542846954
PLUMgrid plugin supports Quantum Core V2 APIs over an infrastructure running
PLUMgrid Network Virtualization Platform.
The plugin will interact directly with the Hypervisor layer to provide all the
networking functionality requested by Quantum APIs.
It will be based on a controller-mode implementation were all resources state
will be controlled and handled by the plugin.
Implements: blueprint plumgrid-quantum-plugin
Change-Id: I6bc8d32b83982e10f661913e85494468cf10e0e2
In support of tag-based versioning, update to latest oslo-version.
This changes from using versioninfo files to using PKG_INFO.
Change-Id: Ia7d212d531305997153204dfffa44beed4bad0d3
Removing unused plugins and code from the Cisco plugin framework.
Change-Id: Ib22d173a088ad50b410a51a1d92685259d0af473
Implements: blueprint cisco-plugin-cleanup
Some changes in setup.py are required to properly handle dependencies
and data files on WIndows (including Hyper-V server).
A console script called "quantum-hyperv-agent" has also been added to
start the Hyper-V agent
Change-Id: Ifac2d33afabac242d9dab87b0bc1764421efc16f
implements blueprint quantum-db-upgrades
This changeset provide database migration capabilities to Quantum by
wrapping the Alembic library.
Change-Id: I8ba3a07f5a65e0fda9c0e85ed9c07c5978c53bc7
Fixes bug 1091605
The utility should be called after rebooting an appliance. This
will purge the openvswicth of configured tap devices.
A configuration variable quantum_ports has been added. This is
by default True which indicates that only Quantum ports will be
deleted from the OVS. If this is set as False then all ports on the
bridge will be deleted.
Change-Id: I442f64cf82f95bfa99d7765eb09db1ce2ecf602e
blueprint metadata-overlapping-networks
Adds Metadata for guest VMs running on Qunatum networks. This requires
a companion patchset for Nova to test.
Change-Id: I524c6fdcd6a44e46da08395fd84c1288052a69ea
Updating setup and version require code changes in the code base. This is done
here to support Id9c116a1e10e5c240913fae7a127110b806eff0f
Change-Id: I60b6dd6d684982e33de8fbf051a3dcaf98cb9b87
and this was missed.
This broke quantum-l3-agent when setup.py was
used to install but did not affect package installs.
This change fixes the issue.
Change-Id: I820d26fba5d2774262577ed4fbae81dc7362e93e
Fixes bug 1050045.
Currently, setup.py will not copy l3_agent.ini and rootwrap filters
into directory /etc/quantum. Add copy operation in setup.py for those
config files so that those files will be copied into proper directory.
Change-Id: I7052d6c07ffd4d03cafa93187d8072053ee0a832
This agent client plugs itself into each network.
Then tries to ping each fixed_ips.
Implements blueprint test-agent
Change-Id: I3908e37401272e9e091ceae66e72cfcdd13b7898
Fixes bug 1035366
Adds namespace clean up utility called quantum-netns-cleanup which can be used
to remove old namespaces.
The --force option can be used to remove all Quantum namespaces and any
remaining devices. The force option is should not be run on a live Quantum
systems. It is intended for cleaning up devstack a after running
unstack.sh (ideally this will be added to unstack.sh in the future).
Example cmd line when cleaning up a devstack install:
quantum-netns-cleanup --config-file /etc/quantum/quantum.conf \
--config-file /etc/quantum/dhcp_agent.ini --force
Change-Id: I6cf153df21e83bff2cde816db12b22102d1ba698
Fix bug 1037815
Summary: Copy/paste the essential parts of the rootwrap
mechanism from nova/cinder into quantum. This includes
the core changes to filter.py and wrapper.py which deal
with loading filters from files pointed to by
rootwrap.conf
Detailed changes:
Transliterate the old rootwrap/*-agent.py files to
new format, and put the results in etc/quantum/rootwrap.d
Delete the *-agent.py files.
Add conf to point to etc/quantum/rootwrap.d
Add a unit test cribbed from nova to exercise the filter
mechanism
Add a unit test to exercise the actual filtered execution
Note that as written, this patch does not set the default
execute mechanism (in the agent .ini files) to rootwrap,
leaves it as sudo. That can be done in a followon
change, or in distro specific packaging.
Note also that there is still work to do around finishing
and testing the filter specs themselves. We've decided
that that is out of scope for this patch.
Change-Id: I9aba6adc5ba40b6145be5fa38c5ece3b666ae5ca
Fixes bug 1022804
This is phase 2 of the bug fix. This changeset adds support for dnsmasq
--dhcp-script to notify Quantum of lease renewals. Communication between
dnsmasq and the Quantum DHCP agent occurs via UNIX domain socket since dnsmasq
may run in a network namespace. The DHCP agent is responsible for
relaying the updated lease expiration back the Quantum server.
Change-Id: If42b76bbb9ec7543e681e26b9add8eb1d7054eeb
bp quantum-l3-fw-nat
router & floating IP API calls, plugin db, and agent implemented
and unit tested
Change-Id: I6ee61396d22e2fd7840aa2ff7d1f6f4a2c6e54d4
This plugin supports multiple plugins at same time. This plugin is for L3 connectivility
between networks which are realized by different plugins. This plugin add new attribute 'flavor:id'.
flavor:id correspond to specific plugin. flavor-plugin mapping could be configureable by plugin_list config.
This plugin also support extensions. We can map extension to plugin by using extension_map config.
Implements blueprint metaplugin
Change-Id: Ia94d2349fb3ce9f121bbd2505324ae6f0c34247a
Fixes bug 1018833. We're looking at this as a possible pan-project
option instead of manual MANIFEST.in inclusion and then looking for
where the tarballs differ.
Change-Id: I25287d5aca2046c6b613b05d54281533bdd6f79f
blueprint use-common-cfg
In addition this ensures that the cisco extension units are working
with the common cfg code.
Change-Id: I8c1f81e295e7ed593f0b58885efeeb15339b7733
More specifically uses global CONF for the quantum.conf file.
Added support for the RYU plugin (similar to ovs and lb,
which use non-global conf for plugins)
patch 27: clean up find_config_file
patch 28: for config file use old paths (plugin unit tests)
this hopefully will be replaced when we move to common
config file
patch 30: rebase and merge (utils.py and policy.py)
Change-Id: Ic0bf5bdd44f24a557240f7afe4e070dee448c63c
Fixes Bug #976267.
Include AUTHORS file in release package. The file is generated
automatically from git. Handle different combination for mailmap
records. Include test case to verify this fix.
* MANIFEST.in
Include AUTHORS file in release package.
* .gitignore
Add AUTHORS file.
* quantum/openstack/common/setup.py
generate_authors(): New method to create AUTHORS file. If
AUTHORS.in file exists, append it's content to AUTHORS file.
parse_mailmap(): Handle all mailmap combination while parsing.
* setup.py
Import the new method.
Generate AUTHORS file before creating the package.
* quantum/tests/unit/test_setup.py
New test script to verify different combination of records
in mailmap file.
Change-Id: I220e8a20c96d37df3fa2ba0424e8372496e67895
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 to 543e150d6dc9144ebcc588b7d2bd66374a107730
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 to a945d1a30478c644d307c77a8a85f3a08e5a834e
- 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 to d6bf2b76162ba806b2ad1f636f6273e47e03a117
- catch up d6bf2b76162ba806b2ad1f636f6273e47e03a117 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 to 04d144ae0b2ad5618847d1784cea48a08d53a46a
- 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 to 1eb3c693b5f6f3f301047100c36c7915434f8be7
- 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 to 9c5c2caef13fa58234987527ab6caff829a37050
- some clean ups
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Change-Id: Ia9fe87525cebccc87b7c18a533f48607272cd97f
Missing text files such as LICENSE and various READMEs are now
included in the tarball source distribution. The Makefile and shell
script for installing the openvswitch agent on xen are also now
included. The openvswitch and linuxbridge agents are included, and
executable wrapper scripts for the agents are provided. The cisco and
linuxbridge nova drivers are now setup to be run from the quantum
namespace rather than copied to nova. Finally, the setup_*.py scripts
have been removed from the project. Fixes bug 925074.
Test by running "python setup.py sdist" and examining the generated
tarball.
Change-Id: I33d336a5eb13678e6d527b575958393b337b6f3d
Signed-off-by: Bob Kukura <rkukura@redhat.com>
Squashed commit of the following:
commit 6c4995736a56349923d34353031eb301780fc6d2
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Sat Jan 21 22:31:09 2012 -0800
Some more explanation in the README.
Changing defaults in the conf file.
commit 924b118468d7bd21737e9e2cf468ff83d0a20764
Author: Shweta <shpadubi@cisco.com>
Date: Sat Jan 21 20:58:39 2012 -0500
Adding Unit Tests for LinuxBridge Agent
commit 12115650257483172c5e2bc889634dbdf3596d27
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Sat Jan 21 05:21:24 2012 -0800
Adding sqlite requirement
Changing default mysql port number
Fixing log statement
commit 0ad1400e5dfc445b94e9024d92321eb3cd0588a5
Merge: 1b7ba8f 9c5c2ca
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Sat Jan 21 05:12:44 2012 -0800
Merge remote branch 'upstream/master' into snaiksat/linux-bridge-plugin
commit 1b7ba8f7e7b6657734b669194ddfdcfcbfc833be
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Sat Jan 21 04:04:50 2012 -0800
Fixes to get the tests to run correctly.
Also incorporated changes to be able to run both sqlite and mysql DBs.
commit 4cead17576c293319dfdfd363dd18e81ba196b3b
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Fri Jan 20 15:32:35 2012 -0800
Fixed inccorect calls to the DB
commit c4f325729fbd06ee3f5d3520da4d23b2cd8c353b
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Fri Jan 20 12:18:18 2012 -0800
Removing the specialized db modules (which used InnoDB engine) and
instead using the Quantum DB now.
Incorporated changes to setup so that the Linux Bridge plugin can be
installed.
Other changes to README and tests.
commit b9498939d723e353808cface87f4453e33e94b41
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Mon Jan 16 20:00:14 2012 -0800
Adding unit tests
commit a0ab990fdcbf67a950d08c6b5b6d20ceb850619a
Merge: 60e38cc f268b5e
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Mon Jan 16 18:02:55 2012 -0800
Merge remote branch 'upstream/master' into snaiksat/linux-bridge-plugin
commit 60e38cc44886b5c8c9e47d89d8912d1dee23fbd1
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Mon Jan 16 13:44:37 2012 -0800
This contains a fix for the earlier reported issue with the DHCP
failing.
The gateway IP address is now applied both to the bridge, and the
gateway interface.
commit ffea86a3465b8a5ed93b13f818e0afaefa6787ee
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Sun Jan 15 20:00:38 2012 -0800
Fixing an issue in the agent, sometimes the bridges for deleted networks
were not getting cleaned up
commit 87f76fc34f1c70cd82576b8698d704853c892422
Merge: c8b097a 60d171e
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Sun Jan 15 19:40:33 2012 -0800
Merge remote branch 'upstream/master' into snaiksat/linux-bridge-plugin
commit c8b097abc2060b2eae01d84f9fed2c89851d93fd
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Sun Jan 15 19:37:08 2012 -0800
Simplified the logic for creating the bridge on the nova network host.
commit 499dbacd4c5352c5320f3b6e5e8cd7f3629dbcc8
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Fri Jan 13 16:07:53 2012 -0800
Fix for the DHCP issue, now applying Gateway IP to the bridge
Also MAC address from original tap device are applied to bridge
and vlan subinterface
commit 6b4a2aea59702e2c12eeacc86101df9f6770d5ec
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Sat Jan 7 14:29:00 2012 -0800
Optimizations for processing in the loop
commit 01aa47d3572439b193077432c63bf2b85c629edb
Merge: 184f5dd 05df087
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Sun Jan 1 19:04:17 2012 -0800
Changes to incorporate Operational Status
Merge remote branch 'origin' into snaiksat/linux-bridge-plugin
Conflicts:
quantum/db/api.py
commit 05df0870191fac0353fe12a33efff68ef7ed0784
Merge: 31d586b 5b23b5e
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Fri Dec 30 12:30:05 2011 -0800
Merge remote branch 'upstream/master'
commit 184f5dd8b73bc51025509792c15203ee73cd015e
Author: Sumit Naiksatam <snaiksat@cisco.com>
Date: Mon Dec 12 02:09:12 2011 -0800
Initial checkin for Linux Bridge L2 plugin.
Change-Id: I5b27538be6a768a6f7eb77409197f7d8b4bbc628
The quantum CLI console script is now installed by the
python-quantumclient project, so remove it from the quantum project's
setup.py. Fixes bug 925596.
Test by running "python setup.py install --root <somedir>" and
checking that <somedir>/usr/bin/quantum is not created.
Change-Id: Icd7eff79c8d30511693942a859334829cbf0d9af
Signed-off-by: Bob Kukura <rkukura@redhat.com>