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

New dashboard in Singularity + other UI improvements #1636

Merged
merged 42 commits into from Dec 7, 2017

Conversation

ssalinas
Copy link
Member

@kwm4385 , this is the WIP PR we can build upon for creating user and group based views within Singularity. I have created a separate dropwizard resource with new pojos that will aggregate all data the UI needs for certain pages in a single call. We may need to do some extra bits around things like history paging and such, but we can at least get the basic details of active elements all in a single call, with some extra details like instance health included.

My goal with this would be to replace the current dashboard page with something smarter, generally eliminating the need for the requests page, as well as adding some needed details like instance health in the task detail page.

We should also try to eliminate some extraneous calls we tend to make on a number of pages like:

  • fetching /requests on every page
  • fetching all request groups on every page
  • fetching the user occasionally multiple times per page

Feel free to comment on anything you might specifically want the backend to serve up all together. I'll add more detail here as I flush things out

@ssalinas
Copy link
Member Author

On a good suggestion from @baconmania , going to not use the specific endpoints, but instead refactor the current requests/etc ones a bit to better fit the needs of the ui (behind filters/params/etc)

@ssalinas
Copy link
Member Author

ssalinas commented Oct 24, 2017

@kwm4385 I put together a quick 15-minute version of a new dashboard, mostly so that the logic is all written out for you to see the new data the backend is providing for you (and because I got angry at auth and wanted to take a break from it...).

Ordering by default is based on requests that have most recently had something interesting happen, and the list of requests is filtered (by the backend) to ones that are relevant to the user.

screen shot 2017-10-24 at 4 48 29 pm

Tasks expands/collapses when clicked so we can show more/less data without cluttering things

screen shot 2017-10-24 at 4 51 17 pm

As an additional note, the tasks piece is a bit more of an expensive api call when done across a large number of requests, so it won't be feasible to use for the normal requests page. Using it here for dashboard since the list by nature is slimmed down.

@ssalinas ssalinas changed the title WIP - User/Group-based views in Singularity WIP - User/Group-based dashboard in Singularity Oct 24, 2017
@ssalinas ssalinas added this to the 0.19.0 milestone Nov 3, 2017
@ssalinas
Copy link
Member Author

ssalinas commented Nov 9, 2017

Some updates to the new UI stuff:
Dashboard has slimmed down a bit, and non-long-running tasks will now include a recently started/finished task as recent activity:
screen shot 2017-11-09 at 12 26 10 pm
With tasks expanded...
screen shot 2017-11-09 at 12 26 35 pm

Icons replace text for request types and statuses to save space:

screen shot 2017-11-09 at 12 26 56 pm

Don't show full task ID on the request detail page to save space:

screen shot 2017-11-09 at 12 26 48 pm

@kwm4385
Copy link
Contributor

kwm4385 commented Nov 9, 2017

Some thoughts on the current iteration:

  • Do people really need to see the task table on this page? If not, linking Tasks - 1 Healthy etc. to the request page might be enough.
  • Can we use the same icons as Orion for request types for more consistency? They can be found in OrionUI/app/images/icons/.
  • We probably want some type of title and subheader on the page so people know what they're looking at.
  • Consider moving the Recent activity column first (after the star) if that's the most important, unique information in this view.
  • Shortened task ids everywhere is 💯
  • What's the reasoning behind the external link icon next to the instance id? Typically this is used to signify the link will open in a new tab and/or leave the current app.

@ssalinas ssalinas changed the title WIP - User/Group-based dashboard in Singularity New dashboard in Singularity + other UI improvements Nov 10, 2017
@kwm4385
Copy link
Contributor

kwm4385 commented Nov 10, 2017

Just one final thought here

image
Should we have icons for Pending and Cleaning as well?

cc @ssalinas

@ssalinas
Copy link
Member Author

Yeah, I can add two more. They are actually separate concepts, not separate states on the backend which is why i didn't at first (i.e. you'll never see a pending/cleaning in the same list as active/paused/cooldown)

@ssalinas
Copy link
Member Author

Extra icons added now @kwm4385

@ssalinas ssalinas added the hs_qa label Nov 13, 2017
@kwm4385
Copy link
Contributor

kwm4385 commented Dec 6, 2017

I think this is in a good state to move forward to stable. We'll keep an ear to the ground for user feedback and make further tweaks based on that. 🚢

@ssalinas ssalinas merged commit f8e6092 into master Dec 7, 2017
@ssalinas ssalinas deleted the user_and_group_view branch December 7, 2017 14:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants