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
278 stars 63 forks source link

When downgrading team types need to ensure all unavailable features are disabled #4474

Open hardillb opened 1 month ago

hardillb commented 1 month ago

Current Behavior

A move from Enterprise to Team will leave currently running Instances with custom hostnames working until the instance is suspended and restarted.

Also large instances will remain as large not medium

Expected Behavior

Custom hostnames should be disabled if no longer available to the team.

Steps To Reproduce

Environment

Have you provided an initial effort estimate for this issue?

I have provided an initial effort estimate

knolleary commented 1 month ago

There are two different ideas here:

  1. disabling features
  2. changing instance sizes

Item 2 is currently out of scope; the UI already prevents the team type change if it includes instances of an unavailable size for the target team.

For Item 1, we need to figure out how far we want to go to deal with this automatically. Each feature may have a different set of requirements to 'disable' when downgrading. For example, the hostnames require a full suspend/resume of the instance to flush out the ingress config. Alternatively, we just consider that an edge case anomaly that will sort itself out when the user happens to next restart the instance - and the development cost to handle automatically isn't justified at this time.

hardillb commented 2 weeks ago

This will also need to include disabling all the MQTT broker clients after 2.10 release

hardillb commented 2 days ago

I've added some extra tests to the teamBroker auth path to cover my earlier comment. Still need to look at the other features.