Commit graph

148 commits

Author SHA1 Message Date
Michael Lange 321b5fb6e6 Add isMigrating property to the allocation model 2020-01-23 16:34:07 -08:00
Michael Lange aad8536949 Implement eligibility toggling in the data layer 2020-01-23 16:34:07 -08:00
Buck Doyle 66ab14144a
ui: Change Run Job availability based on ACLs (#5944)
This builds on API changes in #6017 and #6021 to conditionally turn off the
“Run Job” button based on the current token’s capabilities, or the capabilities
of the anonymous policy if no token is present.

If you try to visit the job-run route directly, it redirects to the job list.
2020-01-20 14:57:01 -06:00
Buck Doyle 09067b4eb7
UI: Fix client sorting (#6817)
There are two changes here, and some caveats/commentary:

1. The “State“ table column was actually sorting only by status. The state was not an actual property, just something calculated in each client row, as a product of status, isEligible, and isDraining. This PR adds isDraining as a component of compositeState so it can be used for sorting.

2. The Sortable mixin declares dependent keys that cause the sort to be live-updating, but only if the members of the array change, such as if a new client is added, but not if any of the sortable properties change. This PR adds a SortableFactory function that generates a mixin whose listSorted computed property includes dependent keys for the sortable properties, so the table will live-update if any of the sortable properties change, not just the array members. There’s a warning if you use SortableFactory without dependent keys and via the original Sortable interface, so we can eventually migrate away from it.
2019-12-12 13:06:54 -06:00
Buck Doyle 9a3a6c3f62
UI: Update to Ember 3.8 LTS (#5968) 2019-10-08 13:44:19 -05:00
Buck Doyle d707038429
UI: Fix Connect proxy tag (#6343)
This fixes a race condition in the pseudo-relationship between a
TaskState and a Task that was causing the Consul Connect proxy tag
to sometimes show on the wrong task. There’s no direct Ember Data-style
relationship between a TaskState and its Task; instead, it’s determined
by searching for a Task with the matching name. The related Task was
sometimes stored before everything was ready and not recalculated when
the name became known. This ensures the relationship is accurate if the
TaskState’s name property changes.
2019-09-19 08:09:49 -05:00
Buck Doyle ee0e74186f
UI: Move kind property to task (#6271)
I put this property in the wrong place. 

I’ve found how to fix the mock API in the tests but
they’re failing to pass with headless Chrome only,
so they’re skipped for now.
2019-09-05 13:14:54 -05:00
Buck Doyle b5e5798e54
UI: add Consul Connect features (#6108) 2019-09-04 09:39:56 -05:00
Buck Doyle 49b9dd5b9b
UI: Add creation time to evaluations table (#6050) 2019-08-22 08:11:24 -05:00
Buck Doyle 595eb480ba
UI: Add allocation directory rendering (#5873)
This lets users navigate the allocation filesystem. It doesn’t
support viewing actual files yet.
2019-07-02 16:42:38 -05:00
Michael Lange 8d31474fdc Support task restarting in the allocation adapter 2019-05-21 09:24:17 -07:00
Michael Lange a00bc8befc Allocation methods for stopping and restarting 2019-05-21 09:24:16 -07:00
Michael Lange d12d5f9163 Add wasPreempted bool to allocs 2019-04-22 16:40:02 -07:00
Michael Lange cb11f46ecf Data modeling for preemptions 2019-04-22 16:40:00 -07:00
Michael Lange 4736803a24 ES5 getters codemod 2019-04-10 14:54:36 -07:00
Michael Lange 55ea01c1cc Address test failures 2019-04-10 14:54:35 -07:00
Michael Lange 4464c473e5
Add nodeClass to the node model 2019-04-10 10:34:10 -05:00
Michael Lange 0005b1fca2 Task isRunning is based on both the task state and the allocation state 2018-12-13 07:53:17 -08:00
Michael Lange 076ae5046b Model isRunning based on the client status of the allocation 2018-12-13 07:53:17 -08:00
Michael Lange 8e18903996 Show the correct template for parameterized job children 2018-11-07 21:04:27 -08:00
Michael Lange 5736b71f00 Remove no longer used allocation-stats class 2018-09-26 10:59:26 -07:00
Michael Lange 3c2e7b7dd3
Merge pull request #4616 from hashicorp/f-ui-promote-canary
UI: Promote canary
2018-08-30 09:48:31 -07:00
Michael Lange c4cb0229d6 Support the promote deployment api action 2018-08-24 16:41:47 -07:00
Michael Lange ed763ad14f Handle update job in the model 2018-08-21 16:44:31 -07:00
Michael Lange 3cee992a97 Test coverage for scheduler dry-run addition to the plan page 2018-08-20 16:44:37 -07:00
Michael Lange 9cab82146c Show the scheduler dry-run output on the plan page 2018-08-20 16:44:37 -07:00
Michael Lange 2e35687a1d Acceptance tests for job run page 2018-08-16 17:22:58 -07:00
Michael Lange e1e3d2c34d Run job UI and API workflows 2018-08-14 18:26:26 -07:00
Michael Lange 4d656c7a31 Parse and Plan API and UI workflows 2018-08-14 17:29:51 -07:00
Michael Lange 578403b193 Add createTime to the allocation model 2018-08-06 10:53:13 -07:00
Michael Lange feebea1167 Correctly model the latestDeployment relationship and the inverse 2018-07-30 15:24:31 -07:00
Michael Lange 0e7b8dc7d2 Get the latest deployment for a job by using the appropriate API 2018-07-30 15:24:31 -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 c86183154b Remove hacky code that worked around an Ember Data bug
The bug is fixed in 2.18, so this can be written in the normal
less surprising way.
2018-06-13 15:05:18 -07:00
Michael Lange 73881a388c Show the progress deadline for task groups in a running deployment 2018-06-06 17:35:18 -07:00
Michael Lange a06f6b27f2 Display node drain strategy information on the client detail page 2018-05-30 11:27:21 -07:00
Michael Lange 1303606f99 Add ineligibility to the status light 2018-05-30 11:27:21 -07:00
Michael Lange 078d921dc4 Data modeling for node drain and scheduling eligibility 2018-05-30 11:27:20 -07:00
Michael Lange 65d696f038
Merge pull request #4294 from hashicorp/f-ui-driver-health-checking
UI: Driver health checking
2018-05-25 12:00:11 -07:00
Michael Lange 4afc81a37d Tag node events with the driver when available 2018-05-25 11:48:49 -07:00
Michael Lange 8b09108f9c Display driver attributes without the superfluous driver and driver name section 2018-05-25 10:15:25 -07:00
Michael Lange 6dd0840553 Spread the driver health love throughout job models 2018-05-25 10:15:23 -07:00
Michael Lange 1058ac4ac0 Add driver status accordion section to the client detail page 2018-05-25 10:15:23 -07:00
Michael Lange baab8af975 Show driver summary on the client detail page 2018-05-25 10:15:22 -07:00
Michael Lange d6ebf77b08 Data modeling for node events and node drivers 2018-05-25 10:15:22 -07:00
Michael Lange 861690482f Remodel task-group-deployment-summary to property use PlacedCanaries 2018-05-23 13:12:52 -07:00
Michael Lange 077ee297c0 Reschedule events timeline for the alloc detail page 2018-05-04 19:36:54 -07:00
Michael Lange 825d7c4512 Add WaitUntil and followUpEvaluation 2018-05-04 19:36:54 -07:00
Michael Lange 97db138ce8 Add follow up eval relationship to allocation 2018-05-04 19:36:54 -07:00
Michael Lange c2d860955f Add shortId properties to reschedule events model 2018-05-04 19:36:54 -07:00
Michael Lange ca172e1fc2 Modeling alloc reschedule events 2018-05-04 19:36:54 -07:00
Michael Lange c7639237ba Add new model action for stopping a job 2018-04-19 14:22:04 -07:00
Michael Lange 84141e9d1f Read the task event message from the DisplayMessage prop 2018-03-28 12:52:02 -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 3affa48def Alias the right property 2018-03-20 16:41:18 -07:00
Michael Lange 23cfbb9c27 Ensure the task group is present whenever an allocation row is rendered 2018-03-15 14:03:14 -07:00
Michael Lange ab69c2806c Use the job-summary information available from the jobs list 2018-03-15 10:28:34 -07:00
Michael Lange 23e7a7924f Only show the placement failures section if there is a blocked eval 2018-03-08 14:14:55 -08: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 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 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 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 abcfda9911 Add ability to force a periodic job launch 2018-02-06 10:53:51 -08:00
Michael Lange 4f8a59a56c Bring payload in from the job api response 2018-02-06 10:53:50 -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 c3fe28219b Model the parent/child relationship in jobs 2018-02-05 20:13:58 -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
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 c15b54a299 Don't dot twice after an @each 2018-01-17 09:02:03 -08:00
Michael Lange 54cb23c577 Use ModifyTime instead of ModifyIndex 2017-12-06 10:17: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 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 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 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 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 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 ea88e59ae0 Make sure to treat the namespace Name as the ID 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 5f73c5d392 Handle the undefined TotalTicks case 2017-10-19 17:35:58 -07:00
Michael Lange b693ff1886 Don't rely on CpuStats.Percent
Just do the math client-side with TotalTicks and Reserved
2017-10-19 10:44:52 -07:00
Michael Lange 189403c5b9 Add the acl token as a header to client requests 2017-10-18 19:48:17 -07:00
Michael Lange 8c6c54ff07 Add job version to allocation tables 2017-10-18 12:29:33 -07:00
Michael Lange a10466a68d Sort allocation by status type, not simply alphanumeric 2017-10-18 11:45:01 -07:00
Michael Lange 726f3a75e9 Fix the memory usage math
1. Use RSS, not Cache (shoulda read the source)
2. Convert bytes to megabytes before doing division
2017-10-17 10:17:42 -07:00
Michael Lange 040e3fec10 Data modeling for tokens and policies 2017-10-16 13:27:51 -07:00
Michael Lange ef55cb910f Make namespace a relationship of job 2017-10-11 13:45:03 -07:00
Michael Lange 4481e04d43 New namespaces model 2017-10-11 13:45:03 -07:00
Michael Lange 4e606e435d Fixes issue regarding allocation rows
Sometimes the job name and/or task group name wouldn't show up.
2017-10-05 18:01:19 -07:00
Alex Dadgar e5ec915ac3 sync 2017-09-19 10:08:23 -05:00