Split neutron into base library and servers/agents
Part of the goal of splitting functionality and vendor code out of neutron was to increase focus on core neutron, getting it stable, and increasing the velocity of making changes. Since the services repos and decomposed plugins/drivers are both importing and using internal neutron interfaces, without running existing tests against the universe of all of this code, it becomes difficult to re-factor or make simple changes without breaking these newly de-composed repos.
Blueprint information
- Status:
- Complete
- Approver:
- Armando Migliaccio
- Priority:
- High
- Drafter:
- Doug Wiegley
- Direction:
- Approved
- Assignee:
- Boden R
- Definition:
- Approved
- Series goal:
- Accepted for ocata
- Implementation:
- Implemented
- Milestone target:
- ocata-rc1
- Started by
- Kyle Mestery
- Completed by
- Armando Migliaccio
Related branches
Related bugs
Sprints
Whiteboard
Feb-07-2017 (boden): I'm fine with armax's suggestion below of closing this an opening more measurable BPs as needed. For reference I'm working on moving networking-ovn off neutron and as a result a number of patches are out for review (and more underway): https:/
Feb-06-2017(armax): the split is well under way, with speed bumps along the way. Personally I'd vote to close this blueprint and create new ones that are more measurable and smaller in scope (e.g. make project foo stop importing neutron) and so on.
Dec-01-2016(armax): we're chewing away at what we can decouple. We are optmistically trying to get at least one or two projects free of neutron imports by the end of ocata, but it's a tall order.
Aug-08-2016(armax): ongoing effort
Mar-08-2016(armax): Moving to Newton-1; we need to better define completion criteria, but we're getting close to have something functional end-to-end
Feb-29-
Jan-24-2016(armax): this is well undergoing, with more to be ironed out during mid-cycle.
Dec-07-2015(armax): need to write the current plan down, and next big hurdle is coming up with a plan of attack for parts of neutron.db
August-26 (mestery): Moving to Mitaka!
June-15 (mestery): Lets try to land as much as we can in Liberty.
Gerrit topic: https:/
Addressed by: https:/
Split neutron-lib out of neutron
Addressed by: https:/
Initial cookiecutter commit
Gerrit topic: https:/
Addressed by: https:/
Initial shared exceptions and i18n macros
Gerrit topic: https:/
Addressed by: https:/
Beginning of lib review guidelines
Addressed by: https:/
Follow-up to initial cookiecutter commit
Addressed by: https:/
Insert references to debtcollector in review guidelines
Addressed by: https:/
Remove dependency on neutron for topics
Addressed by: https:/
Remove dependency on neutron for topics
Addressed by: https:/
Initial list of constants
Addressed by: https:/
Setup for devref documentation
Addressed by: https:/
Adding callback mechanism
Addressed by: https:/
Removing adv svcs dependencies on neutron
Addressed by: https:/
Add neutron/
Addressed by: https:/
API validators and conversions
Addressed by: https:/
Callbacks: replace kwargs with dict positional arg
Addressed by: https:/
Start using neutron-lib for shared constants and exceptions
Gerrit topic: https:/
Addressed by: https:/
Lib specific hacking rules
Addressed by: https:/
Move neutron.common.rpc into neutron-lib
Addressed by: https:/
Migrate some stuff to neutron-lib
Gerrit topic: https:/
Addressed by: https:/
Add a hacking check against importing neutron
Addressed by: https:/
Move neutron.common.rpc into neutron-lib
Addressed by: https:/
Callback mechanism using Oslo Versioned Objects (PoC)
Gerrit topic: https:/
Addressed by: https:/
WIP: Use paginate_query from oslo_db
Addressed by: https:/
VPNaaS: make use of neutron_lib exceptions
Addressed by: https:/
LBaaS: make use of neutron_lib exceptions
Addressed by: https:/
FWaaS: make use of neutron_lib exceptions
Addressed by: https:/
Move neutron.
Addressed by: https:/
[WIP] Switch to neutron lib constants and exceptions
Gerrit topic: https:/
Addressed by: https:/
[WIP][DNM] Does this break anything?
Addressed by: https:/
Remove unused PolicyFileNotFound exception
Addressed by: https:/
[WIP] Switch to DB api and model_base from neutron-lib
Addressed by: https:/
[WIP][DNM] For Doug
Addressed by: https:/
[WIP] Use converters and validators from neutron-lib
Addressed by: https:/
Use exceptions from neutron-lib
Addressed by: https:/
Switch to using hacking checks from neutron-lib
Addressed by: https:/
Switch to inheriting hacking checks from neutron-lib
Addressed by: https:/
Switch to using attributes from neutron-lib
Addressed by: https:/
Revert "Switch to inheriting hacking checks from neutron-lib"
Addressed by: https:/
Switch to using hacking checks from neutron-lib
Addressed by: https:/
Switch to using hacking checks from neutron-lib
Addressed by: https:/
Switch to using hacking checks from neutron-lib
Addressed by: https:/
Revert "Revert "Switch to inheriting hacking checks from neutron-lib""
Addressed by: https:/
Remove ICMPV6_
Addressed by: https:/
Use IPv[46]_BITS instead of IPV[46]
Addressed by: https:/
Using constants from neutron-lib
Addressed by: https:/
Use neutron-lib converters
Gerrit topic: https:/
Addressed by: https:/
Add neutron-lib to milestone review dashboard
Addressed by: https:/
Refactor/
Addressed by: https:/
Add Neutron context module and some policy methods
Addressed by: https:/
Base DB stuff, step 1: rehome
Addressed by: https:/
Add tool to list moved globals
Addressed by: https:/
Rehome neutron common rpc
Addressed by: https:/
Move some neutron.
Addressed by: https:/
WIP - Convert common.utils to use the neutron_lib versions
Addressed by: https:/
Add __init__ methods in model_base for debtcollector
Addressed by: https:/
Move get_unique_keys() out of model_base.py
Addressed by: https:/
Use model_base from neutron-lib
Addressed by: https:/
Use model_base from neutron-lib
Addressed by: https:/
Drop use of neutron's eventlet utility function
Addressed by: https:/
Introduce Plugin Registry for Neutron
Addressed by: https:/
Spin off plugin directory out of Neutron Manager
Addressed by: https:/
Migrate references from neutron to neutron-lib
Addressed by: https:/
Add neutron context and policy modules to neutron-lib
Addressed by: https:/
Spin off context/policy engine
Addressed by: https:/
DNM: see the effects of directory/
Gerrit topic: https:/
Addressed by: https:/
Switch to using plugins directory in lieu of neutron manager
Addressed by: https:/
Add missing is_loaded() method on directory's interface
Addressed by: https:/
Switch to using plugins directory in lieu of neutron manager
Addressed by: https:/
Switch to using plugins directory in lieu of neutron manager
Addressed by: https:/
Switch to using plugins directory in lieu of neutron manager
Gerrit topic: https:/
Addressed by: https:/
Use neutron-lib for well known plugin types
Addressed by: https:/
Sync latest neutron callbacks into lib
Addressed by: https:/
Sync up bare minimum from neutron.db.api into lib
Addressed by: https:/
neutron-lib: use CORE from neutron lib constants
Addressed by: https:/
Revisit exported policy module
Addressed by: https:/
Use neutron-lib definition of neutron-fwaas API
Addressed by: https:/
Remove deprecated methods supported by neutron_lib
Addressed by: https:/
Use neutron-lib's context module instead of neutron
Addressed by: https:/
Use neutron-lib's context module
Addressed by: https:/
Migrate Events and Resources to neutron-lib
Addressed by: https:/
[WIP] Operation Pig Bristle, part 7
Addressed by: https:/
[WIP] Operation Pig Bristle, part 5
Addressed by: https:/
Eliminate lookup of "resource extend" funcs by name
Addressed by: https:/
Eliminate lookup of model query hooks by name
Addressed by: https:/
[WIP] Operation Pig Bristle, part 6
Addressed by: https:/
Stop using CommonDbMixin
Addressed by: https:/
Stop using CommonDbMixin
Addressed by: https:/
Stop using CommonDbMixin
Addressed by: https:/
Move Firewall Exceptions to a common location
Addressed by: https:/
Use API Definitions from Neutron-Lib
Addressed by: https:/
Bump neutron-lib version
Work Items
Work items:
Constants: DONE
Conf items: TODO
Base DB: INPROGRESS
RPC: TODO