Add notes about official sub-projects.

There was recently a thread on openstack-dev titled "A big tent home
for Neutron backend code."

The thread began here:

    http://lists.openstack.org/pipermail/openstack-dev/2015-April/062310.html

and has roughly ended up here:

    http://lists.openstack.org/pipermail/openstack-dev/2015-April/062853.html

This patch is an attempt to reflect the end of that thread with
updates to docs.

Any further discussion should just continue on openstack-dev to avoid
forking the discussion between openstack-dev and gerrit.

Change-Id: I48dbe8ac69e60fbfd5e5082844004aaf9fdce539
This commit is contained in:
Russell Bryant 2015-04-21 11:53:08 -04:00
parent eef3d42dfe
commit b760fdf664
5 changed files with 382 additions and 280 deletions

View File

@ -405,120 +405,6 @@ will be removed. The following aspects are captured:
| networking-cisco_ | core,ml2,l3,fw,vpn | yes | yes | [B] | |
+-------------------------------+-----------------------+-----------+------------------+---------+--------------+
Affiliated projects
===================
This table shows projects that integrate with Neutron, in one form or another. These projects
typically leverage the pluggable capabilities of Neutron, the Neutron API, or a combination of both.
+-------------------------------+-----------------------+
| Name | Functionality |
+===============================+=======================+
| dragonflow_ | l3 |
+-------------------------------+-----------------------+
| group-based-policy_ | intent |
+-------------------------------+-----------------------+
| networking-arista_ | ml2,l3 |
+-------------------------------+-----------------------+
| networking-bagpipe-l2_ | vpn |
+-------------------------------+-----------------------+
| networking-bgpvpn_ | vpn |
+-------------------------------+-----------------------+
| networking-bigswitch_ | ml2,core,l3 |
+-------------------------------+-----------------------+
| networking-brocade_ | ml2,l3 |
+-------------------------------+-----------------------+
| networking-edge-vpn_ | vpn |
+-------------------------------+-----------------------+
| networking-hyperv_ | ml2 |
+-------------------------------+-----------------------+
| networking-ibm_ | ml2,l3 |
+-------------------------------+-----------------------+
| networking-l2gw_ | l2 |
+-------------------------------+-----------------------+
| networking-metaplugin_ | core |
+-------------------------------+-----------------------+
| networking-midonet_ | core,lb |
+-------------------------------+-----------------------+
| networking-mlnx_ | ml2 |
+-------------------------------+-----------------------+
| networking-nec_ | core |
+-------------------------------+-----------------------+
| nuage-openstack-neutron_ | core |
+-------------------------------+-----------------------+
| networking-odl_ | ml2,l3,lb,fw |
+-------------------------------+-----------------------+
| networking-ofagent_ | ml2 |
+-------------------------------+-----------------------+
| networking-ovn_ | ml2 |
+-------------------------------+-----------------------+
| networking-ovs-dpdk_ | ml2 |
+-------------------------------+-----------------------+
| networking-plumgrid_ | core |
+-------------------------------+-----------------------+
| networking-portforwarding_ | l3 |
+-------------------------------+-----------------------+
| neutron-powervm_ | ml2 |
+-------------------------------+-----------------------+
| networking-vsphere_ | ml2 |
+-------------------------------+-----------------------+
| vmware-nsx_ | core |
+-------------------------------+-----------------------+
Functionality legend
--------------------
- l2: a Layer 2 service;
- ml2: an ML2 mechanism driver;
- core: a monolithic plugin that can implement API at multiple layers L3-L7;
- l3: a Layer 3 service plugin;
- fw: a Firewall service plugin;
- vpn: a VPN service plugin;
- lb: a Load Balancer service plugin;
- intent: a service plugin that provides a declarative API to realize networking;
.. _networking-arista:
Arista
------
* Git: https://github.com/stackforge/networking-arista
* Launchpad: https://launchpad.net/networking-arista
* Pypi: https://pypi.python.org/pypi/networking-arista
.. _networking-bagpipe-l2:
BaGPipe
-------
* Git: https://github.com/stackforge/networking-bagpipe-l2
* Launchpad: https://launchpad.net/bagpipe-l2
* Pypi: https://pypi.python.org/pypi/bagpipe-l2
.. _networking-bgpvpn:
BGPVPN
-------
* Git: https://github.com/stackforge/networking-bgpvpn
.. _networking-bigswitch:
Big Switch Networks
-------------------
* Git: https://git.openstack.org/stackforge/networking-bigswitch
* Pypi: https://pypi.python.org/pypi/bsnstacklib
.. _networking-brocade:
Brocade
-------
* Git: https://github.com/stackforge/networking-brocade
* Launchpad: https://launchpad.net/networking-brocade
* PyPI: https://pypi.python.org/pypi/networking-brocade
.. _networking-cisco:
Cisco
@ -527,169 +413,3 @@ Cisco
* Git: https://git.openstack.org/stackforge/networking-cisco
* Launchpad: https://launchpad.net/networking-cisco
* PyPI: https://pypi.python.org/pypi/networking-cisco
DragonFlow
----------
* Git: https://github.com/stackforge/dragonflow
* Launchpad: https://launchpad.net/dragonflow
* PyPi: https://pypi.python.org/pypi/DragonFlow
.. _networking-edge-vpn:
Edge VPN
--------
* Git: https://git.openstack.org/stackforge/networking-edge-vpn
* Launchpad: https://launchpad.net/edge-vpn
.. _networking-hyperv:
Hyper-V
-------
* Git: https://github.com/stackforge/networking-hyperv
* Launchpad: https://launchpad.net/networking-hyperv
* PyPi: https://pypi.python.org/pypi/networking-hyperv
.. _group-based-policy:
Group Based Policy
------------------
* Git: https://github.com/stackforge/group-based-policy
* Launchpad: https://launchpad.net/group-based-policy
* PyPi: https://pypi.python.org/pypi/group-based-policy
.. _networking-ibm:
IBM SDNVE
---------
* Git: https://github.com/stackforge/networking-ibm
* Launchpad: https://launchpad.net/networking-ibm
.. _networking-l2gw:
L2 Gateway
----------
* Git: https://github.com/stackforge/networking-l2gw
* Launchpad: https://launchpad.net/networking-l2gw
.. _networking-metaplugin:
Metaplugin
----------
* Git: https://github.com/ntt-sic/networking-metaplugin
.. _networking-midonet:
MidoNet
-------
* Git: https://github.com/stackforge/networking-midonet
* Launchpad: https://launchpad.net/networking-midonet
* PyPI: https://pypi.python.org/pypi/networking-midonet
.. _networking-mlnx:
Mellanox
--------
* Git: https://github.com/stackforge/networking-mlnx
* Launchpad: https://launchpad.net/networking-mlnx
.. _networking-nec:
NEC
---
* Git: https://github.com/stackforge/networking-nec
* Launchpad: https://launchpad.net/networking-nec
* PyPI: https://pypi.python.org/pypi/networking-nec
.. _nuage-openstack-neutron:
Nuage
-----
* Git: https://github.com/nuage-networks/nuage-openstack-neutron
.. _networking-odl:
OpenDayLight
------------
* Git: https://github.com/stackforge/networking-odl
* Launchpad: https://launchpad.net/networking-odl
.. _networking-ofagent:
OpenFlow Agent (ofagent)
------------------------
* Git: https://github.com/stackforge/networking-ofagent
* Launchpad: https://launchpad.net/networking-ofagent
* PyPI: https://pypi.python.org/pypi/networking-ofagent
.. _networking-ovn:
Open Virtual Network
--------------------
* Git: https://github.com/stackforge/networking-ovn
* Launchpad: https://launchpad.net/networking-ovn
* PyPI: https://pypi.python.org/pypi/networking-ovn
.. _networking-ovs-dpdk:
Open DPDK
---------
* Git: https://github.com/stackforge/networking-ovs-dpdk
* Launchpad: https://launchpad.net/networking-ovs-dpdk
.. _networking-plumgrid:
PLUMgrid
--------
* Git: https://github.com/stackforge/networking-plumgrid
* Launchpad: https://launchpad.net/networking-plumgrid
* PyPI: https://pypi.python.org/pypi/networking-plumgrid
.. _neutron-powervm:
PowerVM
-------
* Git: https://github.com/stackforge/neutron-powervm
* Launchpad: https://launchpad.net/neutron-powervm
* PyPI: https://pypi.python.org/pypi/neutron-powervm
.. _networking-portforwarding:
PortForwarding
--------------
* Git: https://github.com/stackforge/networking-portforwarding
* Launchpad: https://launchpad.net/networking-portforwarding
.. _networking-vsphere:
vSphere
-------
* Git: https://github.com/stackforge/networking-vsphere
* Launchpad: https://launchpad.net/networking-vsphere
.. _vmware-nsx:
VMware
------
* Git: https://github.com/stackforge/vmware-nsx
* Launchpad: https://launchpad.net/vmware-nsx
* PyPI: https://pypi.python.org/pypi/vmware-nsx

View File

@ -31,6 +31,7 @@ Programming HowTos and Tutorials
development.environment
contribute
sub_projects
Neutron Internals

View File

@ -0,0 +1,360 @@
Official Sub-Projects
=====================
Neutron has a set of official sub-projects. These projects are recognized as a
part of the overall Neutron project.
Inclusion Process
-----------------
The process for proposing the move of a repo into openstack/ and under
the Neutron project is to propose a patch to the openstack/governance
repository. For example, to propose moving networking-foo, one
would add the following entry under Neutron in reference/projects.yaml::
- repo: openstack/networking-foo
tags:
- name: release:independent
For more information about the release:independent tag (and other
currently defined tags) see:
http://governance.openstack.org/reference/tags/
The Neutron PTL must approve the change. The TC clarified that once a
project has been approved (Neutron in this case), the project can add
additional repos without needing TC approval as long as the added
repositories are within the existing approved scope of the project.
http://git.openstack.org/cgit/openstack/governance/commit/?id=321a020cbcaada01976478ea9f677ebb4df7bd6d
Responsibilities
----------------
All affected repositories already have their own review teams. The
sub-team working on the sub-project is entirely responsible for
day-to-day development. That includes reviews, bug tracking, and
working on testing.
By being included, the project accepts oversight by the TC as a part of
being in OpenStack, and also accepts oversight by the Neutron PTL.
Inclusion Criteria
------------------
As mentioned before, the Neutron PTL must approve the inclusion of each
additional repository under the Neutron project. That evaluation will be
primarily based on the new project requirements used for all new OpenStack
projects for the criteria that is applicable:
http://governance.openstack.org/reference/new-projects-requirements.html
Official Sub-Project List
-------------------------
The official source of all repositories that exist under the Neutron project is:
http://governance.openstack.org/reference/projects/neutron.html
The sub-projects are also listed here for convenience and as a place to provide
some additional metadata about them:
+-------------------------------+-----------------------+
| Name | Functionality |
+===============================+=======================+
| | |
+-------------------------------+-----------------------+
Affiliated projects
===================
Affiliated projects are related to Neutron in some way, but are not official
sub-projects of Neutron.
This table shows the unofficial affiliated projects that integrate with Neutron,
in one form or another. These projects typically leverage the pluggable
capabilities of Neutron, the Neutron API, or a combination of both.
+-------------------------------+-----------------------+
| Name | Functionality |
+===============================+=======================+
| dragonflow_ | l3 |
+-------------------------------+-----------------------+
| group-based-policy_ | intent |
+-------------------------------+-----------------------+
| networking-arista_ | ml2,l3 |
+-------------------------------+-----------------------+
| networking-bagpipe-l2_ | vpn |
+-------------------------------+-----------------------+
| networking-bgpvpn_ | vpn |
+-------------------------------+-----------------------+
| networking-bigswitch_ | ml2,core,l3 |
+-------------------------------+-----------------------+
| networking-brocade_ | ml2,l3 |
+-------------------------------+-----------------------+
| networking-edge-vpn_ | vpn |
+-------------------------------+-----------------------+
| networking-hyperv_ | ml2 |
+-------------------------------+-----------------------+
| networking-ibm_ | ml2,l3 |
+-------------------------------+-----------------------+
| networking-l2gw_ | l2 |
+-------------------------------+-----------------------+
| networking-metaplugin_ | core |
+-------------------------------+-----------------------+
| networking-midonet_ | core,lb |
+-------------------------------+-----------------------+
| networking-mlnx_ | ml2 |
+-------------------------------+-----------------------+
| networking-nec_ | core |
+-------------------------------+-----------------------+
| nuage-openstack-neutron_ | core |
+-------------------------------+-----------------------+
| networking-odl_ | ml2,l3,lb,fw |
+-------------------------------+-----------------------+
| networking-ofagent_ | ml2 |
+-------------------------------+-----------------------+
| networking-ovn_ | ml2 |
+-------------------------------+-----------------------+
| networking-ovs-dpdk_ | ml2 |
+-------------------------------+-----------------------+
| networking-plumgrid_ | core |
+-------------------------------+-----------------------+
| networking-portforwarding_ | l3 |
+-------------------------------+-----------------------+
| neutron-powervm_ | ml2 |
+-------------------------------+-----------------------+
| networking-vsphere_ | ml2 |
+-------------------------------+-----------------------+
| vmware-nsx_ | core |
+-------------------------------+-----------------------+
| octavia_ | lb |
+-------------------------------+-----------------------+
Functionality legend
--------------------
- l2: a Layer 2 service;
- ml2: an ML2 mechanism driver;
- core: a monolithic plugin that can implement API at multiple layers L3-L7;
- l3: a Layer 3 service plugin;
- fw: a Firewall service plugin;
- vpn: a VPN service plugin;
- lb: a Load Balancer service plugin;
- intent: a service plugin that provides a declarative API to realize networking;
.. _networking-arista:
Arista
------
* Git: https://github.com/stackforge/networking-arista
* Launchpad: https://launchpad.net/networking-arista
* Pypi: https://pypi.python.org/pypi/networking-arista
.. _networking-bagpipe-l2:
BaGPipe
-------
* Git: https://github.com/stackforge/networking-bagpipe-l2
* Launchpad: https://launchpad.net/bagpipe-l2
* Pypi: https://pypi.python.org/pypi/bagpipe-l2
.. _networking-bgpvpn:
BGPVPN
-------
* Git: https://github.com/stackforge/networking-bgpvpn
.. _networking-bigswitch:
Big Switch Networks
-------------------
* Git: https://git.openstack.org/stackforge/networking-bigswitch
* Pypi: https://pypi.python.org/pypi/bsnstacklib
.. _networking-brocade:
Brocade
-------
* Git: https://github.com/stackforge/networking-brocade
* Launchpad: https://launchpad.net/networking-brocade
* PyPI: https://pypi.python.org/pypi/networking-brocade
DragonFlow
----------
* Git: https://github.com/stackforge/dragonflow
* Launchpad: https://launchpad.net/dragonflow
* PyPi: https://pypi.python.org/pypi/DragonFlow
.. _networking-edge-vpn:
Edge VPN
--------
* Git: https://git.openstack.org/stackforge/networking-edge-vpn
* Launchpad: https://launchpad.net/edge-vpn
.. _networking-hyperv:
Hyper-V
-------
* Git: https://github.com/stackforge/networking-hyperv
* Launchpad: https://launchpad.net/networking-hyperv
* PyPi: https://pypi.python.org/pypi/networking-hyperv
.. _group-based-policy:
Group Based Policy
------------------
* Git: https://github.com/stackforge/group-based-policy
* Launchpad: https://launchpad.net/group-based-policy
* PyPi: https://pypi.python.org/pypi/group-based-policy
.. _networking-ibm:
IBM SDNVE
---------
* Git: https://github.com/stackforge/networking-ibm
* Launchpad: https://launchpad.net/networking-ibm
.. _networking-l2gw:
L2 Gateway
----------
* Git: https://github.com/stackforge/networking-l2gw
* Launchpad: https://launchpad.net/networking-l2gw
.. _networking-metaplugin:
Metaplugin
----------
* Git: https://github.com/ntt-sic/networking-metaplugin
.. _networking-midonet:
MidoNet
-------
* Git: https://github.com/stackforge/networking-midonet
* Launchpad: https://launchpad.net/networking-midonet
* PyPI: https://pypi.python.org/pypi/networking-midonet
.. _networking-mlnx:
Mellanox
--------
* Git: https://github.com/stackforge/networking-mlnx
* Launchpad: https://launchpad.net/networking-mlnx
.. _networking-nec:
NEC
---
* Git: https://github.com/stackforge/networking-nec
* Launchpad: https://launchpad.net/networking-nec
* PyPI: https://pypi.python.org/pypi/networking-nec
.. _nuage-openstack-neutron:
Nuage
-----
* Git: https://github.com/nuage-networks/nuage-openstack-neutron
.. _networking-odl:
OpenDayLight
------------
* Git: https://github.com/stackforge/networking-odl
* Launchpad: https://launchpad.net/networking-odl
.. _networking-ofagent:
OpenFlow Agent (ofagent)
------------------------
* Git: https://github.com/stackforge/networking-ofagent
* Launchpad: https://launchpad.net/networking-ofagent
* PyPI: https://pypi.python.org/pypi/networking-ofagent
.. _networking-ovn:
Open Virtual Network
--------------------
* Git: https://github.com/stackforge/networking-ovn
* Launchpad: https://launchpad.net/networking-ovn
* PyPI: https://pypi.python.org/pypi/networking-ovn
.. _networking-ovs-dpdk:
Open DPDK
---------
* Git: https://github.com/stackforge/networking-ovs-dpdk
* Launchpad: https://launchpad.net/networking-ovs-dpdk
.. _networking-plumgrid:
PLUMgrid
--------
* Git: https://github.com/stackforge/networking-plumgrid
* Launchpad: https://launchpad.net/networking-plumgrid
* PyPI: https://pypi.python.org/pypi/networking-plumgrid
.. _neutron-powervm:
PowerVM
-------
* Git: https://github.com/stackforge/neutron-powervm
* Launchpad: https://launchpad.net/neutron-powervm
* PyPI: https://pypi.python.org/pypi/neutron-powervm
.. _networking-portforwarding:
PortForwarding
--------------
* Git: https://github.com/stackforge/networking-portforwarding
* Launchpad: https://launchpad.net/networking-portforwarding
.. _networking-vsphere:
vSphere
-------
* Git: https://github.com/stackforge/networking-vsphere
* Launchpad: https://launchpad.net/networking-vsphere
.. _vmware-nsx:
VMware
------
* Git: https://github.com/stackforge/vmware-nsx
* Launchpad: https://launchpad.net/vmware-nsx
* PyPI: https://pypi.python.org/pypi/vmware-nsx
.. _octavia:
Octavia
-------
* Git: https://github.com/stackforge/octavia
* Launchpad: https://launchpad.net/octavia

View File

@ -15,6 +15,14 @@ to both the PTL and the core reviewer team during each weekly Neutron meeting.
The current Neutron bug czar is Eugene Nikanorov (IRC nick enikanorov).
Plugin and Driver Repositories
------------------------------
Many plugins and drivers have backend code that exists in another repository.
These repositories have their own launchpad projects for bugs. The teams
working on the code in these repos assume full responsibility for bug handling
in those projects.
Bug Triage Process
------------------

View File

@ -46,6 +46,19 @@ Neutron VPNaaS Core Reviewer Team
Neutron VPNaaS core reviewers have merge rights to the following git repositories:
* `openstack/neutron-vpnaas <https://git.openstack.org/cgit/openstack/neutron-vpnaas/>`_
Neutron Core Reviewer Teams for Plugins and Drivers
---------------------------------------------------
The plugin decomposition effort has led to having many drivers with code in
separate repositories with their own core reviewer teams. For each one of these
repositories in the following repository list, there is a core team associated
with it:
* `Neutron project team <http://governance.openstack.org/reference/projects/neutron.html>`_
These teams are also responsible for handling their own specs/RFEs/features if
they choose to use them. However, by choosing to be a part of the Neutron
project, they submit to oversight and veto by the Neutron PTL if any issues
arise.
Neutron Specs Core Reviewer Team
--------------------------------
Neutron specs core reviewers have merge rights to the following git repositories: