39 Commits

Author SHA1 Message Date
Dan Prince
643a36b0d9 Add metadata_agent.ini to config_path in setup.py.
Change-Id: Ia2795a22165a30684c17e23bdf73f8c6e0c01825
2012-12-03 10:36:08 -05:00
Mark McClain
0c3dd5af4c add metadata proxy support for Quantum Networks
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
2012-11-28 19:09:16 -05:00
Monty Taylor
d65bca867c Updated openstack-common setup and version code.
Updating setup and version require code changes in the code base. This is done
here to support Id9c116a1e10e5c240913fae7a127110b806eff0f

Change-Id: I60b6dd6d684982e33de8fbf051a3dcaf98cb9b87
2012-11-08 09:21:34 +08:00
justin Lund
9775fb9d74 Correct Intended Audience
Correcting the Initial Audience from Developers to
System Administrators.

Change-Id: I96fd07d657b9049e035ec33ecddcab8bb09552e3
2012-10-23 15:16:09 -04:00
justin Lund
cf7d7967f1 Add OpenStack trove classifier for PyPI
Add trove classifier to have the client listed among the
other OpenStack-related projets on PyPI.

Change-Id: Ic07fa4b3717a41fdd74c7447d65037dee7ea7fb7
2012-10-23 14:31:55 -04:00
Somik Behera
7ea7db0125 l3_nat_agent was renamed to l3_agent
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
2012-10-01 22:37:57 -07:00
Jiajun Liu
39cce9bedd add missing files from setup.py
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
2012-09-14 09:28:20 +08:00
Jenkins
aaec26c7db Merge "Create utility to clean-up netns." 2012-09-05 00:27:24 +00:00
Nachi Ueno
762cc5d830 Implements agent for Quantum Networking testing
This agent client plugs itself into each network.
Then tries to ping each fixed_ips.
Implements blueprint test-agent

Change-Id: I3908e37401272e9e091ceae66e72cfcdd13b7898
2012-09-04 16:00:23 +00:00
Mark McClain
8e34320bbc Create utility to clean-up netns.
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
2012-09-04 01:45:03 -04:00
John Dunning
193d699727 Update rootwrap; track changes in nova/cinder
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
2012-08-30 16:55:00 -04:00
Mark McClain
ed263e68e2 Add lease expiration script support for dnsmasq
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
2012-08-24 12:14:45 -04:00
Dan Wendlandt
3005d16fe3 quantum l3 + floating IP support
bp quantum-l3-fw-nat

router & floating IP API calls, plugin db, and agent implemented
and unit tested

Change-Id: I6ee61396d22e2fd7840aa2ff7d1f6f4a2c6e54d4
2012-08-17 08:15:34 -07:00
Ryota MIBU
7aebe2468b NEC OpenFlow plugin support.
blueprint quantum-nec-openflow-plugin

Change-Id: Ib6d6f658bbf6d653527fa7820685f9bed1412a18
2012-08-14 19:01:39 +09:00
Nachi Ueno
b1fa5ef2ca Initial implemention of MetaPlugin
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
2012-08-13 06:19:31 +00:00
Mark McClain
43960ee448 implement dhcp agent for quantum
blueprint: quantum-dhcp

This change adds an agent to manage DHCP for Quantum networks

Change-Id: If3c62965550dc0b0a7982b01d3468e2e07e2b775
2012-07-08 14:50:49 -04:00
Monty Taylor
6d9ddf1c37 Use setuptools git plugin for file inclusion.
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
2012-07-01 05:31:22 -07:00
Gary Kotton
842584f3ef Remove paste configuration details to a seperate file.
blueprint use-common-cfg

In addition this ensures that the cisco extension units are working
with the common cfg code.

Change-Id: I8c1f81e295e7ed593f0b58885efeeb15339b7733
2012-06-24 01:45:27 -04:00
Gary Kotton
0c0d8f00a9 Implements the blueprint use-common-cfg for the quantum service.
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
2012-06-20 02:30:11 -04:00
Monty Taylor
20ee7ee0e7 Fix up test running to match jenkins expectation.
Change-Id: I215cd92d707f81ed481897704b31188017a5a8b8
2012-06-10 15:20:16 -04:00
Jason Kölker
7b38df15a1 PEP8 fixes
Change-Id: Iab4c2ada2bfcb99452f940666b25cb1f7d4d7e58
2012-06-01 10:50:36 -05:00
Bhuvan Arumugam
50c02660b2 Include AUTHORS in release package.
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
2012-05-14 14:45:56 -07:00
Monty Taylor
8f6de697f0 Split out pip requires and aligned tox file.
Align tox.ini file with standards.
Align setup.py with openstack-common standards.

Change-Id: I333bbd66648c865a5c97ec2661359ab849274446
2012-03-14 23:20:22 -07:00
Ionuț Arțăriși
8213824569 remove pep8 and strict lxml version from setup.py
Change-Id: I671f3e924641cdfdfb5d20d0b0e3c77e1dc714e2
2012-02-27 12:56:22 +01:00
Isaku Yamahata
a5f97ccc3b plugin: introduce ryu plugin
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
2012-02-26 13:30:25 +09:00
Brad Hall
2386a7e2d5 Initial commit: nvp plugin
blueprint: quantum-nvp-plugin

Change-Id: I07c5d7b305928c341ef1b35a0d9b3281abcb03ae
2012-02-22 14:40:51 -08:00
Bob Kukura
d6bf2b7616 Cleanup the source distribution.
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>
2012-02-17 17:55:00 -05:00
Sumit Naiksatam
25e22bb750 blueprint quantum-linux-bridge-plugin
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
2012-02-08 13:32:55 -08:00
Bob Kukura
12b06b1caf Remove quantum CLI console script.
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>
2012-02-03 16:20:28 -05:00
Monty Taylor
e85f2ea8bf Quantum was missing depend on lxml.
Change-Id: Ie8d582018f2c5f7972f6d9ab8fcf0f79d00f6a99
2012-01-24 17:41:51 -08:00
Major Hayden
88f5d2db75 Removed erroneous print from setup.py
Change-Id: If174ec35f687d4a5acc71b0ce4292a8b7f6397a1
2012-01-17 14:11:03 -06:00
James E. Blair
c6ffd875df Base version.py on glance.
This makes setting and calculating the versioning of quantum more
like other OpenStack projects, simplifying the work of the CI
and Release Management teams.

Addresses bug 916018 which prevents the quantum-tarball job from
running correctly.

Change-Id: I5b006ccc3d31c5d213c703853dfa38f04d983918
2012-01-17 16:24:34 +11:00
Brad Hall
f3a9665e43 Fix lp bug 897882
This moves the tree to having a standard setup.py.  For those who want to
build individual packages you'll need to use the setup_<package>.py files.

This allows us to support the traditional setup.py commands (i.e. sdist, etc)
that the openstack CI scripts will be using.

Change-Id: I7fe286d9973f43ae118a715276b0c089230f4f7e
2012-01-04 09:38:35 -08:00
Brad Hall
40f0a170d7 Fix for bug 900316
This fixes the --venv and --user install options as well as the path in the
cli script.

Change-Id: Ie9f265ca248db3d91ff92b7dc3090e1bfdbb0eb6
2011-12-05 09:53:43 -08:00
Brad Hall
6a08320031 Second round of packaging changes
This change condenses the directory structure to something more similar to
what we had before while producing similar packages.

It also introduces version.py which allows us to get the version from git tags
(or a fallback version if not available).

Fixes lp bug 889336
Fixes lp bug 888795

Change-Id: I86136bd9dbabb5eb1f8366ed665ed9b54f695124
2011-11-28 10:33:52 -08:00
Tyler Smith
24b0207cbe blueprint quantum-packaging
Change-Id: Ica19170540b06ecddb0fbb6d340ee7a6819c1708
2011-03-07 18:02:05 -05:00
Arvind Somy
b9bd8976b2 PEP8 fixes for setup.py 2011-08-24 13:10:29 -04:00
Arvind Somy
2a89b0996d lp Bug#824145 : Adding a setup script for quantum. 2011-08-10 15:47:11 -04:00
Arvind Somy
3094561df6 - Adding setup script. 2011-08-09 16:45:22 -04:00