Commit Graph

331 Commits

Author SHA1 Message Date
Michael Lange 34872543f9 Remove records from the store when they are no longer in array responses
Ember Data doesn't do this by default, instead opting to be as
non-destructive as possible. However, this is desired behavior.
2018-03-02 16:21:35 -08:00
Michael Lange 5f10940c92 Blocking query support for findAll requests 2018-03-02 16:21:35 -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 d51da0fa62 Fix distribution-bar bugs found with live data
- Key data using datum label
  (when something goes from number, to zero, to number again)
- Retain active and inactive classes across data updates
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 bace0fedef Re-render chart whenever data changes 2018-03-02 16:21:13 -08:00
Michael Lange e7796ccaee Refactor job summary to a relationship
Now that blocking queries are going to be in play, We can no longer
pretend the two requests are one, since they have independent nomad
indices.
2018-03-02 16:21:13 -08:00
Michael Lange a18771278f
Merge pull request #3908 from hashicorp/f-ui-route-client-requests-through-server
UI: Take advantage of client request tunneling
2018-03-02 15:58:27 -08:00
Michael Lange a503fbe73c In the event the server also times out, show an error message 2018-02-27 13:38:31 -08:00
Michael Lange 16daba97e1 Cleanup following review 2018-02-26 16:35:41 -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 470b8131bd Get client stats through the server agent 2018-02-26 12:23:47 -08:00
Michael Lange 2fcd9b3cb6 Refactor node meta table
- Use existing serializer and components
- Add acceptance test
- Add empty state
2018-02-06 18:56:49 -08:00
Or Tzabary cb1193b9a5 Meta params table in Client view 2018-02-06 18:04:57 -08:00
Michael Lange 2563e04a6d Inject system so namespace shows up on job detail components 2018-02-06 10:53:53 -08:00
Michael Lange 9f9597c50c Integration test for periodic job force launch 2018-02-06 10:53:53 -08:00
Michael Lange f864fb3f2a Tests for the summary job page part 2018-02-06 10:53:53 -08:00
Michael Lange 3d9ed6e57e Integration tests for the body job part 2018-02-06 10:53:52 -08:00
Michael Lange 40c8149520 Trim the parent job prefix off the child job names when displaying them 2018-02-06 10:53:52 -08:00
Michael Lange 1f5e9998e9 State periodic or parameterized as the job type when applicable 2018-02-06 10:53:52 -08:00
Michael Lange 64b99276ca Clean up force launch button 2018-02-06 10:53:51 -08:00
Michael Lange 09eeb49786 Differentiate between no search matches and no allocs on task group page 2018-02-06 10:53:51 -08:00
Michael Lange abcfda9911 Add ability to force a periodic job launch 2018-02-06 10:53:51 -08:00
Michael Lange 732c61baf9 For now, the system job is identical to the service job 2018-02-06 10:53:51 -08:00
Michael Lange a820ea7b13 Payload details for the parameterized child job detail page 2018-02-06 10:53:51 -08:00
Michael Lange aa1b9674e8 Elastic mode for cli window component 2018-02-06 10:53:51 -08:00
Michael Lange 89a19fbe38 Breadcrumbs for the periodic child job page 2018-02-06 10:53:50 -08:00
Michael Lange 4f8a59a56c Bring payload in from the job api response 2018-02-06 10:53:50 -08:00
Michael Lange 0d4a245f7c Paginated and sortable table for job launches/children jobs 2018-02-06 10:53:50 -08:00
Michael Lange 995d07efc2 New job page components for parent jobs and batch jobs 2018-02-06 10:53:50 -08:00
Michael Lange 0e173f5da5 Fleshing out job page parts and differences 2018-02-06 10:53:50 -08:00
Michael Lange 6492611e39 Recreate the service job detail page using job part components 2018-02-06 10:53:50 -08:00
Michael Lange 25d9004d3a Deconstruct the existing job detail page into common parts
This is to later compose job detail page variations
2018-02-06 10:53:49 -08:00
Michael Lange 1845ccd456 Handle the difference between parameterized on single and list responses 2018-02-05 20:13:58 -08:00
Michael Lange a4deea08af Computed a template type for a job
This is a composite of scheduler type, batch variations, and children v.
template
2018-02-05 20:13:58 -08:00
Michael Lange 67cee01f11 Use the children summary instead of alloc summary when applicable 2018-02-05 20:13:58 -08:00
Michael Lange d8bd9dec77 Specialized children-status-bar variant of the allocation-status-bar 2018-02-05 20:13:58 -08:00
Michael Lange c3fe28219b Model the parent/child relationship in jobs 2018-02-05 20:13:58 -08:00
Michael Lange 633c9599dc Filter child jobs out of the root jobs list 2018-02-05 20:13:58 -08:00
Michael Lange b5c7c5f3ce
Merge pull request #3777 from johncowen/f-ui-api-task-events-messages
UI: Make task-events use the `message` from the API rather than hardcoded
2018-02-05 18:36:41 -08:00
John Cowen 98bd72a44e Remove `vaultError`, `failedSibling` and `messagePassthru`
1. `vaultError` and `failedSibling` are safe to remove see
https://github.com/hashicorp/nomad/blob/64e9cf9/nomad/structs/structs.go#L3979-L3986
2018-01-26 13:37:20 +00:00
John Cowen c7c465fb78 Make task-events use the `message` from the API rather than hardcoded
The api has changed to send through a message for task-events. Use that
instead of rendering a message from within js dependent on the task
event type
2018-01-19 15:38:57 +00:00
John Cowen abaae90be7 Address PR feedback
1. Extra whitespace
2. Remove redundant code
3. Remove redundant markup from test
4. placement-failure should be used as an inline component
5. Prefer `assign` polyfill
6. Use new `@ember' org style imports
2018-01-19 13:59:19 +00:00
John Cowen 56890fbc6b Add more assertions for basic message checking 2018-01-19 13:59:19 +00:00
John Cowen 9b0715ac44 Add in data-test attrs to hook into, decide on test case granularity 2018-01-19 13:59:19 +00:00
John Cowen 1f9a2064c6 Move cleanWhitespace to utils, readd data-test attribute for PF's
1. cleanWhitespace > /test/utils/clean-whitespace.js
2. Missd the data-test attribute for placement failures in previous
conflict
2018-01-19 13:59:19 +00:00
John Cowen 7865038c6e Move placement failures to a component, begin separate integration tests
1. Simple move of placement-failures template code to a component
2. Start adding integration tests - hit `inc` surprise
2018-01-19 13:59:19 +00:00
Michael Lange 20eebaeda1 Add breadcrumbs to the styleguide 2018-01-17 09:04:01 -08:00
Michael Lange 79ebf291e8 Reorganize the styleguide using components for sections 2018-01-17 09:04:01 -08:00
Michael Lange c9ae29682c Add boxed-section component to the styleguide 2018-01-17 09:04:00 -08:00
Michael Lange d2a26a6745 Add basic elements to the styleguide 2018-01-17 09:04:00 -08:00
Michael Lange a0b2433f42 Add jumbo distribution bar to the styleguide 2018-01-17 09:04:00 -08:00
Michael Lange 5e02fc49b3 Move distribution bar styleguide material to a component 2018-01-17 09:04:00 -08:00
Michael Lange 124d8de8d8 Move button styleguide material to a component 2018-01-17 09:04:00 -08:00
Michael Lange 6a258b20d6 Fix syntax highlighting in the styleguide 2018-01-17 09:04:00 -08:00
Michael Lange 1cb8aeeba8 Fix a class name bug in the distribution bar 2018-01-17 09:04:00 -08:00
Michael Lange c9837ec9f6 A new place to put styles only the styleguide uses 2018-01-17 09:04:00 -08:00
Michael Lange c408b4ecc4 Run prettier on all files
Since prettier updated, some files have out of date formatting.
2018-01-17 09:04:00 -08:00
Michael Lange 45f9214c2c Use ember-test-selectors for integration tests 2018-01-17 09:03:59 -08:00
Michael Lange 76cd94a54e Use data-test- selectors in acceptance tests 2018-01-17 09:03:59 -08:00
Michael Lange 875936ba0d Strengthen the .tag override selector
In 0.5.2, Bulma excludes the body element from the selector to work around
an issue with Wordpress.
2018-01-17 09:03:59 -08:00
Michael Lange 02028e29c2 Remap $info to $blue
Bulma defaults $info to $cyan in 0.6.0
2018-01-17 09:03:59 -08:00
Michael Lange 0a4fb3a16b Specify color overrides in navbar
Bulma 0.5.2 introduced color modifiers for navbar
2018-01-17 09:03:59 -08:00
Michael Lange ed756ce602 Replace nav with navbar
Bulma introduced navbar while deprecating nav in 0.4.3
Bulma removed deprecated nav in 0.6.0
2018-01-17 09:03:59 -08:00
Michael Lange e4ddfafe9d Replace custom breadcrumbs CSS with new Bulma provided CSS 2018-01-17 09:03:59 -08:00
Michael Lange 99ead2e390 Update variable names 2018-01-17 09:03:58 -08:00
Michael Lange 5f767fe29e Default to 100% wide tables
Bulma 0.5.0 makes tables auto by default and adds the
full-width modifier.
2018-01-17 09:03:58 -08:00
Michael Lange 450a2a8d75 Shuffle around styles to better organize around net new code and bulma overrides 2018-01-17 09:03:58 -08:00
Michael Lange d918c81c76 Remove the MODEL_FACTORY_INJECTIONS cruft 2018-01-17 09:02:05 -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 3136c5db18 Update the reason why the router service is still not used 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 b0aab1f23e Don't warn intentional errors in tests
It's too noisy
2018-01-17 09:02:04 -08:00
Michael Lange c15b54a299 Don't dot twice after an @each 2018-01-17 09:02:03 -08:00
Michael Lange 9cf71202ce Never fetch a job with null as the namespace 2018-01-17 09:02:03 -08:00
Michael Schurter 7a77fc69ce Include credentials in fetch requests
Fixes #3701

Relevant spec section:
https://fetch.spec.whatwg.org/#concept-request-credentials-mode
2018-01-08 12:18:03 -08:00
Michael Lange c1efbabce6
Merge pull request #3631 from hashicorp/b-ui-expand-definition
UI Show full job definition by default
2017-12-07 14:42:01 -08:00
Michael Lange bfaf81df31
Merge pull request #3607 from hashicorp/f-ui-modify-time-over-modify-index
UI Use ModifyTime instead of ModifyIndex in allocation lists
2017-12-07 14:25:28 -08:00
Michael Lange aeddd4d717 Expand the entire job definition by default 2017-12-07 14:06:51 -08:00
Michael Lange a2b9c2ee60
Merge pull request #3621 from hashicorp/b-ui-timezones
UI: Drop timezones from timestamps
2017-12-06 14:16:08 -08:00
Michael Lange 305b058a85
Merge pull request #3623 from hashicorp/f-ui-warn-uncaught-exceptions
UI: Warn uncaught exceptions to console
2017-12-06 14:11:22 -08:00
Michael Lange a833248a9d Make sure the code element within a cli-window takes the full height 2017-12-06 13:36:18 -08:00
Michael Lange 3b6a084a1d Warn errors in prod 2017-12-06 10:33:03 -08:00
Michael Lange 54cb23c577 Use ModifyTime instead of ModifyIndex 2017-12-06 10:17:12 -08:00
Michael Lange 4a88d3338c Remove UTC timezone tag 2017-12-05 19:12:18 -08:00
Michael Lange 956e967ffd Acceptance tests for evaluations 2017-11-29 20:12:45 -08:00
Michael Lange bd7a474c28 Be clear about what the placment failures number next to task groups is 2017-11-29 20:12:12 -08:00
Michael Lange 4451265b79 List placement failures on the job detail page 2017-11-29 20:12:12 -08:00
Michael Lange d1277ac933 Add a table of evaluations to the job detail page 2017-11-29 20:12:12 -08:00
Michael Lange 4e3b58a24a Associate jobs, task groups, and evaluations 2017-11-29 20:12:12 -08:00
Michael Lange 8240f99769 Models evaluation data 2017-11-29 20:12:12 -08:00
Michael Lange f747cc79e4 Revert "UI Placement failures""
This reverts commits
141ecd8d9170f56c8302b5c776532e6d287a40e3
d2d838c2de08aac716a9431d9720b5c12bb19ba1
8099db433641429816e8479c6d23116269f744c0
86262b3ceff607627a9c9e0e25eb81b9b5ee739c
eb4104ec528982e0ee6ae9a05fb0460e53139f3f
0e0e23e238017815bdb6dcfbc056275b3deaacca
6d45658d77fb4c40760a63cced71b74757356e48
b52a8176e85b9c6f13ec012f7fce2ec3df1c8751
2017-11-29 20:03:39 -08:00
Michael Lange 961926880a Acceptance tests for evaluations 2017-11-29 19:46:28 -08:00
Michael Lange 3b184b974b Be clear about what the placment failures number next to task groups is 2017-11-29 16:30:33 -08:00
Michael Lange 3a1652ba83 List placement failures on the job detail page 2017-11-29 16:30:33 -08:00
Michael Lange 1d5b67b9bf Add a table of evaluations to the job detail page 2017-11-29 16:30:33 -08:00
Michael Lange d434a62563 Associate jobs, task groups, and evaluations 2017-11-29 16:30:33 -08:00
Michael Lange 6be9d7e919 Models evaluation data 2017-11-29 16:30:33 -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 ac1855f37c Rename allocation-log to task-log 2017-11-21 11:22:42 -08:00
Michael Lange 1e1a697841 Acceptance tests for task logs 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 82bf67b630 Microscopic refactor for style reasons 2017-11-21 11:22:42 -08:00
Michael Lange 53de626709 Let the log component fill all available height 2017-11-21 11:22:42 -08:00
Michael Lange d394b7e648 Updated styles for the cli-window component 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 fc581163d6 First pass at the logs page
Just verifying the log code works
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 dc5159292a Add link to the task logs page 2017-11-21 11:22:41 -08:00
Michael Lange d7df5712f9 Prefer native fetch 2017-11-21 11:22:41 -08:00
Michael Lange a02f32fc81 Guard against null values 2017-11-21 11:22:41 -08:00
Michael Lange 71bc408f6c Remold the allocation detail and task detail pages
Now that there is a task detail page, some of the content from
the allocation detail page is better suited there.
2017-11-14 11:08:51 -08:00
Michael Lange 9c58c30496 Update allocation detail page to look like job and node 2017-11-14 11:05:29 -08:00
Michael Lange 6a7bbe8afa Create a new task route hierarchy
Drilling into a task from an allocation transitions to the task
heirarchy.
2017-11-14 11:04:40 -08:00
Michael Lange ff69512ff3 Rename nodes routes to client routes 2017-10-27 18:39:04 -07:00
Michael Lange fb2abbe0bc Change app copy to say 'clients' instead of 'nodes' 2017-10-27 18:14:46 -07:00
Michael Lange af870eeb32 Merge pull request #3428 from hashicorp/b-ui-missed-the-deployment-allocs
Add modified and version headers to deployment allocation table
2017-10-25 10:31:20 -07:00
Michael Lange 3503137dd2 Update the existing empty state messages to no longer mention tokens
There is no longer a way that these messages could show and tokens be the problem
2017-10-24 16:41:11 -07:00
Michael Lange a6a34fbba0 Apply route-specific 403 handling to jobs, nodes, and servers 2017-10-24 16:41:11 -07:00
Michael Lange 225817583f Common code for handling 403s in routes 2017-10-24 16:40:27 -07:00
Michael Lange fce7440f34 Stop gracefully handling findAll 403s in the adapter 2017-10-24 16:40:27 -07:00
Michael Lange 53211f9175 Merge pull request #3439 from hashicorp/b-ui-hide-deployments-tab-based-on-type
Don't show the deployments tab for non-service jobs
2017-10-24 16:39:47 -07:00
Michael Lange 37c1b0a707 Merge pull request #3437 from hashicorp/f-ui-sort-server-tags
Sort server tags
2017-10-24 16:39:23 -07:00
Michael Lange 007cafac63 Don't show the deployments tab for non-service jobs
They can't have deployments, so the link makes no sense.
2017-10-24 12:35:29 -07:00
Michael Lange ea58519840 Sort server tags 2017-10-24 12:04:08 -07:00
Michael Lange 7abf621441 On namespace change on a job detail page, redirect to /jobs
And reload jobs for the new namespace.
2017-10-23 17:42:36 -07:00
Michael Lange ea88e59ae0 Make sure to treat the namespace Name as the ID 2017-10-23 17:42:36 -07:00
Michael Lange ff4df58e6d Address a couple asynchronicity issues 2017-10-23 17:42:36 -07:00
Michael Lange eb59f76601 Update all job links 2017-10-23 17:42:36 -07:00
Michael Lange d967a9eb30 Redo the logic around showing namespaces
Don't show namespaces if the only namespace is `default`
2017-10-23 17:42:36 -07:00
Michael Lange afcfba0910 Treat namespace and job name as a composite primary key 2017-10-23 17:42:36 -07:00
Michael Lange 8eeacebe67 Don't scroll to top on transition in tests
It's mega annoying
2017-10-23 17:42:36 -07:00
Michael Lange 19572cfb0f Allow 501s on namespaces because they are necessary for job IDs 2017-10-23 17:42:35 -07:00
Michael Lange a475d59513 Switch from href-to to link-to for QP persistence
See this issue: https://github.com/intercom/ember-href-to/issues/62
2017-10-23 17:42:35 -07:00
Michael Lange a4b7b58dd5 Move the namespace query param up the route hierarchy
This makes it active on all job routes
2017-10-23 17:42:35 -07:00
Michael Lange 899e8fa371 Make sure to include the namespace qp on all job related resources 2017-10-23 17:42:35 -07:00
Michael Lange 8958d1a480 All job requests need to be made with the namespace query param 2017-10-23 17:42:35 -07:00
Michael Lange 3d3617019f Add the new alloc row headers to the deployment allocations table 2017-10-19 17:35:58 -07:00
Michael Lange 5f73c5d392 Handle the undefined TotalTicks case 2017-10-19 17:35:58 -07:00
Michael Lange 44acb58f8c Handle the not a number case 2017-10-19 17:35:58 -07:00
Michael Lange 05c714967a Merge pull request #3423 from hashicorp/b-ui-never-return-null-from-headers
Never return null for adapter headers
2017-10-19 12:23:10 -07:00
Michael Lange 9e37ba846a Merge pull request #3424 from hashicorp/b-ui-job-version-for-node-allocs
Expect JobVersion in one of two places
2017-10-19 12:21:10 -07:00