Michael Lange
4d5fef68b0
Filter out nodes that don't have NodeResources from the topo viz
2021-01-05 17:11:17 -08:00
Michael Lange
b96ca93873
Quietly ignore orphaned allocs in the topo viz
2020-12-17 11:18:43 -08:00
Buck Doyle
3b59e1bec7
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
edd296ff51
Revert "Temporarily remove poststop from the UI"
...
This reverts commit f8a505ea2f .
2020-11-12 09:16:52 -08:00
Buck Doyle
ba17e2191b
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
1b0f4203bc
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
187f778056
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
cf2cac1785
Replace visualViewport with the more compatible scrollX and scrollY
2020-11-02 13:25:50 -08:00
Michael Lange
24b0e41036
Add tooltips to the topo viz
2020-11-02 13:25:33 -08:00
Vyacheslav Morov
160b038314
Change to button.
...
Rewrite tests to check that proper urls was called.
2020-10-31 23:11:14 +03:00
Buck Doyle
2dc95a10ab
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
828487352b
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
b87b4257ae
Make alloc association lines conditional on alloc count relative to node count
2020-10-23 15:16:31 -07:00
Michael Lange
9c7bee8a01
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
2385baae80
Reset inline styles on flex-masonry elements when columns is set to 1
2020-10-23 14:17:03 -07:00
Buck Doyle
69605fc3d4
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
8f94a989d9
Typo
2020-10-15 11:45:59 -07:00
Michael Lange
13415df25c
Unit and integration tests for TopoViz component
2020-10-15 02:54:16 -07:00
Michael Lange
3a48dbfb40
Test coverage for TopoViz::Datacenter
2020-10-15 02:54:16 -07:00
Michael Lange
9390d24890
Remove temp reloading of nodes in the TopoViz component
2020-10-15 02:54:16 -07:00
Michael Lange
b185d09f31
Update topo viz code to use new alloc/node resources pattern
2020-10-15 02:54:16 -07:00
Michael Lange
84f88ecf7e
Test coverage for TopoViz::Node
2020-10-15 02:54:16 -07:00
Michael Lange
bb68a14cbc
Improved curves for allocation associations
2020-10-15 02:54:15 -07:00
Michael Lange
a4c8ce4ee0
Fix a re-render bug with flexmasonry
2020-10-15 02:54:15 -07:00
Michael Lange
f5f964b7bf
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
c5e84749ad
Apply FlexMasonry to the TopoViz component
2020-10-15 02:54:15 -07:00
Michael Lange
c152ccb945
New FlexMasonry component implements a masonry layout using flexbox
2020-10-15 02:54:15 -07:00
Michael Lange
a9e29178bb
Second attempt at a masonry layout
2020-10-15 02:54:15 -07:00
Michael Lange
37cc9b7275
Connect the memory and cpu rectangles
2020-10-15 02:54:14 -07:00
Michael Lange
d13c065bbd
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
9991dc63bb
Make the alloc select render path more efficient by not needlessly recomputing data
2020-10-15 02:54:14 -07:00
Michael Lange
e9626ceb82
Add more variety to the node heights
2020-10-15 02:54:14 -07:00
Michael Lange
2704c3e4b8
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
290f7d8fb4
Guard against undefined denominators
2020-10-15 02:54:14 -07:00
Michael Lange
f56f631676
Associate sibling allocations by drawing lines
2020-10-15 02:54:14 -07:00
Michael Lange
c2b7f7c073
Add cluster details to the topology page
2020-10-15 02:54:13 -07:00
Michael Lange
36df145da5
Fleshing out the first prototype of the topology visualization
2020-10-15 02:54:13 -07:00
Michael Lange
b3ddd1f897
Start click interaction for topo viz allocs
2020-10-15 02:54:13 -07:00
Michael Lange
773404a47f
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
6d9f59f87d
Scaffold topo viz components
2020-10-15 02:54:13 -07:00
Buck Doyle
74c14dfe55
Change htmlSafe prototype calls to imports ( #9075 )
2020-10-13 11:50:28 -05:00
Vyacheslav Morov
3d1345c016
"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
7477e972f8
Update job launches table to use the page size select pattern
2020-09-18 18:27:48 -07:00
Michael Lange
bf1c879447
Add job submit time to the job children list
2020-09-18 17:58:15 -07:00
Michael Lange
f8a505ea2f
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
14bfb9a53c
Add poststart and poststop lifecycle phases
2020-08-26 09:55:42 -05:00
Michael Lange
db363cc3e3
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
f5c8e2845f
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
208eb0d808
Compare scale events by their UID instead of reference equality
2020-08-05 12:02:23 -07:00
Michael Lange
fe115dbc41
Safestr the annotation style property
2020-08-05 12:02:22 -07:00