WIP - import_whitebox_model improvements
Description
In #392 (closed), we want to improve plugin models to support foreign keys to other plugins' models. Currently, the import_whitebox_model wrapper does not play well with migrations, and there are a lot of unknowns that need to be figured out:
- How should foreign keys even work
- Should they be DB enforced or not
- If DB enforced, what happens when a plugin is not loaded/removed
- If not DB enforced, should there be some kind of Whitebox-specific mechanism for handling missing relations
- How should eventual replacements work
- Specific implementation details are out of scope, but investigation of overall constraints around replacement, deprecation, migration are within scope
- How should all this be represented in migrations
Scope
- WIP, possibly a POC - two phases
MRs
- !222 (merged)
- whitebox-plugin-device-insta360!31 (merged)
- whitebox-plugin-device-manager!25 (merged)
- whitebox-plugin-flight-annotations!4 (merged)
- whitebox-plugin-flight-management!19 (merged)
- whitebox-plugin-gps-simulator!16 (merged)
- whitebox-plugin-location!4 (merged)
- whitebox-plugin-map-icons!9 (merged)
- whitebox-plugin-map!32 (merged)
- whitebox-plugin-stratux!12 (merged)
- whitebox-plugin-telegraf!2 (merged)
- whitebox-plugin-transfer-manager!2 (merged)
- whitebox-plugin-traffic-display!11 (merged)
- whitebox-plugin-ui-components!5 (merged)
- whitebox-plugin-icons!8 (merged)
- whitebox-plugin-device-status!9 (merged)
- whitebox-plugin-videojs!6 (merged)
- whitebox-plugin-pannellum!7 (merged)
- whitebox-plugin-demo-mode!2 (merged)
Edited by Milos