Commit graph

767 commits

Author SHA1 Message Date
Michael Lange 2e35687a1d Acceptance tests for job run page 2018-08-16 17:22:58 -07:00
Michael Lange f53fb08144 Rework job parse mirage request to get the job ID out of the payload 2018-08-16 17:22:22 -07:00
Michael Lange 1d3bf6bdea New Page Object component for common error formatting 2018-08-16 10:57:56 -07:00
Michael Lange e634a98102 New PageObject helper for getting and setting CodeMirror values 2018-08-16 10:57:13 -07:00
Michael Lange 9fb8964c00 New test helper for getting the underlying CodeMirror instance from a dom selector 2018-08-16 10:56:37 -07:00
Michael Lange a96c4508d6 Acceptance test for the jobs list page 2018-08-15 17:12:18 -07:00
Michael Lange 75124fdc9e Use the job name as the job id
This has bit me more than once. It's best just to make Mirage consistent
with the API even if it currently means indeterminate job ids
2018-08-15 17:00:08 -07:00
Michael Lange 2239e3c8d7 Support parse, plan, and run endpoints in mirage 2018-08-15 16:59:42 -07:00
Michael Lange f06da96c90 Move the Diff property read out of the template 2018-08-15 16:58:54 -07:00
Michael Lange da46817289 Error messages for job submit 2018-08-15 15:18:38 -07:00
Michael Lange e1e3d2c34d Run job UI and API workflows 2018-08-14 18:26:26 -07:00
Michael Lange 87cbf1ddbe Remove unused solarized theme configuration 2018-08-14 17:37:44 -07:00
Michael Lange de4caacb6d Fix no allocations error message layout for the recent allocations component 2018-08-14 17:37:15 -07:00
Michael Lange 4d656c7a31 Parse and Plan API and UI workflows 2018-08-14 17:29:51 -07:00
Michael Lange b0939bde07 Add breadcrumb to the run job page 2018-08-14 13:06:26 -07:00
Michael Lange c85c2a2932 New job run page and navigation to get there. 2018-08-14 12:54:54 -07:00
Michael Lange fe9d0b8704 New layout helper for associating two elements vertically
By default, blocks have a margin of 1.5em to create a consistent
vertical rhythm. However, sometimes elements need to be associated with
the element above them. In this cases, the gap between elements needs to
be tighter. There are many ways to do this, but this approach asks the
latter content to be marked as associative. The implication is that the
association is with the previous block.
2018-08-14 12:47:28 -07:00
Michael Lange 1cc7aba5d2 Enforce a min-height for the code editor component 2018-08-14 12:46:55 -07:00
Michael Lange f41f814b49 Remove the old json viewer 2018-08-13 17:04:15 -07:00
Michael Lange dd9202769a Delete the removed "depth" aspect of json viewer from the styleguide 2018-08-13 17:04:14 -07:00
Michael Lange c5b54393d0 Theme CodeMirror
Borrowed heavily from Vault
2018-08-13 17:04:14 -07:00
Michael Lange 0746501bc8 Use ivy-codemirror in the JSON Viewer component 2018-08-13 17:04:14 -07:00
Michael Lange 2b4bab875d Introduce ivy-codemirror 2018-08-13 17:03:20 -07:00
Michael Lange 5ccf21fc5d List the new region mirage env var in the environment file 2018-08-13 16:18:53 -07:00
Michael Lange 8ca806f8f8 Use the model hook and setupController hook instead of afterModel
This is a more idiomatic way to handle the QP resetting in the
application controller.
2018-08-13 16:18:06 -07:00
Michael Lange 104e5196a6 Acceptance tests for the region switcher 2018-08-10 12:52:05 -07:00
Michael Lange 3d89cb503b Unit test coverage for adding the region param to requests 2018-08-09 20:27:54 -07:00
Michael Lange 94d321ef4f Properly model regions in Mirage 2018-08-09 19:57:21 -07:00
Michael Lange 68142b3a82 Specify the request type for token self
Without this, the data (query params) get json stringified
2018-08-09 18:22:39 -07:00
Michael Lange 9f3a37f1c2 Simplify the control flow around changing namespaces and regions
The UI will no longer try to redirect to the appropriate namespace or
region if one is found in localStorage. Instead, it will assume that
the lack of query param means the default namespaces or region is
desired.
2018-08-09 18:22:39 -07:00
Michael Lange 8631fecc37 Update tests to handle region switching 2018-08-09 18:22:39 -07:00
Michael Lange 6e2bb48fd5 Handle errors when getting regions or the default regions
This protects against volatility in the server and, more commonly, ACLs
returning forbidden responses.
2018-08-09 18:22:39 -07:00
Michael Lange 3534b09977 Address an issue with certain dependent keys 2018-08-09 18:22:39 -07:00
Michael Lange 3180e57138 Only deal with the region param (in the app and in api calls) when necessary 2018-08-09 18:22:39 -07:00
Michael Lange c4c79c7a1f Get the server's region (aka default region) from the API
The default region shouldn't be used as a qp since no qp means the same
thing.
2018-08-09 18:22:38 -07:00
Michael Lange 0cfeba49d7 Add the region qp to all requests made through the token service 2018-08-09 18:22:38 -07:00
Michael Lange d61fd9ef48 The application route doesn't need to fetch namespaces 2018-08-09 18:22:38 -07:00
Michael Lange 786811b84a Sidestep a transpilation bug.
Default params don't make it into arguments which were being splatted
into the call to super.
2018-08-09 18:22:38 -07:00
Michael Lange ad70fb9cc3 Repeat the new namespace pattern for region 2018-08-09 18:22:38 -07:00
Michael Lange 93f41278b1 Clear up the data flow for namespaces
This is incredibly tricky with query params, since there is a bundle of
timing issues, lifecycle issues, missing features, and all around
gotchas with query params.

This solution has no observers and no instances of the system service
being set from the jobs controller.

The upside to this is no observers, much easier to follow logic, no more
dependent key chain reactions.
2018-08-09 18:22:38 -07:00
Michael Lange 35250117cf Account for the service:system dependency due to region 2018-08-09 18:22:38 -07:00
Michael Lange 85fe4459d0 Remove the gutter menu from the allocations page 2018-08-09 18:22:38 -07:00
Michael Lange a9aa730d2c Never show the menu divider for the first menu item 2018-08-09 18:22:38 -07:00
Michael Lange 2b93a76fa7 Line breadcrumbs up flush with section content 2018-08-09 18:22:38 -07:00
Michael Lange 04b9d80dc0 Make the dropdown ever so slightly off-white 2018-08-09 18:22:38 -07:00
Michael Lange 32d05509ca Move the region switcher out of the secondary nav and into the gutter when the gutter is collapsed 2018-08-09 18:22:37 -07:00
Michael Lange 148495e853 Add region switcher to the global header 2018-08-09 18:22:37 -07:00
Michael Lange 2877b6b351 Only show the region switcher when there are multiple regions 2018-08-09 18:22:37 -07:00
Michael Lange b889c8091e Fetch regions and namespaces in the application route 2018-08-09 18:22:37 -07:00
Michael Lange a430baba4f Harden up the system service for the event of store unloading 2018-08-09 18:22:37 -07:00
Michael Lange fd0d889a38 Reset the system service when unloading the store 2018-08-09 18:22:37 -07:00
Michael Lange 0a3a83fe1d Add the region qp to every api request 2018-08-09 18:22:37 -07:00
Michael Lange 9a9cc35bd0 Styles for the region switcher 2018-08-09 18:22:37 -07:00
Michael Lange 2bb770361b Add three-way region property (query param, service, localStorage) 2018-08-09 18:22:37 -07:00
Michael Lange ebd5123b77 Bare minimum Mirage support for regions 2018-08-09 18:22:37 -07:00
Michael Lange 85ab69cf4e Align the hamburger menu and ensure that it's full area is clickable 2018-08-06 11:21:54 -07:00
Michael Lange 805147947b Remove extra whitespace 2018-08-06 11:21:54 -07:00
Michael Lange 86bafe66cf Make the hamburger menu look more traditional 2018-08-06 11:21:54 -07:00
Michael Lange b9fa9a98bc Test coverage for gutter menu interactions 2018-08-06 11:21:54 -07:00
Michael Lange aec990e41d Make it "feel" mobile with a backdrop that closes the gutter menu on tap 2018-08-06 11:21:54 -07:00
Michael Lange 97220ae5fb Visual treatment for the collapsed gutter menu 2018-08-06 11:21:54 -07:00
Michael Lange cada7d3f70 Treat the nomad logo and the hamburger menu as their own css components 2018-08-06 11:21:53 -07:00
Michael Lange ed4dcbe061 Refactor navbar markup 2018-08-06 11:21:53 -07:00
Michael Lange f2f8c28a91 Style the hamburber menu icon 2018-08-06 11:21:53 -07:00
Michael Lange 737805272a Add open/close functionality to the gutter-menu when it's collapsed 2018-08-06 11:21:53 -07:00
Michael Lange 3f75208f6b Hide the gutter menu at low width resolutions 2018-08-06 11:21:53 -07:00
Michael Lange 3671350fe0 Undo the responsive styles that come with bulma 2018-08-06 11:21:53 -07:00
Michael Lange 54b838d934 Keep the search box around when a search yields no results 2018-08-06 11:02:22 -07:00
Michael Lange 5042896fab Test coverage for the jobs/:job/allocations page 2018-08-06 11:02:22 -07:00
Michael Lange e774163360 Tests for the recent allocations table 2018-08-06 11:02:21 -07:00
Michael Lange 9dcaafa0de Refactor allocations page as a component 2018-08-06 11:02:21 -07:00
Michael Lange 4cc17c7292 Add object spread 2018-08-06 11:02:21 -07:00
Michael Lange 50794a7626 Treat filtering on an async relationship as async 2018-08-06 11:02:21 -07:00
Michael Lange 40826b2b88 Watch allocations on the job index page
Since there are no recent allocations, those alloc need to be watched
2018-08-06 11:02:21 -07:00
Michael Lange 6889a7305d Don't use the boxed-section pattern on pages with one section 2018-08-06 11:01:27 -07:00
Michael Lange e377de0356 Add search to the allocations page 2018-08-06 11:00:24 -07:00
Michael Lange 8eca16774e Link to the allocations page from the recent allocations table 2018-08-06 11:00:23 -07:00
Michael Lange 30b0c9b262 Use the correct allocation row context in various places 2018-08-06 11:00:23 -07:00
Michael Lange 15da9f8250 Use the new taskGroup context for allocation row 2018-08-06 10:59:35 -07:00
Michael Lange f6a3008d08 New dedicated allocations page for jobs 2018-08-06 10:59:35 -07:00
Michael Lange 0ac91ff15b Add recent allocations to relevant job overview pages 2018-08-06 10:59:35 -07:00
Michael Lange 1f639260ad Make sure memory and cpu bars have a consistent size 2018-08-06 10:59:35 -07:00
Michael Lange de80f65efe Remove the name column and add a created column to allocation rows 2018-08-06 10:59:35 -07:00
Michael Lange 578403b193 Add createTime to the allocation model 2018-08-06 10:53:13 -07:00
Michael Lange f0ab8a231f
Merge pull request #4533 from hashicorp/f-ui-refactor-page-chrome
UI: Refactor page chrome
2018-08-06 10:50:03 -07:00
Michael Lange dad24eef86 Test coverage for the expanded feature set of the latest-deployment component 2018-07-30 15:31:31 -07:00
Michael Lange c0966f7cc1 Give the running-deployment component a more appropriate name 2018-07-30 15:31:31 -07:00
Michael Lange 4a2b2fd4f5 Make running-deployment always show the latest deployment 2018-07-30 15:31:31 -07:00
Michael Lange feebea1167 Correctly model the latestDeployment relationship and the inverse 2018-07-30 15:24:31 -07:00
Michael Lange 60a4e3de7a Support the /job/:id/deployment endpoint in mirage 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 9c9bedf53d Use page-layout for job routes 2018-07-30 13:13:52 -07:00
Michael Lange c5388d69cf Use page-layout for allocations routes 2018-07-30 13:13:52 -07:00
Michael Lange 548ec2cf54 Use page-layout for clients routes 2018-07-30 13:13:52 -07:00
Michael Lange 653947d012 Use page-layout for servers routes 2018-07-30 13:13:52 -07:00
Michael Lange 6d189e48e1 Use page-layout for the settings routes 2018-07-30 13:13:52 -07:00
Michael Lange 6da20ef717 New page-layout component that contains both the header and the gutter menu 2018-07-30 13:13:52 -07:00
Michael Lange 393b39d259 Remove all references to onNamespaceChange 2018-07-30 13:13:52 -07:00
Michael Lange 4e22c1018f Redo onNamespaceChange to use the router 2018-07-30 13:13:52 -07:00
Michael Lange ab54583878 Use the JobID as the Version ID for mirage job versions 2018-07-27 16:32:43 -07:00
Michael Lange 0d6881c4ff Update deployment test to reflect new progress-by column 2018-07-17 13:28:29 -07:00
Michael Lange 56a7e644ec Show deployment deadlines everywhere 2018-07-17 11:07:22 -07:00
Michael Lange 9413c719a6
Merge pull request #4507 from hashicorp/b-ui-dist-bar-corners
UI: Fix the missing pixels issue with distribution-bar
2018-07-13 11:04:29 -07:00
Michael Lange 591ddaa93e Test coverage for summary toggle 2018-07-13 10:26:46 -07:00
Michael Lange 77a9e844a1 Make job alloc/children summary collapsable (and persist the choice in localStorage) 2018-07-13 10:26:46 -07:00
Michael Lange c1bc54878d Add an option to start expanded and an onToggle action to list-accordion 2018-07-13 10:26:46 -07:00
Michael Lange 72f4f213d9 Compute the correct number of pixels to shave off of bar width 2018-07-13 10:26:01 -07:00
Michael Lange 79725168b8 Create a single-bar example of distribution-bar in the styleguide 2018-07-13 10:26:01 -07:00
Michael Lange e3b020e201 Fix a bug where the wrong index could be used when some bars had no value 2018-07-13 10:26:01 -07:00
Michael Lange 8154d68b95 Consistently use PageObjects now that they all exist 2018-07-11 12:42:43 -07:00
Michael Lange f74694b0a0 Eslint cleanup 2018-07-11 12:35:39 -07:00
Michael Lange 79cbc4066f Use PageObject for task logs tests 2018-07-11 12:31:37 -07:00
Michael Lange c1a4b68fee Use PageObject for task detail tests 2018-07-11 12:21:26 -07:00
Michael Lange 686ae57310 Use PageObject for namespace tests 2018-07-11 11:59:20 -07:00
Michael Lange 69667ead86 Use PageObjects for application error tests 2018-07-11 11:41:34 -07:00
Michael Lange 5a4de18401 Use PageObject for allocation detail tests 2018-07-11 11:27:23 -07:00
Michael Lange 3fa288f852 Use PageObject for task group detail tests 2018-07-11 10:36:33 -07:00
Michael Lange 266850b3f8 Use PageObject for job versions tests 2018-07-11 09:49:44 -07:00
Michael Lange 2d9aeae23c Use PageObject for job evaluations tests 2018-07-11 09:37:58 -07:00
Michael Lange 9b8f33013d Fix job subnav 2018-07-11 09:34:22 -07:00
Michael Lange 71287286ef Update breadcrumbs on job evaluations 2018-07-11 09:28:19 -07:00
Michael Lange 538eaad27b Use PageObject for job deployments 2018-07-11 09:14:10 -07:00
Michael Lange 2013cd7bb7 Use PageObject for job definition tests 2018-07-10 19:33:22 -07:00
Michael Lange 6611e2b2d6 Adds missing test for evaluations tab 2018-07-10 19:28:54 -07:00
Michael Lange 22f472066a Use PageObjects for job detail tests 2018-07-10 19:20:02 -07:00
Michael Lange 0d45f6f842 Use PageObject for jobs list tests 2018-07-10 18:42:19 -07:00
Michael Lange 87de789994 Use PageObject for client detail tests 2018-07-10 18:13:50 -07:00
Michael Lange 54907f13e8 Use PageObject for clients list tests 2018-07-10 11:29:00 -07:00
Michael Lange 7aae717374 Use PageObject for tokens test 2018-07-10 11:29:00 -07:00
Michael Lange ba934bd60b Fix bad line-endings due to generator 2018-07-10 11:29:00 -07:00
Michael Lange 41b36a623f Use PageObject for server-detail tests 2018-07-10 11:29:00 -07:00
Michael Lange 559ddf4b2b Guard against URI encoding 2018-07-10 11:29:00 -07:00
Michael Lange a873e8f1eb Use PageObject for servers-list tests 2018-07-10 11:28:59 -07:00
Michael Lange 32f1e06eb6 Rename nodes-list-test to clients-list-test to reflect its new state 2018-07-10 11:28:59 -07:00
Michael Lange 06b29f915b Move servers list tests to their own file 2018-07-10 11:28:59 -07:00
Michael Lange 25d1bc2d6a Add the ember-cli-page-object dependency 2018-07-10 11:28:59 -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 22f5bedd58 Codify common mirage scenarios and make it easy to switch between 2018-07-10 10:06:11 -07:00
Michael Lange 9e07ba28df Migrate and add test coverage for evaluations page 2018-07-06 17:15:59 -07:00
Michael Lange c6e2f1c12e Remove old evaluations component tests 2018-07-06 17:07:40 -07:00
Michael Lange fa00dc0748 Remove evaluations from the job overview page 2018-07-06 16:53:13 -07:00
Michael Lange ab54187480 Adds sorting to evaluations 2018-07-06 16:50:41 -07:00
Michael Lange bbb923ea89 Initial evaluations page 2018-07-06 16:41:09 -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 ff5a4ae6df Switch ember-browserify out for ember-auto-import 2018-07-06 13:38:37 -07:00
Michael Lange 2e55afd8ff Integration tests for the breadcrumbs component 2018-07-06 11:12:12 -07:00
Michael Lange 8a9cd74cce Unit tests for the breadcrumbs service 2018-07-06 11:12:12 -07:00
Michael Lange dc1d31eec8 Move the global-header up the route hierarchy
Now that breadcrumbs are a zero config component, the corresponding
template can be moved up to parent routes.
2018-07-06 11:12:12 -07:00
Michael Lange a045db8ce4 Update tests to match new test selectors 2018-07-06 11:12:12 -07:00