Michael Lange
ddc577ccca
Refactor qp helpers from the jobs faceted search
2019-04-10 10:34:10 -05:00
Michael Lange
dbb9662dbe
Make your tests orders of magnitude faster with One Neat Trick™
2018-11-06 16:17:21 -08:00
Michael Lange
3d7d7310a1
Gracefully handle response errors in stat trackers
...
1. Check if the response is a 4xx/5xx
2. If it is, skip the append step and track a frame miss
3. If enough frame misses occur in a row, treat it as a pause
A "pause" is when a null data frame is added, which shows up as a
gap in line charts.
2018-11-01 22:08:57 -07:00
Michael Lange
36fed0919d
Move jsonWithDefault to a util
2018-11-01 22:07:58 -07:00
Michael Lange
aeea4076b7
Merge pull request #4718 from hashicorp/f-ui-a11y-line-chart
...
UI: Add some simple accessibility labels for line charts
2018-10-17 09:43:27 -07:00
Michael Lange
340f3f12d4
Add more documentation to the format-duration util
2018-10-17 08:10:16 -07:00
Michael Lange
866b74be19
Add a longForm option to format-duration
2018-09-27 12:55:17 -07:00
Michael Lange
5736b71f00
Remove no longer used allocation-stats class
2018-09-26 10:59:26 -07:00
Michael Lange
c694fcb0ba
Update stat tracker unit tests
2018-09-19 19:30:18 -07:00
Michael Lange
09497b20b8
Acceptance test coverage for all the pages with resource utilization graphs
2018-09-19 16:33:51 -07:00
Michael Lange
46936b6091
Unit tests for the stats trackers service
2018-09-19 15:33:29 -07:00
Michael Lange
c93f6506dc
Add cancelation support to stats trackers
2018-09-17 16:59:09 -07:00
Michael Lange
8900d5c138
Add request throttling to the abstract stats tracker
...
This is the best of three options
1. Users of stats trackers control polling (old method)
2. Stat tracker is stateful and has start/stop methods (like logging)
3. Stat trackers blindly throttle requests
This is the best option because it means N number of concurrent users of
a stats tracker can request polling without inundating the tracker with
redundant frames (or the network with redundant requests), but they also
don't have to coordinate amongst themselves to determine what state a
tracker should be in.
2018-09-17 15:58:28 -07:00
Michael Lange
636d0c92fc
Use the appropriate methods and types in the stat trackers
2018-09-14 10:21:01 -07:00
Michael Lange
6a94ebc5fb
Use the prototype instead of "private" property backups
2018-09-14 09:38:17 -07:00
Michael Lange
a2db921c1f
Make rollingArray work with mutable array extension methods
2018-09-14 08:57:26 -07:00
Michael Lange
768f67e336
New primary-metric component
...
It encapsulates all the tracker, polling, and markup for this style
of metric.
2018-09-13 17:01:24 -07:00
Michael Lange
7e431e8876
Use addObject to get kvo behaviors
2018-09-13 17:01:24 -07:00
Michael Lange
680ac6c9b0
A StatsTracker for client-level statistics
2018-08-31 14:39:23 -07:00
Michael Lange
3d761b7347
Unit Tests for AllocationStatsTracker
2018-08-31 14:39:22 -07:00
Michael Lange
416de6c32a
Unit tests for RollingArray
2018-08-31 14:39:22 -07:00
Michael Lange
da4852a6cd
An implementation of StatsTracker for allocations
...
It accumulates CPU and Memory usage for the allocation as a whole as well
as by task.
2018-08-31 14:39:22 -07:00
Michael Lange
e1e89ce92f
An abstract class for capturing nomad stats
...
It follows the form of poll -> json parse -> append,
Where append is defined in subclasses to add data from the new frame
to long-lived rolling arrays of data.
2018-08-31 14:39:22 -07:00
Michael Lange
0c35f189e9
An array subclass that enforces a maxLength
...
The maxLength is enforced by removing elements from the head of the
list.
2018-08-31 14:39:22 -07:00
Michael Lange
33da5ed14f
Merge pull request #4600 from hashicorp/f-ui-job-writes
...
UI: Job Writes
2018-08-30 10:41:14 -07:00
Michael Lange
8ed04e64fe
Specialized No Leader error page
2018-08-20 14:11:50 -07:00
Michael Lange
da46817289
Error messages for job submit
2018-08-15 15:18:38 -07:00
Michael Lange
50794a7626
Treat filtering on an async relationship as async
2018-08-06 11:02:21 -07:00
Michael Lange
38b4d30272
Merge pull request #4458 from hashicorp/f-ui-refactor-breadcrumbs
...
UI: Refactor breadcrumbs
2018-07-10 11:01:28 -07:00
Michael Lange
a526eab044
Merge pull request #4468 from hashicorp/f-ui-styleguide-progress
...
UI: Fill out the styleguide
2018-07-06 16:03:41 -07:00
Michael Lange
6e00633d77
Update all the awkward browserify imports to plain ol' es6 imports
2018-07-06 13:38:57 -07:00
Michael Lange
de89051438
Use the new breadcrumbs pattern for allocations
2018-07-06 11:12:11 -07:00
Michael Lange
479d4700d6
Add an env var to toggle blockingQueries support
...
Mostly helpful when working with mirage
2018-07-05 11:18:09 -07:00
Michael Lange
b854168654
Styleguide entries for accordion
2018-07-03 14:30:40 -07:00
Michael Lange
1fd5035d9e
Merge pull request #4353 from hashicorp/f-ui-node-drain
...
UI: Node drain and eligibility
2018-05-30 14:40:21 -07:00
Michael Lange
e472d918cf
Account for the 0 case in format-duration
2018-05-30 14:30:45 -07:00
Michael Lange
cdbca8dcd2
Duration formatting utility
...
The cloest Moment.js has is "homanize" which isn't precise enough.
2018-05-30 11:27:21 -07:00
Michael Lange
a3cb84c6ac
The stream logger should not be supported in Safari
...
Not until the bugs around https are worked out.
2018-05-24 18:16:43 -07:00
Michael Lange
8cb96550c6
The poll logger needs to handle empty frames.
2018-05-24 18:16:42 -07:00
Michael Lange
2ed5b61358
Repeat the relationship unlinking pattern in the serializer
...
It also culls for findAll requests, so it too needs to be
careful about leaving garbage around.
2018-04-06 18:07:57 -07:00
Michael Lange
6bf139d094
Refactor the way allocation stats are fetched
...
No longer treat it as a property for relationship, just ephemeral
data that can be fetched on demand.
2018-03-22 14:34:13 -07:00
Michael Lange
d455b3cdd3
mirageEnabled alone doesn't capture whether or not mirage is enabled
...
Add an isProduction condition to ensure native fetch is used when
possible.
2018-03-21 22:09:10 -07:00
Michael Lange
0d9b94ab10
QueryParams primitive ported with a helper
...
This QueryParams object is defined in Ember source, but it isn't
public, which means there is no out of the box way to construct
the query params arg for LinkTo in JavaScript
2018-03-13 16:34:01 -07:00
Michael Lange
29f1d9948e
Merge pull request #3936 from hashicorp/f-ui-polling
...
UI: Live updating views
2018-03-08 13:27:02 -08:00
Michael Lange
4b581dc04d
Address headers and ID bugs
2018-03-02 16:28:39 -08:00
Michael Lange
553c69cc32
Fix existing tests
2018-03-02 16:21:36 -08:00
Michael Lange
962c763aa6
Watch properties cancel long poll requests
2018-03-02 16:21:36 -08:00
Michael Lange
87e32af4ea
Make the throttle time configurable
2018-03-02 16:21:35 -08:00
Michael Lange
6b1fab696e
Add a watchAll computed property macro
2018-03-02 16:21:34 -08:00
Michael Lange
8566a8cd25
Move watch tasks into a utils file
2018-03-02 16:21:34 -08:00
Michael Lange
55f90cf7f7
Prototype watching resources
...
- Service to manage X-Nomad-Index values
- Adapter method for reloading relationships with additional params
- Pattern for watching models and model relationships using EC
2018-03-02 16:21:34 -08:00
Michael Lange
dc72ac2bc7
Fallback to using the nomad server for log streaming
...
Only when the client isn't accessible
2018-02-26 12:23:47 -08:00
Michael Lange
1107798da6
Use the new ember modules imports
...
Generated with a codemode:
https://github.com/ember-cli/ember-modules-codemod
2018-01-17 09:02:04 -08:00
Michael Lange
87670753e5
Never use native fetch when mirage is enabled
...
Unfortunately, Mirage/Pretender don't support fetch
2018-01-17 09:02:04 -08:00
Michael Lange
9d505d1db0
Disambiguate what to do with the child task for the task logger
...
linked tasks are killed when the parent task is killed.
2018-01-17 09:02:04 -08:00
Michael Lange
e051b1f34b
Explain the magical logging constant
2017-11-21 15:05:28 -08:00
Michael Lange
73969cd6ab
Move the stream support check to the stream logger
2017-11-21 14:57:19 -08:00
Michael Lange
3e8e3880aa
Use the b64 log format to track offsets for pause/play support
2017-11-21 11:22:42 -08:00
Michael Lange
b3d53a3569
Use offset numbers in the polling mechanism
2017-11-21 11:22:42 -08:00
Michael Lange
061de462c6
Integration tests for the task-log component
2017-11-21 11:22:42 -08:00
Michael Lange
ba7245247a
Prevent using fetch or ReadableStream in tests
...
Until they can be mocked, they can't be used
2017-11-21 11:22:42 -08:00
Michael Lange
7c3f688ad6
Move logging logic from the controller to a component
2017-11-21 11:22:42 -08:00
Michael Lange
4293772203
Log class for interfacing with log APIs
...
Supports:
- Reading the head of a log
- Reading the tail of a log
- Following a log in one of two ways:
- Streaming the HTTP request (using fetch res.getReader)
- Polling the log endpoint (using EC timeouts)
2017-11-21 11:22:41 -08:00
Michael Lange
52b81d8fa7
Provides a slim TextDecoder polyfill for Edge
2017-11-21 11:22:41 -08:00
Michael Lange
d7df5712f9
Prefer native fetch
2017-11-21 11:22:41 -08:00
Michael Lange
225817583f
Common code for handling 403s in routes
2017-10-24 16:40:27 -07:00
Michael Lange
4a35f3c5a5
Handle 403s gracefully
...
- When a list 403s, treat it as if it were empty
- When a single resource 403s, redirect to an application error page
that has a backdoor link to the tokens page
2017-10-12 17:40:49 -07:00
Michael Lange
35f198d787
Handle 404s on jobs
2017-10-05 14:39:37 -07:00
Alex Dadgar
e5ec915ac3
sync
2017-09-19 10:08:23 -05:00