Check and refactor lib-python to support consolidated interface table
The python libraries must be checked for dependencies to the old swport/gwport tables. Any such dependency must be refactored to support the new interface table, including the notion that modules are a compulsory dependency for an interface. References to gwport/swport seem to mostly be found in Django models, urlbuilder and old forgetSQL libraries. The latter may be deprecated by changes to SeedDB.
Blueprint information
- Status:
- Complete
- Approver:
- Morten Brekkevold
- Priority:
- Medium
- Drafter:
- Morten Brekkevold
- Direction:
- Approved
- Assignee:
- Morten Brekkevold
- Definition:
- Approved
- Series goal:
- Accepted for 3.6
- Implementation:
- Implemented
- Milestone target:
- 3.6.0b1
- Started by
- Morten Brekkevold
- Completed by
- Morten Brekkevold
Related branches
Related bugs
Sprints
Whiteboard
Should we include the GwPort and SwPort-classes in 3.6, only with an deprecation warning? Should help speed up 3.6 release, as most of the stuff that uses the GwPort and SwPort-classes only reads from the database and can use the compatibility views.
Should probably override the save()-method in that case.
The gwport and swport views in the database are nearly useless, as most code that use the gwport and swport tables will join with other tables using the "swportid" and "gwportid" primary keys. No tables use these field names any longer, so all such joins will fail. If the GwPort and SwPort classes can be rewritten to inherit or somehow get their results from the Interface class, there would be less compatibility problems in Django code, since any joins are implicitly taken care of by Django's ORM.
Work Items
Dependency tree
* Blueprints in grey have been implemented.