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

[UI Feature] Standalone mode for the new Katib UI #1437

Closed
andreyvelich opened this issue Feb 17, 2021 · 11 comments
Closed

[UI Feature] Standalone mode for the new Katib UI #1437

andreyvelich opened this issue Feb 17, 2021 · 11 comments

Comments

@andreyvelich
Copy link
Member

/kind feature

The new Katib UI should work in the standalone mode when user deploys Katib without Kubeflow central dashboard.
Let's continue discussion here how we should do that.
Also check this comment: #1427 (comment).

/cc @kimwnasptd @gaocegege @johnugeorge

@kimwnasptd
Copy link
Member

First off, from the technical side of view, the frontend can figure out if it's in Kubeflow mode or in Standalone dynamically. So we won't need to extend the backend to provide this info to the frontend. I've tried to document the more technical details of why the above approach works in kubeflow/kubeflow#5566 (comment).

The changes we will need to make to the UI, that will be aware of the mode, are:

  1. Showing a namespace drop-down component in standalone mode
  2. Have a side panel for app navigation in standalone mode [HP Tuning, NAS]
  3. Rely on the CentralDashboard's side-panel for navigating into the app's different pages in Kubeflow mode

In both cases the UI will be checking if the window.centraldashboard object is present to detect if the app is exposed under the CentralDashboard

@kimwnasptd
Copy link
Member

For the side-panel we should try to avoid showing two distinct sidebars in Kubeflow mode kubeflow/kubeflow#5566 (comment).

The Katib UI should only expose a hamburger-menu/sidebar only if the CentralDashboard is not present, which means no window.centraldashboard object exists in the app's window.

Screenshot from 2021-02-19 13-42-11

@andreyvelich
Copy link
Member Author

andreyvelich commented Feb 19, 2021

For the side-panel we should try to avoid showing two distinct sidebars in Kubeflow mode kubeflow/kubeflow#5566 (comment). The Katib UI should only expose a hamburger-menu/sidebar only if the CentralDashboard is not present, which means no window.centraldashboard object exists in the app's window.

Then how we will navigate between Trial template editor page, Katib Config and main page where user can create new Experiment?
Are you planing to integrate these pages in the central dashboard menu?

@kimwnasptd
Copy link
Member

Are you planing to integrate these pages in the central dashboard menu?

Correct, we can have any entries that would be in the sidebar-menu to be in the dashboard. I've already done something like this in the picture above, where the Dashboard has a NAS and HP Tuning entries under Experiments.

Ofc we can discuss about using different names, just wanted to show how it would look like.

@kimwnasptd
Copy link
Member

Also adding a comment on this issue wrt what Namespace will be selected from the app in standalone mode. Right now there will be none and the user will always need to manually click one #1427 (comment)

We've described some iterations we could do here in the general tracking issue for standalone/kf modes of the web apps kubeflow/kubeflow#5566 (comment)

@andreyvelich
Copy link
Member Author

Correct, we can have any entries that would be in the sidebar-menu to be in the dashboard. I've already done something like this in the picture above, where the Dashboard has a NAS and HP Tuning entries under Experiments.

Make sense, I think we should discuss which pages we want to see in the menu in the current Katib status.
For example, currently we use the same CRD for NAS and HP which makes possible to use one page to deploy Experiments.

@stale
Copy link

stale bot commented Jun 11, 2021

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@andreyvelich
Copy link
Member Author

/lifecycle frozen

@andreyvelich
Copy link
Member Author

/priority p2

@djmcgreal
Copy link

djmcgreal commented Jan 31, 2023

Hi,
I’m trying to put Katib UI behind OIDC authn. I believe Kubeflow UI supports oidc but it doesn’t look like I can do it at the moment with a standalone Katib? I see some auth code added to the new ui code base, currently that’s given a user id as a header but doesn’t support anything group based or verification of e.g a JWT. Is that the sort of thing you’d like to support?
Thanks, Dan.

@andreyvelich
Copy link
Member Author

Hi @djmcgreal, maybe this PR might be helpful for your use-case: #2145 that adds support for groups.
Please feel free to create a separate issue to track usage Katib UI behind custom OIDC provider.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants