Commit Graph

384 Commits

Author SHA1 Message Date
Michael Lange
a019587de5 Use common helpers and utils for formatting hertz 2021-03-31 09:29:14 -07:00
Michael Lange
f82fe6b875 Format all bytes using helpers, even the ones that are already MiBs 2021-03-31 09:29:02 -07:00
Michael Lange
efaadd426b format-scheduled-bytes helper 2021-03-31 09:29:02 -07:00
Buck Doyle
3d9464023d Update to v4 of Ember Power Select (#10226)
This closes #10146.

Because of cibernox/ember-power-select#1203, which documents
the current impossibility of attaching test selectors to a
PowerSelect invocation, this uses test selectors on parent
containers instead, occasionally adding wrappers when needed.
I chose to leave the existing test selectors in the hopes that
we can return to using them eventually, but I could easily
remove them if it seems like extra noise now.

Presumably for the same reason, @class no longer works, so
this adjusts the scoping of global search CSS to preserve the style
of the search control.

I also included an update to the latest version of
ember-test-selectors, since we were far behind and I tried
that before finding the aforelinked issue.

Finally, this replaces ember-cli-uglify with ember-cli-terser to address
production build failures as described at ember-cli/ember-cli#9290.
2021-03-26 08:55:12 -05:00
Michael Lange
c15bf65ef0 Remove errant log line 2021-03-24 15:34:46 -07:00
Michael Lange
1d8bc393cf Guard against empty data when determining active linechart data 2021-03-24 15:09:47 -07:00
Michael Lange
2b1449ce88 Use more explicit branching of reserved amounts based on metric type 2021-03-24 13:55:18 -07:00
Michael Lange
b009fc1f97 Remove old primary metric 2021-03-24 13:52:52 -07:00
Michael Lange
91521d6256 Updated old tests 2021-03-24 13:52:52 -07:00
Michael Lange
e3a1106f9d Tests for PrimaryMetric::Allocation 2021-03-24 13:52:52 -07:00
Michael Lange
2ed5b28805 Tests for PrimaryMetric::Node 2021-03-24 13:52:52 -07:00
Michael Lange
295354262a Remove now unused chartClass arg from LineChart 2021-03-24 13:52:52 -07:00
Michael Lange
7b73460769 New PrimaryMetric::Task component 2021-03-24 13:52:51 -07:00
Michael Lange
df116888c8 Memoize the tracker and the series properties to avoid repeat computation
In addition to this computation being wasteful, it introduces a bug
where the allocation on a stats tracker can update twice in one render,
which isn't allowed in Glimmer (ironically, Glimmmer's lack of
auto-memoization introduced the issue).
2021-03-24 13:52:51 -07:00
Michael Lange
4f27bee77c Refactored multi-series allocation variant of the primary metric component 2021-03-24 13:52:51 -07:00
Michael Lange
d72eaa139c Refactor stats-time-series to allow for multiple series 2021-03-24 13:52:51 -07:00
Michael Lange
8ab301408f Sort and index multi-series data correctly in line chart
- Sorting must be done on copies to preserve orders.
 - Indices should be reversed since rendering is also reversed (the back
   layer (the tallest) is rendered first to create the stacking effect).
2021-03-24 13:52:51 -07:00
Michael Lange
d6b72c14e2 Refactor PrimaryMetric into parts/purposes
Currently, PrimaryMetric is already overloaded on multiple dimensions:
metric and resource type.

This refactor will use multiple components as a form of control flow
instead spidering conditionals, which are only getting worse as the
charts for each resource type diverge.
2021-03-24 13:52:51 -07:00
Michael Lange
ce7f6d0905 Compute and render reserved annotations for client stats 2021-03-24 13:52:30 -07:00
Michael Lange
53f9b47c72 Move complex annotation hbs logic into JS
As @backspace pointed out, we're processing a bunch of other stuff
anyway, so might as well process the active state there too where it's
more likely to be expected.
2021-03-09 17:19:52 -08:00
Michael Lange
8a9d2abc4d No longer include an automatic tooltip in LineChart
It is now required to use the one yielded by the :after named block.
2021-03-08 21:02:01 -08:00
Michael Lange
db1a128659 Integration test coverage for horizontal annotations and tooltips 2021-03-08 20:22:01 -08:00
Michael Lange
2eff475be6 Pre format x and y values for the yielded tooltip component in line chart 2021-03-08 15:41:18 -08:00
Michael Lange
57da27c148 Factor the tooltip out of line-chart and into a primitive 2021-03-08 15:41:04 -08:00
Michael Lange
a2b2ba816a Don't deal with color classes at all in LineChart
Expect this to be set on the visual yielded components directly
2021-03-08 15:41:03 -08:00
Michael Lange
b6a0fe6a0f Support multi-dimensional data in LineChart
When a @dataProp is provided, the LineChart component assumes data is an
array of data series. It will map by the data prop and flatten to
compute the domains of the data.
2021-03-08 15:41:03 -08:00
Michael Lange
78942408cc Yield HAnnotations through LineChart 2021-03-08 15:41:03 -08:00
Michael Lange
e4882dd949 New HAnnotations chart primitive 2021-03-08 15:41:03 -08:00
Buck Doyle
7832e06907 Fix rendering of DAS interstitial components (#10094)
With the Ember update, when the will-destroy action is called
to check the element height, its height is already zero. That
seems strange but I didn’t look into it any further, as
using did-insert to store the element lets us check its height
before any other actions when a processing button is pressed.
2021-03-01 09:46:22 -06:00
Michael Lange
64ebfe280f Prevent -1 dimension errors in LineChart 2021-02-24 19:28:14 -08:00
Michael Lange
e41a0b8643 Use named-blocks and contextual components to reduce the responsibility of LineChart
Now chart primitives are partially applied by LineChart but the
invocations are left to the caller.
2021-02-24 18:58:01 -08:00
Michael Lange
2178bbd669 Bring back the active annotation logic to the v-annotations primitive 2021-02-24 18:58:00 -08:00
Michael Lange
b1f3618c3f Move curve logic into the area primitive 2021-02-24 18:58:00 -08:00
Michael Lange
85257f6c32 Update the custom xFormat to be a getter, as is expected by LineChart now 2021-02-23 10:34:51 -08:00
Michael Lange
9e6315e655 Convert ScaleEventsChart into a glimmer component 2021-02-23 10:18:58 -08:00
Michael Lange
09a0e4d4a8 Refactor StatsTimeSeries component to be a glimmer component and use composition instead of inheritance 2021-02-23 10:18:58 -08:00
Michael Lange
12fb78c3ab Refactor line chart scales and refactor tests 2021-02-23 10:18:58 -08:00
Michael Lange
1e18be1757 Convert LineChart into a glimmer component 2021-02-23 10:18:58 -08:00
Michael Lange
6c6daec19b Move new glimmer style string to its own home 2021-02-23 10:18:58 -08:00
Michael Lange
1f14fd5ebf Pull the VAnnotations primitive out of the LineChart component 2021-02-23 10:18:57 -08:00
Michael Lange
8c16a158f4 Pull the Area chart primitive out of the LineChart component 2021-02-23 10:18:57 -08:00
Buck Doyle
e47ce42548 Update Ember/Ember CLI to 3.20 (#9641)
This doesn’t include Ember Data, as we are still back on 3.12.

Most changes are deprecation updates, linting fixes, and dependencies. It can
be read commit-by-commit, though many of them are mechanical and skimmable.
For the new linting exclusions, I’ve added them to the Tech Debt list.

The decrease in test count is because linting is no longer included in ember test.

There’s a new deprecation warning in the logs that can be fixed by updating Ember
Power Select but when I tried that it caused it to render incorrectly, so I decided to
ignore it for now and address it separately.
2021-02-17 15:01:44 -06:00
Buck Doyle
1d0c57dbbe Fix deployment failure error handling (#10003)
This is a supplement to #9831 to incorporate the extracted
missing-permissions error handling from #9909.

It fixes this failure on the main branch! 😳
https://app.circleci.com/pipelines/github/hashicorp/nomad/14728/workflows/4c147dca-fd1e-4de7-86aa-90ded7aabad2/jobs/137137
2021-02-10 10:23:19 -06:00
Buck Doyle
d98265d954 Add button to fail running deployments (#9831)
This closes #8744 and #9826.

It necessitated some customisation options for TwoStepButton. One is inlineText, which puts the confirmation text in the same line as the buttons. Also, there was a single-use configuration option named isInfoAction that I removed in favour of passing a set of class configuration options like this:

                @classes={{hash
                  idleButton="is-warning"
                  confirmationMessage="inherit-color"
                  cancelButton="is-danger is-important"
                  confirmButton="is-warning"}}
2021-02-10 08:38:37 -06:00
Michael Lange
fcf31ffeaf Always include the region param in server monitor requests
The region will naturally be appended to URLs via
token.authorizedRequest but agent members includes all servers across
all regions so relying on the application-level region isn't good
enough.
2021-02-01 09:54:46 -08:00
Michael Lange
dbf826d7ef Don't use generic ACL error messages
When the error is actually a 403, an ACL error is appropriate, but when
it isn't, fallback on what the API returns.
2021-01-28 12:18:53 -08:00
Buck Doyle
73be2c3439 Merge branch 'master' into b-ui/topo-viz-accounting 2021-01-28 09:56:46 -06:00
Michael Lange
ac758a7947 Adjust the no-association-lines logic
On very small clusters, the node count heuristic is impractical and
leads to confusion. By additionally requiring 10+ sibling allocs, the
lines will be shown more often.
2021-01-27 10:24:03 -08:00
Michael Lange
494b90c995 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
792559e72e Clamp widths at zero to prevent negative width warnings
This would only ever realistically happen with fixture data, but still
good to not have these warnings.
2021-01-25 18:59:55 -08:00