Getting started
This plugin is currently in alpha state. It is not recommended to rely on this plugin in production. |
This plugin requires an instance with InvenTree 0.13.0 or higher and plugin support. |
Enables "sharing" of certain stock items between multiple InvenTree instances. There are some known limitations in the current implementation.
General information about InvenHost
The InvenHost project aims to provide a set of plugins and service that enhance InvenTree for commercial and enterprise use cases.
Read more about InvenHost in the main project documentation |
Function
TODO
Use cases
These use cases guided the development of this plugin. New additions to the plugin should not conflict with these use cases. If they do the reason needs to be documented.
In the following Party A is the InvenTree instance of the makerspace of the main user. Party B is the InvenTree instance of the makerspace of the user’s friend/friendly hack. All descriptions are from the perspective of the main user. The parties trust each other. Party C is another makerspace that is not trusted by/known to the main user. Party x means any trusted party.
Design decisions
-
The plugin should follow InvenHost best practices
-
The plugin should not use migrations
-
The plugin should expose a reusable REST API
-
The user interface is to be implemented in CUI till PUI is GA
-
Data is to be stored in metadata
-
Changes to stock etc. are to be tracked in the history
-
Each Federated party is to have it’s own customer
Known Limitations
UC 6: Party A sends to party B sends to party C
Not allowed. Only direct connections are allowed currently as the plugin does not keep track of the full chain of ownership.
Background
This plugin is mainly developed to address the ask for federation in upstream InvenTree. The idea is that multiple makerspaces would like to be able to share selected tools and inventory states between each other. This plugin is a first step towards that goal. The use cases were worked on at 37c3.