Fixes bug: #1416127 Change-Id: I36118659603315fae458fd876a7fbaf1ac3e5876tags/kilo-eol
@@ -0,0 +1,29 @@ | |||
AUTHORS | |||
build/* | |||
build-stamp | |||
ChangeLog | |||
cover/ | |||
covhtml/ | |||
dist/ | |||
doc/build | |||
*.DS_Store | |||
*.pyc | |||
neutron.egg-info/ | |||
neutron/vcsversion.py | |||
neutron/versioninfo | |||
pbr*.egg/ | |||
quantum.egg-info/ | |||
quantum/vcsversion.py | |||
quantum/versioninfo | |||
setuptools*.egg/ | |||
*.log | |||
*.mo | |||
*.sw? | |||
*~ | |||
/.* | |||
!/.coveragerc | |||
!/.gitignore | |||
!/.gitreview | |||
!/.mailmap | |||
!/.pylintrc | |||
!/.testr.conf |
@@ -1,4 +1,4 @@ | |||
[gerrit] | |||
host=review.openstack.org | |||
port=29418 | |||
project=stackforge/brocade/vdx-AmppML2-SVI.git | |||
project=stackforge/networking-brocade.git |
@@ -0,0 +1,7 @@ | |||
[DEFAULT] | |||
test_command=OS_STDOUT_CAPTURE=${OS_STDOUT_CAPTURE:-1} \ | |||
OS_STDERR_CAPTURE=${OS_STDERR_CAPTURE:-1} \ | |||
OS_TEST_TIMEOUT=${OS_TEST_TIMEOUT:-60} \ | |||
${PYTHON:-python} -m subunit.run discover -t ./ . $LISTOPT $IDOPTION | |||
test_id_option=--load-list $IDFILE | |||
test_list_option=--list |
@@ -0,0 +1,16 @@ | |||
If you would like to contribute to the development of OpenStack, | |||
you must follow the steps in this page: | |||
http://docs.openstack.org/infra/manual/developers.html | |||
Once those steps have been completed, changes to OpenStack | |||
should be submitted for review via the Gerrit tool, following | |||
the workflow documented at: | |||
http://docs.openstack.org/infra/manual/developers.html#development-workflow | |||
Pull requests submitted through GitHub will be ignored. | |||
Bugs should be filed on Launchpad, not GitHub: | |||
https://bugs.launchpad.net/networking-brocade |
@@ -0,0 +1,4 @@ | |||
networking-brocade Style Commandments | |||
=============================================== | |||
Read the OpenStack Style Commandments http://docs.openstack.org/developer/hacking/ |
@@ -0,0 +1,176 @@ | |||
Apache License | |||
Version 2.0, January 2004 | |||
http://www.apache.org/licenses/ | |||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION | |||
1. Definitions. | |||
"License" shall mean the terms and conditions for use, reproduction, | |||
and distribution as defined by Sections 1 through 9 of this document. | |||
"Licensor" shall mean the copyright owner or entity authorized by | |||
the copyright owner that is granting the License. | |||
"Legal Entity" shall mean the union of the acting entity and all | |||
other entities that control, are controlled by, or are under common | |||
control with that entity. For the purposes of this definition, | |||
"control" means (i) the power, direct or indirect, to cause the | |||
direction or management of such entity, whether by contract or | |||
otherwise, or (ii) ownership of fifty percent (50%) or more of the | |||
outstanding shares, or (iii) beneficial ownership of such entity. | |||
"You" (or "Your") shall mean an individual or Legal Entity | |||
exercising permissions granted by this License. | |||
"Source" form shall mean the preferred form for making modifications, | |||
including but not limited to software source code, documentation | |||
source, and configuration files. | |||
"Object" form shall mean any form resulting from mechanical | |||
transformation or translation of a Source form, including but | |||
not limited to compiled object code, generated documentation, | |||
and conversions to other media types. | |||
"Work" shall mean the work of authorship, whether in Source or | |||
Object form, made available under the License, as indicated by a | |||
copyright notice that is included in or attached to the work | |||
(an example is provided in the Appendix below). | |||
"Derivative Works" shall mean any work, whether in Source or Object | |||
form, that is based on (or derived from) the Work and for which the | |||
editorial revisions, annotations, elaborations, or other modifications | |||
represent, as a whole, an original work of authorship. For the purposes | |||
of this License, Derivative Works shall not include works that remain | |||
separable from, or merely link (or bind by name) to the interfaces of, | |||
the Work and Derivative Works thereof. | |||
"Contribution" shall mean any work of authorship, including | |||
the original version of the Work and any modifications or additions | |||
to that Work or Derivative Works thereof, that is intentionally | |||
submitted to Licensor for inclusion in the Work by the copyright owner | |||
or by an individual or Legal Entity authorized to submit on behalf of | |||
the copyright owner. For the purposes of this definition, "submitted" | |||
means any form of electronic, verbal, or written communication sent | |||
to the Licensor or its representatives, including but not limited to | |||
communication on electronic mailing lists, source code control systems, | |||
and issue tracking systems that are managed by, or on behalf of, the | |||
Licensor for the purpose of discussing and improving the Work, but | |||
excluding communication that is conspicuously marked or otherwise | |||
designated in writing by the copyright owner as "Not a Contribution." | |||
"Contributor" shall mean Licensor and any individual or Legal Entity | |||
on behalf of whom a Contribution has been received by Licensor and | |||
subsequently incorporated within the Work. | |||
2. Grant of Copyright License. Subject to the terms and conditions of | |||
this License, each Contributor hereby grants to You a perpetual, | |||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable | |||
copyright license to reproduce, prepare Derivative Works of, | |||
publicly display, publicly perform, sublicense, and distribute the | |||
Work and such Derivative Works in Source or Object form. | |||
3. Grant of Patent License. Subject to the terms and conditions of | |||
this License, each Contributor hereby grants to You a perpetual, | |||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable | |||
(except as stated in this section) patent license to make, have made, | |||
use, offer to sell, sell, import, and otherwise transfer the Work, | |||
where such license applies only to those patent claims licensable | |||
by such Contributor that are necessarily infringed by their | |||
Contribution(s) alone or by combination of their Contribution(s) | |||
with the Work to which such Contribution(s) was submitted. If You | |||
institute patent litigation against any entity (including a | |||
cross-claim or counterclaim in a lawsuit) alleging that the Work | |||
or a Contribution incorporated within the Work constitutes direct | |||
or contributory patent infringement, then any patent licenses | |||
granted to You under this License for that Work shall terminate | |||
as of the date such litigation is filed. | |||
4. Redistribution. You may reproduce and distribute copies of the | |||
Work or Derivative Works thereof in any medium, with or without | |||
modifications, and in Source or Object form, provided that You | |||
meet the following conditions: | |||
(a) You must give any other recipients of the Work or | |||
Derivative Works a copy of this License; and | |||
(b) You must cause any modified files to carry prominent notices | |||
stating that You changed the files; and | |||
(c) You must retain, in the Source form of any Derivative Works | |||
that You distribute, all copyright, patent, trademark, and | |||
attribution notices from the Source form of the Work, | |||
excluding those notices that do not pertain to any part of | |||
the Derivative Works; and | |||
(d) If the Work includes a "NOTICE" text file as part of its | |||
distribution, then any Derivative Works that You distribute must | |||
include a readable copy of the attribution notices contained | |||
within such NOTICE file, excluding those notices that do not | |||
pertain to any part of the Derivative Works, in at least one | |||
of the following places: within a NOTICE text file distributed | |||
as part of the Derivative Works; within the Source form or | |||
documentation, if provided along with the Derivative Works; or, | |||
within a display generated by the Derivative Works, if and | |||
wherever such third-party notices normally appear. The contents | |||
of the NOTICE file are for informational purposes only and | |||
do not modify the License. You may add Your own attribution | |||
notices within Derivative Works that You distribute, alongside | |||
or as an addendum to the NOTICE text from the Work, provided | |||
that such additional attribution notices cannot be construed | |||
as modifying the License. | |||
You may add Your own copyright statement to Your modifications and | |||
may provide additional or different license terms and conditions | |||
for use, reproduction, or distribution of Your modifications, or | |||
for any such Derivative Works as a whole, provided Your use, | |||
reproduction, and distribution of the Work otherwise complies with | |||
the conditions stated in this License. | |||
5. Submission of Contributions. Unless You explicitly state otherwise, | |||
any Contribution intentionally submitted for inclusion in the Work | |||
by You to the Licensor shall be under the terms and conditions of | |||
this License, without any additional terms or conditions. | |||
Notwithstanding the above, nothing herein shall supersede or modify | |||
the terms of any separate license agreement you may have executed | |||
with Licensor regarding such Contributions. | |||
6. Trademarks. This License does not grant permission to use the trade | |||
names, trademarks, service marks, or product names of the Licensor, | |||
except as required for reasonable and customary use in describing the | |||
origin of the Work and reproducing the content of the NOTICE file. | |||
7. Disclaimer of Warranty. Unless required by applicable law or | |||
agreed to in writing, Licensor provides the Work (and each | |||
Contributor provides its Contributions) on an "AS IS" BASIS, | |||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or | |||
implied, including, without limitation, any warranties or conditions | |||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A | |||
PARTICULAR PURPOSE. You are solely responsible for determining the | |||
appropriateness of using or redistributing the Work and assume any | |||
risks associated with Your exercise of permissions under this License. | |||
8. Limitation of Liability. In no event and under no legal theory, | |||
whether in tort (including negligence), contract, or otherwise, | |||
unless required by applicable law (such as deliberate and grossly | |||
negligent acts) or agreed to in writing, shall any Contributor be | |||
liable to You for damages, including any direct, indirect, special, | |||
incidental, or consequential damages of any character arising as a | |||
result of this License or out of the use or inability to use the | |||
Work (including but not limited to damages for loss of goodwill, | |||
work stoppage, computer failure or malfunction, or any and all | |||
other commercial damages or losses), even if such Contributor | |||
has been advised of the possibility of such damages. | |||
9. Accepting Warranty or Additional Liability. While redistributing | |||
the Work or Derivative Works thereof, You may choose to offer, | |||
and charge a fee for, acceptance of support, warranty, indemnity, | |||
or other liability obligations and/or rights consistent with this | |||
License. However, in accepting such obligations, You may act only | |||
on Your own behalf and on Your sole responsibility, not on behalf | |||
of any other Contributor, and only if You agree to indemnify, | |||
defend, and hold each Contributor harmless for any liability | |||
incurred by, or claims asserted against, such Contributor by reason | |||
of your accepting any such warranty or additional liability. | |||
@@ -0,0 +1,6 @@ | |||
include AUTHORS | |||
include ChangeLog | |||
exclude .gitignore | |||
exclude .gitreview | |||
global-exclude *.pyc |
@@ -0,0 +1,13 @@ | |||
=============================== | |||
networking-brocade | |||
=============================== | |||
Brocade Networking Mech. Drivers and Plugins | |||
* Free software: Apache license | |||
* Source: http://git.openstack.org/cgit/stackforge/networking-brocade | |||
Features | |||
-------- | |||
* TODO |
@@ -0,0 +1,2 @@ | |||
[python: **.py] | |||
@@ -0,0 +1,75 @@ | |||
# -*- coding: utf-8 -*- | |||
# Licensed under the Apache License, Version 2.0 (the "License"); | |||
# you may not use this file except in compliance with the License. | |||
# You may obtain a copy of the License at | |||
# | |||
# http://www.apache.org/licenses/LICENSE-2.0 | |||
# | |||
# Unless required by applicable law or agreed to in writing, software | |||
# distributed under the License is distributed on an "AS IS" BASIS, | |||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or | |||
# implied. | |||
# See the License for the specific language governing permissions and | |||
# limitations under the License. | |||
import os | |||
import sys | |||
sys.path.insert(0, os.path.abspath('../..')) | |||
# -- General configuration ---------------------------------------------------- | |||
# Add any Sphinx extension module names here, as strings. They can be | |||
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom ones. | |||
extensions = [ | |||
'sphinx.ext.autodoc', | |||
#'sphinx.ext.intersphinx', | |||
'oslosphinx' | |||
] | |||
# autodoc generation is a bit aggressive and a nuisance when doing heavy | |||
# text edit cycles. | |||
# execute "export SPHINX_DEBUG=1" in your terminal to disable | |||
# The suffix of source filenames. | |||
source_suffix = '.rst' | |||
# The master toctree document. | |||
master_doc = 'index' | |||
# General information about the project. | |||
project = u'networking-brocade' | |||
copyright = u'2013, OpenStack Foundation' | |||
# If true, '()' will be appended to :func: etc. cross-reference text. | |||
add_function_parentheses = True | |||
# If true, the current module name will be prepended to all description | |||
# unit titles (such as .. function::). | |||
add_module_names = True | |||
# The name of the Pygments (syntax highlighting) style to use. | |||
pygments_style = 'sphinx' | |||
# -- Options for HTML output -------------------------------------------------- | |||
# The theme to use for HTML and HTML Help pages. Major themes that come with | |||
# Sphinx are currently 'default' and 'sphinxdoc'. | |||
# html_theme_path = ["."] | |||
# html_theme = '_theme' | |||
# html_static_path = ['static'] | |||
# Output file base name for HTML help builder. | |||
htmlhelp_basename = '%sdoc' % project | |||
# Grouping the document tree into LaTeX files. List of tuples | |||
# (source start file, target name, title, author, documentclass | |||
# [howto/manual]). | |||
latex_documents = [ | |||
('index', | |||
'%s.tex' % project, | |||
u'%s Documentation' % project, | |||
u'OpenStack Foundation', 'manual'), | |||
] | |||
# Example configuration for intersphinx: refer to the Python standard library. | |||
#intersphinx_mapping = {'http://docs.python.org/': None} |
@@ -0,0 +1,4 @@ | |||
============ | |||
Contributing | |||
============ | |||
.. include:: ../../CONTRIBUTING.rst |
@@ -0,0 +1,25 @@ | |||
.. networking-brocade documentation master file, created by | |||
sphinx-quickstart on Tue Jul 9 22:26:36 2013. | |||
You can adapt this file completely to your liking, but it should at least | |||
contain the root `toctree` directive. | |||
Welcome to networking-brocade's documentation! | |||
======================================================== | |||
Contents: | |||
.. toctree:: | |||
:maxdepth: 2 | |||
readme | |||
installation | |||
usage | |||
contributing | |||
Indices and tables | |||
================== | |||
* :ref:`genindex` | |||
* :ref:`modindex` | |||
* :ref:`search` | |||
@@ -0,0 +1,12 @@ | |||
============ | |||
Installation | |||
============ | |||
At the command line:: | |||
$ pip install networking-brocade | |||
Or, if you have virtualenvwrapper installed:: | |||
$ mkvirtualenv networking-brocade | |||
$ pip install networking-brocade |
@@ -0,0 +1 @@ | |||
.. include:: ../../README.rst |
@@ -0,0 +1,7 @@ | |||
======== | |||
Usage | |||
======== | |||
To use networking-brocade in a project:: | |||
import networking-brocade |
@@ -0,0 +1,19 @@ | |||
# -*- coding: utf-8 -*- | |||
# Licensed under the Apache License, Version 2.0 (the "License"); you may | |||
# not use this file except in compliance with the License. You may obtain | |||
# a copy of the License at | |||
# | |||
# http://www.apache.org/licenses/LICENSE-2.0 | |||
# | |||
# Unless required by applicable law or agreed to in writing, software | |||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | |||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | |||
# License for the specific language governing permissions and limitations | |||
# under the License. | |||
import pbr.version | |||
__version__ = pbr.version.VersionInfo( | |||
'networking_brocade').version_string() |
@@ -0,0 +1,23 @@ | |||
# -*- coding: utf-8 -*- | |||
# Copyright 2010-2011 OpenStack Foundation | |||
# Copyright (c) 2013 Hewlett-Packard Development Company, L.P. | |||
# | |||
# Licensed under the Apache License, Version 2.0 (the "License"); you may | |||
# not use this file except in compliance with the License. You may obtain | |||
# a copy of the License at | |||
# | |||
# http://www.apache.org/licenses/LICENSE-2.0 | |||
# | |||
# Unless required by applicable law or agreed to in writing, software | |||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | |||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | |||
# License for the specific language governing permissions and limitations | |||
# under the License. | |||
from oslotest import base | |||
class TestCase(base.BaseTestCase): | |||
"""Test case base class for all unit tests.""" |
@@ -0,0 +1,28 @@ | |||
# -*- coding: utf-8 -*- | |||
# Licensed under the Apache License, Version 2.0 (the "License"); you may | |||
# not use this file except in compliance with the License. You may obtain | |||
# a copy of the License at | |||
# | |||
# http://www.apache.org/licenses/LICENSE-2.0 | |||
# | |||
# Unless required by applicable law or agreed to in writing, software | |||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | |||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | |||
# License for the specific language governing permissions and limitations | |||
# under the License. | |||
""" | |||
test_networking_brocade | |||
---------------------------------- | |||
Tests for `networking_brocade` module. | |||
""" | |||
from networking_brocade.tests import base | |||
class TestNetworking_brocade(base.TestCase): | |||
def test_something(self): | |||
pass |
@@ -15,10 +15,10 @@ | |||
"""Brocade specific database schema/model.""" | |||
import sqlalchemy as sa | |||
from neutron.db import model_base | |||
from neutron.db import models_v2 | |||
import sqlalchemy as sa | |||
class ML2_BrocadeNetwork(model_base.BASEV2, models_v2.HasId, | |||
@@ -16,13 +16,13 @@ | |||
"""Implentation of Brocade ML2 Mechanism driver for ML2 Plugin.""" | |||
from oslo.config import cfg | |||
from oslo.utils import importutils | |||
from neutron.i18n import _LE, _LI | |||
from neutron.i18n import _LE | |||
from neutron.i18n import _LI | |||
from neutron.openstack.common import log as logging | |||
from neutron.plugins.ml2 import driver_api | |||
from neutron.plugins.ml2.drivers.brocade.db import models as brocade_db | |||
from oslo.config import cfg | |||
from oslo.utils import importutils | |||
LOG = logging.getLogger(__name__) | |||
MECHANISM_VERSION = 0.9 | |||
@@ -46,9 +46,10 @@ cfg.CONF.register_opts(ML2_BROCADE, "ml2_brocade") | |||
class BrocadeMechanism(driver_api.MechanismDriver): | |||
"""ML2 Mechanism driver for Brocade VDX switches. This is the upper | |||
layer driver class that interfaces to lower layer (NETCONF) below. | |||
"""ML2 Mechanism driver for Brocade VDX switches. | |||
This is the upper layer driver class that interfaces to | |||
lower layer (NETCONF) below. | |||
""" | |||
def __init__(self): | |||
@@ -85,9 +86,9 @@ class BrocadeMechanism(driver_api.MechanismDriver): | |||
self._switch['password']) | |||
virtual_fabric_enabled = self._driver.is_virtual_fabric_enabled( | |||
self._switch['address'], | |||
self._switch['username'], | |||
self._switch['password']) | |||
self._switch['address'], | |||
self._switch['username'], | |||
self._switch['password']) | |||
if virtual_fabric_enabled: | |||
LOG.debug("Virtual Fabric: enabled") | |||
@@ -189,10 +190,10 @@ class BrocadeMechanism(driver_api.MechanismDriver): | |||
" of network type = %(network_type)s" | |||
" with vlan = %(vlan_id)s" | |||
" for tenant %(tenant_id)s"), | |||
{'network_id': network_id, | |||
'network_type': network_type, | |||
'vlan_id': vlan_id, | |||
'tenant_id': tenant_id}) | |||
{'network_id': network_id, | |||
'network_type': network_type, | |||
'vlan_id': vlan_id, | |||
'tenant_id': tenant_id}) | |||
def delete_network_precommit(self, mech_context): | |||
"""Delete Network from the plugin specific database table.""" | |||
@@ -217,12 +218,14 @@ class BrocadeMechanism(driver_api.MechanismDriver): | |||
LOG.info(_LI("delete network (precommit): %(network_id)s" | |||
" with vlan = %(vlan_id)s" | |||
" for tenant %(tenant_id)s"), | |||
{'network_id': network_id, | |||
'vlan_id': vlan_id, | |||
'tenant_id': tenant_id}) | |||
{'network_id': network_id, | |||
'vlan_id': vlan_id, | |||
'tenant_id': tenant_id}) | |||
def delete_network_postcommit(self, mech_context): | |||
"""Delete network which translates to removng portprofile | |||
"""Delete network. | |||
This translates to removng portprofile | |||
from the switch. | |||
""" | |||
@@ -246,9 +249,9 @@ class BrocadeMechanism(driver_api.MechanismDriver): | |||
LOG.info(_LI("delete network (postcommit): %(network_id)s" | |||
" with vlan = %(vlan_id)s" | |||
" for tenant %(tenant_id)s"), | |||
{'network_id': network_id, | |||
'vlan_id': vlan_id, | |||
'tenant_id': tenant_id}) | |||
{'network_id': network_id, | |||
'vlan_id': vlan_id, | |||
'tenant_id': tenant_id}) | |||
def update_network_precommit(self, mech_context): | |||
"""Noop now, it is left here for future.""" | |||
@@ -20,6 +20,7 @@ Neutron network life-cycle management. | |||
from ncclient import manager | |||
from oslo.utils import excutils | |||
from xml.etree import ElementTree | |||
from neutron.i18n import _LE | |||
@@ -17,16 +17,17 @@ | |||
"""Implentation of Brocade SVI service Plugin.""" | |||
from oslo.config import cfg | |||
from oslo.utils import excutils | |||
from neutron.common import constants as l3_constants | |||
from neutron.i18n import _LE, _LI | |||
from neutron.i18n import _LE | |||
from neutron.i18n import _LI | |||
from neutron.openstack.common import log as logging | |||
from neutron.plugins.ml2 import db | |||
from neutron.plugins.ml2.drivers.brocade.db import models as brocade_db | |||
from neutron.plugins.ml2.drivers.brocade.nos import nosdriver as driver | |||
from neutron.services.l3_router import l3_router_plugin as router | |||
from oslo.config import cfg | |||
from oslo.utils import excutils | |||
DEVICE_OWNER_ROUTER_INTF = l3_constants.DEVICE_OWNER_ROUTER_INTF | |||
@@ -16,13 +16,12 @@ | |||
# | |||
import mock | |||
from oslo.config import cfg | |||
from oslo.utils import importutils | |||
from oslo_context import context as oslo_context | |||
from neutron.db import api as db | |||
from neutron.openstack.common import log as logging | |||
from neutron.tests.unit import test_l3_plugin | |||
from oslo.config import cfg | |||
from oslo.utils import importutils | |||
from oslo_context import context as oslo_context | |||
LOG = logging.getLogger(__name__) | |||
L3_SVC_PLUGIN = ('neutron.services.l3_router.' | |||
@@ -14,13 +14,12 @@ | |||
# limitations under the License. | |||
import mock | |||
from oslo.utils import importutils | |||
from neutron.openstack.common import log as logging | |||
from neutron.plugins.ml2 import config as ml2_config | |||
from neutron.plugins.ml2.drivers.brocade import (mechanism_brocade | |||
as brocademechanism) | |||
from neutron.tests.unit.ml2 import test_ml2_plugin | |||
from oslo.utils import importutils | |||
LOG = logging.getLogger(__name__) | |||
MECHANISM_NAME = ('neutron.plugins.ml2.' | |||
@@ -29,6 +28,7 @@ MECHANISM_NAME = ('neutron.plugins.ml2.' | |||
class TestBrocadeMechDriverV2(test_ml2_plugin.Ml2PluginV2TestCase): | |||
"""Test Brocade VCS/VDX mechanism driver. | |||
""" | |||
_mechanism_name = MECHANISM_NAME | |||
@@ -0,0 +1,6 @@ | |||
[DEFAULT] | |||
# The list of modules to copy from oslo-incubator.git | |||
# The base module to hold the copy of openstack.common | |||
base=networking_brocade |
@@ -0,0 +1,6 @@ | |||
# The order of packages is significant, because pip processes them in the order | |||
# of appearance. Changing the order has an impact on the overall integration | |||
# process, which may cause wedges in the gate later. | |||
pbr>=0.6,!=0.7,<1.0 | |||
Babel>=1.3 |
@@ -0,0 +1,47 @@ | |||
[metadata] | |||
name = networking-brocade | |||
summary = Brocade Networking Mech. Drivers and Plugins | |||
description-file = | |||
README.rst | |||
author = OpenStack | |||
author-email = openstack-dev@lists.openstack.org | |||
home-page = http://www.openstack.org/ | |||
classifier = | |||
Environment :: OpenStack | |||
Intended Audience :: Information Technology | |||
Intended Audience :: System Administrators | |||
License :: OSI Approved :: Apache Software License | |||
Operating System :: POSIX :: Linux | |||
Programming Language :: Python | |||
Programming Language :: Python :: 2 | |||
Programming Language :: Python :: 2.7 | |||
Programming Language :: Python :: 2.6 | |||
Programming Language :: Python :: 3 | |||
Programming Language :: Python :: 3.3 | |||
Programming Language :: Python :: 3.4 | |||
[files] | |||
packages = | |||
networking_brocade | |||
[build_sphinx] | |||
source-dir = doc/source | |||
build-dir = doc/build | |||
all_files = 1 | |||
[upload_sphinx] | |||
upload-dir = doc/build/html | |||
[compile_catalog] | |||
directory = networking_brocade/locale | |||
domain = networking-brocade | |||
[update_catalog] | |||
domain = networking-brocade | |||
output_dir = networking_brocade/locale | |||
input_file = networking_brocade/locale/networking-brocade.pot | |||
[extract_messages] | |||
keywords = _ gettext ngettext l_ lazy_gettext | |||
mapping_file = babel.cfg | |||
output_file = networking_brocade/locale/networking-brocade.pot |
@@ -0,0 +1,22 @@ | |||
#!/usr/bin/env python | |||
# Copyright (c) 2013 Hewlett-Packard Development Company, L.P. | |||
# | |||
# Licensed under the Apache License, Version 2.0 (the "License"); | |||
# you may not use this file except in compliance with the License. | |||
# You may obtain a copy of the License at | |||
# | |||
# http://www.apache.org/licenses/LICENSE-2.0 | |||
# | |||
# Unless required by applicable law or agreed to in writing, software | |||
# distributed under the License is distributed on an "AS IS" BASIS, | |||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or | |||
# implied. | |||
# See the License for the specific language governing permissions and | |||
# limitations under the License. | |||
# THIS FILE IS MANAGED BY THE GLOBAL REQUIREMENTS REPO - DO NOT EDIT | |||
import setuptools | |||
setuptools.setup( | |||
setup_requires=['pbr'], | |||
pbr=True) |
@@ -0,0 +1,15 @@ | |||
# The order of packages is significant, because pip processes them in the order | |||
# of appearance. Changing the order has an impact on the overall integration | |||
# process, which may cause wedges in the gate later. | |||
hacking>=0.9.2,<0.10 | |||
coverage>=3.6 | |||
discover | |||
python-subunit | |||
sphinx>=1.1.2 | |||
oslosphinx | |||
oslotest>=1.1.0.0a1 | |||
testrepository>=0.0.18 | |||
testscenarios>=0.4 | |||
testtools>=0.9.34 |
@@ -0,0 +1,34 @@ | |||
[tox] | |||
minversion = 1.6 | |||
envlist = py33,py34,py26,py27,pypy,pep8 | |||
skipsdist = True | |||
[testenv] | |||
usedevelop = True | |||
install_command = pip install -U {opts} {packages} | |||
setenv = | |||
VIRTUAL_ENV={envdir} | |||
deps = -r{toxinidir}/requirements.txt | |||
-r{toxinidir}/test-requirements.txt | |||
commands = python setup.py testr --slowest --testr-args='{posargs}' | |||
[testenv:pep8] | |||
commands = flake8 | |||
[testenv:venv] | |||
commands = {posargs} | |||
[testenv:cover] | |||
commands = python setup.py testr --coverage --testr-args='{posargs}' | |||
[testenv:docs] | |||
commands = python setup.py build_sphinx | |||
[flake8] | |||
# H803 skipped on purpose per list discussion. | |||
# E123, E125 skipped as they are invalid PEP-8. | |||
show-source = True | |||
ignore = E123,E125,H803 | |||
builtins = _ | |||
exclude=.venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build |