summaryrefslogtreecommitdiff
path: root/doc/source/devref
diff options
context:
space:
mode:
authorArmando Migliaccio <armamig@gmail.com>2016-12-05 17:36:51 -0800
committerArmando Migliaccio <armamig@gmail.com>2016-12-06 01:39:14 +0000
commita686743940215e2c84b98a2323ca97743647a7cc (patch)
tree5f76c35639fc769119371b8a5323e021a509a5e5 /doc/source/devref
parentfc7908b1ff1d989e509d98e701a47b6e1133dd8d (diff)
downloadpython-neutronclient-a686743940215e2c84b98a2323ca97743647a7cc.tar.gz
Clarify how to do client-side development for repos in neutron governance
Change-Id: I90085b47b2e960fbd75e936fb3ee5c0553b0a8e2
Diffstat (limited to 'doc/source/devref')
-rw-r--r--doc/source/devref/transition_to_osc.rst37
1 files changed, 19 insertions, 18 deletions
diff --git a/doc/source/devref/transition_to_osc.rst b/doc/source/devref/transition_to_osc.rst
index d410921..2f0e524 100644
--- a/doc/source/devref/transition_to_osc.rst
+++ b/doc/source/devref/transition_to_osc.rst
@@ -151,33 +151,34 @@ dual maintenance.
**Where does my CLI belong?**
+If you are developing an API in any of the `neutron repos <http://governance.openstack.org/reference/projects/neutron.html>`_
+the client-side support must be generally located in either the openstackclient or neutronclient
+repos. Whether the actual code goes into one or the other repo it depends on the nature of the
+feature, its maturity level, and/or the depth of feedback required during the development.
+
+The table below provides an idea of what goes where. Generally speaking, we consider Core anything
+that is L2 and L3 related or that it has been located in the neutron repo for quite sometime, e.g.
+QoS or Metering, or that it is available in each neutron deployment irrespective of its configuration
+(e.g. auto-allocated-topology). Any client feature that falls into this categorization will need to
+be contributed in OSC. Any other that does not, will need to go into neutronclient, assuming that
+its server-side is located in a neutron controlled repo. This is a general guideline, when in doubt,
+please reach out to a member of the neutron core team for clarifications.
+
+---------------------------+-------------------+-------------------------------------------------+
| Networking Commands | OSC Plugin | OpenStack Project for ``openstack`` Commands |
+===========================+===================+=================================================+
| Core | No | python-openstackclient |
+---------------------------+-------------------+-------------------------------------------------+
-| Advanced Feature | Yes | python-neutronclient |
-| (neutron repository) | | (``neutronclient/osc/v2/<advanced_feature>``) |
-+---------------------------+-------------------+-------------------------------------------------+
-| Dynamic Routing | Yes | python-neutronclient |
-| | | (``neutronclient/osc/v2/dynamic_routing``) |
-+---------------------------+-------------------+-------------------------------------------------+
-| FWaaS v1 | N/A | None (deprecated) |
-+---------------------------+-------------------+-------------------------------------------------+
-| FWaaS v2 | Yes | python-neutronclient |
-| | | (``neutronclient/osc/v2/fwaas``) |
-+---------------------------+-------------------+-------------------------------------------------+
-| LBaaS v1 | N/A | None (deprecated) |
-+---------------------------+-------------------+-------------------------------------------------+
-| LBaaS v2 | Yes | python-neutronclient |
-| | | (``neutronclient/osc/v2/lbaas``) |
-+---------------------------+-------------------+-------------------------------------------------+
-| VPNaaS | Yes | python-neutronclient |
-| | | (``neutronclient/osc/v2/vpnaas``) |
+| Extension | Yes | python-neutronclient |
+| (i.e. neutron stadium) | | (``neutronclient/osc/v2/<extension>``) |
+---------------------------+-------------------+-------------------------------------------------+
| Other | Yes | Applicable project owning networking resource |
+---------------------------+-------------------+-------------------------------------------------+
+When a repo stops being under neutron governance, its client-side counterpart will have to go through
+deprecation. Bear in mind that for grandfathered extensions like FWaaS v1, VPNaaS, and LBaaS v1, this
+is not required as the neutronclient is already deprecated on its own.
+
**Which Python library do I change?**
+-------------------------------------------------+-----------------------------------------------+