Difference between revisions of "Neutron/Lib"
Paul Michali (talk | contribs) (→Other Candidates for Neutron-Lib) |
|||
Line 11: | Line 11: | ||
Repo reviews: | Repo reviews: | ||
https://review.openstack.org/#/q/status:open+project:openstack/neutron-lib,n,z | https://review.openstack.org/#/q/status:open+project:openstack/neutron-lib,n,z | ||
+ | |||
+ | == Submission Procedures == | ||
+ | |||
+ | # Identify a module to work on/move. | ||
+ | # Every module is subject to refactoring/bikeshedding, so you might want to check with the SME of what you're moving and see if they have problems with the current interfaces. A balance must be struct between forward progress breaking dependencies, and not carrying forward garbage. | ||
+ | # Make your changes, submit to neutron-lib repo. | ||
+ | # Make the changes to remove the code from neutron, including debtcollector shims in the old locations, and make that review DEPENDENT on https://review.openstack.org/#/c/242219/ , which contains magic to get neutron-lib running for a neutron patch, AND include a Depends-On for your neutron-lib patch. That will test your shims and the existing references. | ||
+ | # Make a similar change in at least one affect child repo, similar to https://review.openstack.org/#/c/253263/ | ||
== Available work items == | == Available work items == | ||
Line 16: | Line 24: | ||
* Adopt _i18n through stadium. | * Adopt _i18n through stadium. | ||
* Include message catalog initial commit throughout stadium. | * Include message catalog initial commit throughout stadium. | ||
+ | * Check the [[Neutron/Lib/AasProgress]] list, grab a module not already in the Tasks list, and go for it. | ||
== Tasks == | == Tasks == | ||
Line 82: | Line 91: | ||
* http://codesearch.openstack.org/?q=iptables_manager&i=nope&files=&repos= | * http://codesearch.openstack.org/?q=iptables_manager&i=nope&files=&repos= | ||
+ | |||
+ | == Progress against existing repos == | ||
+ | |||
+ | * [[Neutron/Lib/AasProgress]] | ||
+ | * ... add more stadium repos here |
Revision as of 23:31, 14 December 2015
This page is primarily meant to organize the steps for getting the first version of neutron-lib out the door, who is doing what, and pointers to how to help.
Contents
Reviews
Code review guidelines: https://github.com/openstack/neutron-lib/blob/master/doc/source/review-guidelines.rst
Lib transition reviews: https://review.openstack.org/#/q/status:open+topic:bp/neutron-lib,n,z
Repo reviews: https://review.openstack.org/#/q/status:open+project:openstack/neutron-lib,n,z
Submission Procedures
- Identify a module to work on/move.
- Every module is subject to refactoring/bikeshedding, so you might want to check with the SME of what you're moving and see if they have problems with the current interfaces. A balance must be struct between forward progress breaking dependencies, and not carrying forward garbage.
- Make your changes, submit to neutron-lib repo.
- Make the changes to remove the code from neutron, including debtcollector shims in the old locations, and make that review DEPENDENT on https://review.openstack.org/#/c/242219/ , which contains magic to get neutron-lib running for a neutron patch, AND include a Depends-On for your neutron-lib patch. That will test your shims and the existing references.
- Make a similar change in at least one affect child repo, similar to https://review.openstack.org/#/c/253263/
Available work items
- Adopt _i18n through stadium.
- Include message catalog initial commit throughout stadium.
- Check the Neutron/Lib/AasProgress list, grab a module not already in the Tasks list, and go for it.
Tasks
Priority | Owner | Description | Status |
---|---|---|---|
0 | dougwig | Repo creation | Done |
1 | dougwig | Base exceptions/constants | Done |
1 | dougwig | i18n scheme across subprojects | Done, _i18n work needed for subprojects |
2 | HenryG / dougwig | neutron.db plan | 0% |
3 | pc_m | callbacks | in review/rewrite? |
neutron.db rework
1. Current usage from adv.services:
lbaas example:
'neutron.db.quota_db.DbQuotaDriver', is_agent_down_str = 'neutron.db.agents_db.AgentDbMixin.is_agent_down' quota_driver = neutron.db.quota_db.DbQuotaDriver # milestone identifier, used by neutron-db-manage DB_CORE_PLUGIN_CLASS = 'neutron.db.db_base_plugin_v2.NeutronDbPluginV2' DB_CORE_PLUGIN_KLASS = 'neutron.db.db_base_plugin_v2.NeutronDbPluginV2' from neutron.db import agents_db from neutron.db import agentschedulers_db from neutron.db import common_db_mixin as base_db from neutron.db import l3_db from neutron.db import migration from neutron.db import model_base from neutron.db import models_v2 from neutron.db import servicetype_db from neutron.db import servicetype_db as sdb from neutron.db import servicetype_db as st_db from neutron.db.migration import cli import neutron.db.l3_db # noqa
2. Current usage from "common" things inside neutron:
Example from neutron.common.rpc, following the import chain:
from neutron import context
from neutron.db import api as db_api
from neutron.db import common_db_mixin
from neutron.db import sqlalchemyutils
Other Candidates for Neutron-Lib
API validation routines
pc_m is going to look into moving all the validation methods to neutron-lib. Will check with Kevin Benton about impact w.r.t. Pecan.
iptables management code
Progress against existing repos
- Neutron/Lib/AasProgress
- ... add more stadium repos here