Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Importing Flows causes ui-base clash #309

Closed
joepavitt opened this issue Oct 27, 2023 · 3 comments · Fixed by #310
Closed

Importing Flows causes ui-base clash #309

joepavitt opened this issue Oct 27, 2023 · 3 comments · Fixed by #310
Labels
bug Something isn't working priority:high High Priority size:M - 3 Sizing estimation point

Comments

@joepavitt
Copy link
Collaborator

Description

If I import flows from one Node-RED Editor to another, both containing Dashboard 2.0, then we get multiple instances of ui-base, which in turn results in our HTTP Server trying to run multiple Dashboard's on the same endpoint.

We need a way of ensuring that we only have one running ui-base node in Node-RED when imports take place.

Challenges:

  • What do we do with any ui-group and ui-page config nodes that are mapped to the ui-base we would no longer use?
  • Do we just delete the ui-base that we aren't using? What are the consequences of this?
  • We may also end up with multiple ui-page instances clashing on their respective URLs too, for example, if only one ui-page existed in each Dashboard instance, then they're likely both using the default / endpoint

Epic/Story

No response

Have you provided an initial effort estimate for this issue?

I have provided an initial effort estimate

@joepavitt joepavitt added the task A piece of work that isn't necessarily tied to a specific Epic or Story. label Oct 27, 2023
@joepavitt joepavitt added size:M - 3 Sizing estimation point bug Something isn't working priority:high High Priority and removed task A piece of work that isn't necessarily tied to a specific Epic or Story. labels Oct 27, 2023
@joepavitt
Copy link
Collaborator Author

The difference between D2.0 and D1.0 in this instance is that ui-page has an option for ui-base, where it then becomes possible to create more than one. Similarly, the configuration for UI Base is done by the user in Dashboard 2.0, so can result in different config options (e.g. name).

In Dashboard 1.0, this ui-base node is automatically created, and maintained by D1.0 logic, not by the user, so it doesn't clash as it's consistent across all instances of Dashboard 1.0

@joepavitt
Copy link
Collaborator Author

Also, our registration is all managed through ui-base, whereas in Dashboard 1.0, they have a standalone service for this.

@joepavitt
Copy link
Collaborator Author

A short term iteration on this is that we fail "cleanly" - currently we still have the horrible blue screen is a user tries to navigate to a non-existent Dashboard (whether that's due to failure to deploy, or from lack of configuration/setup)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working priority:high High Priority size:M - 3 Sizing estimation point
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

1 participant