Check and refactor lib-python to support consolidated interface table

Registered by Morten Brekkevold

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:
milestone icon 3.6.0b1
Started by
Morten Brekkevold
Completed by
Morten Brekkevold

Related branches

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.

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.