Michael Lange
82d06f658b
Don't render association lines on resize when lines aren't supposed to be shown at all
2021-01-27 10:20:10 -08:00
Michael Lange
9b488adbf2
Filter out nodes that don't have NodeResources from the topo viz
2021-01-05 17:11:17 -08:00
Michael Lange
e221eefdd2
Quietly ignore orphaned allocs in the topo viz
2020-12-17 11:18:43 -08:00
Buck Doyle
2d344179d3
Migrate preview deployments from Netlify to Vercel ( #9471 )
...
This adds:
* a script for building and deploying the Ember UI and Storybook to
Vercel
* configuration for that deployment
* a header link to the UI to link to Storybook when built with
STORYBOOK_LINK=true
It also removes a file used to configure Netlify redirects.
The Netlify setup had two “sites”: nomad-storybook and nomad-ui. I
attempted to replicate that here but ran into some platform limitations
with Vercel: two “projects” cannot share the same root directory without
also sharing the same vercel.json that lets us specify configuration
such as the rewrite needed to handle deep linking into the Ember UI. I
tried having Storybook use /ui/storybook as the root directory (and
adding a symbolically-linked package.json to bypass Vercel’s refusal
to build without it) but that produced broken Storybook deployments.
This instead combines the two projects into one
(nomad-storybook-and-ui), defaults to forwarding / to /ui/, and
adds the header link to the UI to navigate to Storybook.
Rather than have a complex build script in the Vercel configuration UI,
this delegates to a script in the repository.
2020-12-07 08:33:49 -06:00
Michael Lange
f543137ec9
Revert "Temporarily remove poststop from the UI"
...
This reverts commit f8a505ea2f9def2a7ce7a93e6d0529e1b5da4894.
2020-11-12 09:16:52 -08:00
Buck Doyle
20ec481090
Add DAS subroute and copy button ( #9201 )
...
This continues iteration on the DAS UI by adding the ability to directly
navigate to a recommendation summary by (namespaced) slug and a copy
button for the direct navigation link.
It includes a change to CopyButton allowing it to take a block that’s
rendered within the button.
It also changes some instances of multi-relationship traversal to use
in-summary attributes, such as summary.jobNamespace instead of
summary.job.namespace.name.
2020-11-04 12:22:24 -06:00
Buck Doyle
6450abfe76
Change node id search to prefix-only ( #9244 )
...
This test has been periodically failing, like here:
https://app.circleci.com/pipelines/github/hashicorp/nomad/12879/workflows/40c0445c-b244-4a04-a5a3-d9685b656c94/jobs/114751/tests
The failure was because sometimes the first node contains the
beginning of the ”otherNode” id somewhere within its id. It seems
less useful to match within the node, so this changes id search to
only match at the beginning of the id.
2020-11-04 12:12:31 -06:00
Michael Lange
dc6ec319c2
Merge pull request #9074 from Liraim/fix_download
...
ui: "View Raw File" download using JS instead simple link
2020-11-04 10:09:35 -08:00
Michael Lange
5f2ebf7a00
Replace visualViewport with the more compatible scrollX and scrollY
2020-11-02 13:25:50 -08:00
Michael Lange
b5044250e6
Add tooltips to the topo viz
2020-11-02 13:25:33 -08:00
Vyacheslav Morov
c6fc37cf29
Change to button.
...
Rewrite tests to check that proper urls was called.
2020-10-31 23:11:14 +03:00
Buck Doyle
39af5c709b
Fix Firefox positioning of chart resource label ( #9209 )
...
alignment-baseline appears to be ignored in Firefox, but dominant-baseline
works. This also moves the anchor into CSS.
2020-10-29 08:13:41 -05:00
Buck Doyle
31b4ed7a6d
Add DAS UI code from enterprise ( #9192 )
...
This is a few combined iterations on the DAS feature.
2020-10-29 07:46:42 -05:00
Michael Lange
2a1c820c1c
Make alloc association lines conditional on alloc count relative to node count
2020-10-23 15:16:31 -07:00
Michael Lange
e0157759a8
Redo column widths on the topology page.
...
Now the info panel has a fixed width and the TopoViz will display as a
single column if the TopoViz column is too narrow for two columns.
2020-10-23 14:17:03 -07:00
Michael Lange
7f2fba9b23
Reset inline styles on flex-masonry elements when columns is set to 1
2020-10-23 14:17:03 -07:00
Buck Doyle
70a0253f0d
Update loading spinner to be logo-based ( #9106 )
...
Thanks to @mikehobi, whose work here this is adapted from:
https://icons8.com/cssload/en/3d-loaders
2020-10-15 16:05:58 -05:00
Michael Lange
5c34e94529
Typo
2020-10-15 11:45:59 -07:00
Michael Lange
a2b57c15eb
Unit and integration tests for TopoViz component
2020-10-15 02:54:16 -07:00
Michael Lange
c8ea019629
Test coverage for TopoViz::Datacenter
2020-10-15 02:54:16 -07:00
Michael Lange
8b96667a61
Remove temp reloading of nodes in the TopoViz component
2020-10-15 02:54:16 -07:00
Michael Lange
3c39895168
Update topo viz code to use new alloc/node resources pattern
2020-10-15 02:54:16 -07:00
Michael Lange
b2b7d5e19e
Test coverage for TopoViz::Node
2020-10-15 02:54:16 -07:00
Michael Lange
f3aed88a10
Improved curves for allocation associations
2020-10-15 02:54:15 -07:00
Michael Lange
ef12488d1c
Fix a re-render bug with flexmasonry
2020-10-15 02:54:15 -07:00
Michael Lange
066502d408
Make the topo viz denser when there are >50 nodes
...
By hiding node details and making nodes interactive instead, we can pack
more allocations on a screen.
2020-10-15 02:54:15 -07:00
Michael Lange
1602d72789
Apply FlexMasonry to the TopoViz component
2020-10-15 02:54:15 -07:00
Michael Lange
f27895c4c8
New FlexMasonry component implements a masonry layout using flexbox
2020-10-15 02:54:15 -07:00
Michael Lange
d9083fdde6
Second attempt at a masonry layout
2020-10-15 02:54:15 -07:00
Michael Lange
6d99f96425
Connect the memory and cpu rectangles
2020-10-15 02:54:14 -07:00
Michael Lange
0ab6b31cab
Refactor topo viz to do as much computation upfront & use faster data structures
...
Now all data loading happens in the TopoViz component as well as
computation of resource proportions.
Allocation selection state is also managed centrally uses a dedicated
structure indexed by group key (job id and task group name). This way
allocations don't need to be scanned at the node level, which is O(n) at
the best (assuming no ember overhead on recomputes).
2020-10-15 02:54:14 -07:00
Michael Lange
7d75421a75
Make the alloc select render path more efficient by not needlessly recomputing data
2020-10-15 02:54:14 -07:00
Michael Lange
872ca3dd5c
Add more variety to the node heights
2020-10-15 02:54:14 -07:00
Michael Lange
4c155b5da4
CSS Grid based masonry layout
...
TBH, it's buggy and I don't like it.
2020-10-15 02:54:14 -07:00
Michael Lange
24d0481889
Guard against undefined denominators
2020-10-15 02:54:14 -07:00
Michael Lange
5bc4d1f1d5
Associate sibling allocations by drawing lines
2020-10-15 02:54:14 -07:00
Michael Lange
cab4e618fc
Add cluster details to the topology page
2020-10-15 02:54:13 -07:00
Michael Lange
831d27efd6
Fleshing out the first prototype of the topology visualization
2020-10-15 02:54:13 -07:00
Michael Lange
000c00e920
Start click interaction for topo viz allocs
2020-10-15 02:54:13 -07:00
Michael Lange
b347141e0c
Prototype of the topo viz
...
- Plot all datacenters
- For each datacenter, plot all nodes
- For each node, plot all allocations by memory and cpu
- For empty nodes, highlight the emptiness
- When hovering over allocations, give them visual focus
2020-10-15 02:54:13 -07:00
Michael Lange
2a067d646d
Scaffold topo viz components
2020-10-15 02:54:13 -07:00
Buck Doyle
517bc3c17b
Change htmlSafe prototype calls to imports ( #9075 )
2020-10-13 11:50:28 -05:00
Vyacheslav Morov
911b3b7f57
"View Raw File" download using JS instead simple link
...
Use fetch API to download file so we can:
- send Token in headers
- assign filename to download
2020-10-13 02:19:15 +03:00
Michael Lange
1a42742d40
Update job launches table to use the page size select pattern
2020-09-18 18:27:48 -07:00
Michael Lange
9ecb25632d
Add job submit time to the job children list
2020-09-18 17:58:15 -07:00
Michael Lange
fc31f80880
Temporarily remove poststop from the UI
...
Since poststart and poststop are shipping separately, we can't ship them
both in the UI at the same time.
2020-08-31 19:32:38 -07:00
Buck Doyle
de3504a738
Add poststart and poststop lifecycle phases
2020-08-26 09:55:42 -05:00
Michael Lange
3227b3c342
Merge pull request #8593 from hashicorp/f-ui/scaling-events-chart
...
UI: Task group scaling timeline
2020-08-07 10:35:00 -07:00
Buck Doyle
9074d33f28
UI: Add truncation of rendered search results ( #8571 )
...
This closes #8549 . Thanks to @optiz0r for the bug report. Having
the global search attempt to render every returned result is
obviously a mistake!
2020-08-05 15:58:44 -05:00
Michael Lange
3b59b52bca
Compare scale events by their UID instead of reference equality
2020-08-05 12:02:23 -07:00