FlowFuse / flowfuse

Connect, collect, transform, visualise, and interact with your Industrial Data in a single platform. Use FlowFuse to manage, scale and secure your Node-RED solutions.
https://flowfuse.com
Other
286 stars 64 forks source link

Project Instance Settings: Introduce Generic 'Metadata' Property and Include it in Snapshot #2629

Open elenaviter opened 1 year ago

elenaviter commented 1 year ago

Description

For the [Node-RED] Project, we currently support dynamic settings through the inclusion of environment variables. However, it would be highly beneficial to introduce a robust in-house mechanism that allows the addition of generic metadata specific to each project. This metadata should also be seamlessly carried over to any snapshots taken from the project.

Incorporating such a feature, especially alongside exported snapshots, would pave the way for a more streamlined project management experience for the customers. It would not only permit the inclusion of intricate data with both the project and its snapshots, but also, if made accessible to the Node-RED of the project, serve as a mechanism to define elaborate presets for the project.

As Nick mentioned when we initially broached this topic in #2462:

One approach would be for the Instance to support having a very generic 'metadata' property that is treated as YML (as its far more text-box friendly to edit). The FF platform wouldn't have any knowledge or interest in the contents of that property, but would be a space where additional custom structured info could be stored. If that property was then also included in the snapshot object, you'd have a place to store your information. Please do raise a separate issue on this topic

Have you provided an initial effort estimate for this issue?

I am not a FlowForge team member

knolleary commented 1 year ago

From this description, I'm not clear what value this brings above the existing ability to set a well-defined environment variable containing whatever YML/JSON you want to be exposed to the NR instance.

Incorporating such a feature, especially alongside exported snapshots, would pave the way for a more streamlined project management experience for the customers.

Can you describe some use cases for this? It is a bit abstract and not something we have a need for in FF Cloud.