Commit graph

1055 commits

Author SHA1 Message Date
Michael Lange fd6d5b274f
Merge pull request #6048 from hashicorp/f-ui/alloc-fs-files
UI: Alloc FS: File Viewer
2019-08-19 10:36:28 -07:00
Michael Lange 836e7426b8 Encode characters in file paths to ensure proper URIs 2019-08-14 12:54:11 -07:00
Michael Lange 38fce53936 Prevent a change in height when switching from a dir to a file 2019-08-08 15:41:47 -07:00
Michael Lange 2ed18864df Limit the width of the right page layout column
This was causing elements to flow off the page, since the element was
assuming 100% but also had a 250px margin for the left column.

This had previously been "fixed" by setting overflow-x: auto, but that
resulted in tooltips from being clipped.

This is a better solution to the same problem.
2019-08-08 10:00:48 -07:00
Buck Doyle 58f6e5d286
Fix navigation via clicking recent allocation row (#6087)
This fixes the recent allocation rows to navigate when clicking within them
rather than just on the link, which matches the cursor behaviour.
2019-08-08 09:26:46 -05:00
Michael Lange ee079a1220 Test that the client is contacted correctly, and the server is used as a fallback 2019-08-07 17:35:43 -07:00
Michael Lange ae8913910c Always preload the alloc node so the client can be dialed first 2019-08-07 17:35:15 -07:00
Michael Lange 8cb6a20f8f Include all client fs endpoints in the hosts block 2019-08-07 17:34:41 -07:00
Michael Lange 02c9ab1582 Add additional troublesome characters to the alloc-file name factory 2019-08-07 15:29:57 -07:00
Michael Lange 3dc7dec246 Make a dedicated fs-breadcrumbs component 2019-08-07 15:29:14 -07:00
Michael Lange 2ff4027496 Minor fixes from code review 2019-08-07 15:11:32 -07:00
Michael Lange 992fa8f741 Use a data-uri instead of an image for the image-file-test 2019-08-07 15:08:38 -07:00
Buck Doyle 2bfbc2b41b
Remove transition animation from sort arrows (#6067)
It may be an Ember bug: in some circumstances, the
ember-transitioning-in class was persisting in table
sort links even after the transition completed. This
changes the transition animations to be targeted only
for breadcrumbs and directory links.
2019-08-06 09:55:35 -05:00
Buck Doyle 88b708f188
Add page titles to filesystem routes (#6024) 2019-08-01 11:17:46 -05:00
Michael Lange e84604fcdb Update factory-based fs tests to sort properly 2019-07-31 01:41:00 -07:00
Michael Lange 7780713bfa Remove errant server logging line 2019-07-31 01:40:39 -07:00
Michael Lange 951570e72a fixup-integrate-file-component 2019-07-31 01:39:59 -07:00
Michael Lange 6f519c9037 Add file mocks to every mirage scenario 2019-07-30 17:25:50 -07:00
Michael Lange fb0428fef3 Test coverage for task-file component 2019-07-30 17:25:49 -07:00
Michael Lange fcbd92704a Test coverage for streaming file component 2019-07-30 17:25:48 -07:00
Michael Lange ed9982aa98 Integration tests for the image-file component 2019-07-30 17:25:47 -07:00
Michael Lange e347d76c24 Refactor existing fs tests to use new mirage factories 2019-07-30 17:25:46 -07:00
Michael Lange cae543bdbb Add unsupported file type state 2019-07-30 17:25:45 -07:00
Michael Lange ddd35edb19 Add hollow variation to empty-message 2019-07-30 17:25:44 -07:00
Michael Lange 6325c78b1e cat, stream, and readat mocks for alloc fs 2019-07-30 17:25:44 -07:00
Michael Lange e6d1314254 Use the alloc file factory for the fs stat and fs ls end points 2019-07-30 17:25:43 -07:00
Michael Lange c8977c18ba Mirage factory for file system fixtures 2019-07-30 17:25:42 -07:00
Michael Lange 290d967222 Fix a bug where tail calls for files weren't getting the correct params 2019-07-30 17:25:41 -07:00
Michael Lange c110a4ab62 Integrate the task-file component with the fs explorer pages 2019-07-30 17:25:40 -07:00
Michael Lange 2a3806b4c1 Always escape < and > to avoid inadvertently rendering html 2019-07-30 17:22:54 -07:00
Michael Lange 2f2dca9212 Custom Log instance to deal with API quirks 2019-07-30 17:22:53 -07:00
Michael Lange bd8770d175 Add a plainText mode 2019-07-30 17:22:53 -07:00
Michael Lange f2d31fdf1a Refactored and image support of the task-file component 2019-07-30 17:22:52 -07:00
Michael Lange 29dacd0c2a Markup for the image-file component 2019-07-30 17:22:51 -07:00
Michael Lange 153218183b Address WindowResizable refactor 2019-07-30 17:22:50 -07:00
Michael Lange 3ba05a7eb7 Styles for the image-file component 2019-07-30 17:22:49 -07:00
Michael Lange 30d61fc9fc image-file component for showing an image and image metadata 2019-07-30 17:22:49 -07:00
Michael Lange 5bd9296194 Extract a streaming-file component from the task-log component
The new streaming-file component takes an arbitrary logger component
along with some mode flags and handles things like polling, DOM updates,
and scroll position.
2019-07-30 17:22:48 -07:00
Michael Lange c5ff121981 New task-file component
Based on the task-log component. Commonalities will be refactored.
2019-07-30 17:22:47 -07:00
Michael Lange 4c064a8f72 Tweak log window math 2019-07-30 17:22:46 -07:00
Michael Lange c3b33b8420 Use the stream decode util and never opt to use the plain query param 2019-07-30 17:22:45 -07:00
Michael Lange 862d6f6da6 Move common stream frame decoding to a util 2019-07-30 17:22:44 -07:00
Buck Doyle 34603b8bdf
UI: Add IPv6 bracket-wrapping to network serializer (#6007)
This addresses the issue raised by @pznamensky in #5966.
2019-07-30 16:58:01 -05:00
Buck Doyle 9f3754b46b Merge branch 'master' into f-ui/alloc-fs
# Conflicts:
#	ui/app/templates/allocations/allocation/task/index.hbs
#	ui/app/templates/allocations/allocation/task/logs.hbs
2019-07-26 14:49:36 -05:00
Buck Doyle 5efedb35d1
UI: Add allocation directory sorting (#5914)
When sorting by size, directories are sorted by name, as size
isn’t displayed.

This includes a change to the positioning of sort arrows for all tables,
moving them closer to the text, because in some cases, the arrows
for right-aligned columns were ambiguously positioned.
2019-07-23 15:37:34 -05:00
Buck Doyle b2a4ee17de
UI: Remove unused route (#5925)
This is an extraneous addition from #4612.
2019-07-23 14:48:39 -05:00
Buck Doyle 354b4c830f
UI: Remove ember-native-dom-helpers (#5959)
This also includes migration of some tests to async.
2019-07-23 14:40:32 -05:00
Buck Doyle 90c9b89b5e
UI: Add page titles (#5924)
This uses ember-page-title to add dynamic page titles throughout the
route hierarchy. When there’s more than one region, the current
current region is added before the final entry of “- Nomad”.
2019-07-17 15:02:58 -05:00
Buck Doyle 9322dfc46f
UI: Add copy button for client/allocation UUIDs (#5926)
The button shows a success icon and tooltip on click, and resets
after two seconds.
2019-07-15 12:14:32 -05:00
Buck Doyle 4edd1d78c1
Remove superfluous test attributes (#5927)
I found while working on #5926 that x-icon already adds
assertion-compatible selectors, so these wrappers are
unnecessary.
2019-07-08 10:36:56 -05:00
Michael Lange 1eb689aca9 Merge remote-tracking branch 'origin/master' into f-ui/alloc-fs
* origin/master: (32 commits)
  Added additional test cases and fixed go test case
  update changelog
  Add Mirage-toggling via environment variable (#5899)
  changelog: Add entries for windows fixes
  fifo: Safer access to Conn
  run post-run/post-stop task runner hooks
  Fail alloc if alloc runner prestart hooks fail
  address review comments
  changelog
  Missed one revert of backwards compatibility for node drain
  Improve test cases for detecting content type
  Undo removal of node drain compat changes
  Updated with suggestions.
  fifo: Close connections and cleanup lock handling
  logmon: Add windows compatibility test
  client: defensive against getting stale alloc updates
  Infer content type in alloc fs stat endpoint
  appveyor: Run logmon tests
  fifo: Require that fifos do not exist for create
  vendor: Use dani fork of go-winio
  ...
2019-07-02 16:40:09 -07: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
Buck Doyle 100433b08a
Add Mirage-toggling via environment variable (#5899)
I’m finding myself having to revert my change to this
variable when I switch branches, so this would let me
affect the variable without code changes.
2019-07-02 08:58:43 -05:00
Michael Lange aedeeadebd Account for the search icon within the is-compact modifer 2019-06-27 12:32:26 -07:00
Buck Doyle 0907edf099 Merge branch 'master' into f-ui/alloc-fs 2019-06-27 12:25:07 -05:00
Buck Doyle 4aae981699
Add ember-qunit-nice-errors (#5869)
This shows the entire assertion that’s failing. This is
especially useful in combination with page objects.

For an assertion like this:
assert.equal(PageLayout.flashMessages.length, 1)

The failure displayed normally is just “failed” with the
expected of 1 and the result of undefined. With this addon,
the expected and result remain the same, but “failed” is
replaced with the text of the assertion.

The typical way to address this is to supply the optional
final argument to the assertion function that customises the
failure message. That still works with this addon, but most
of the time it becomes unnecessary.
2019-06-21 14:12:28 -05:00
Michael Lange a29ed35811 Test support and coverage for fs routing 2019-06-20 15:20:15 -07:00
Michael Lange e440edfea4 Some placeholder templates and routes for new feature 2019-06-20 15:20:01 -07:00
Michael Lange 7935527020 Add new menu item to the task subnav 2019-06-20 12:02:25 -07:00
Michael Lange 3e40fcf147 Add new routes to the router 2019-06-20 12:02:06 -07:00
Michael Lange af6daf34d2 Give the allTheThings scenario a better name 2019-06-19 17:18:43 -07:00
Michael Lange 6201003f3f New Mirage scenario for puppeteer script to use 2019-06-19 17:18:40 -07:00
Buck Doyle a2b80bebe6
Update client list to combine statuses (#5789)
The draining, eligibility, and status fields now all show under a combined
state column. Draining takes precedence, then (in)eligibility; if neither of
those is true, the status displays.
2019-06-19 10:11:17 -07:00
Buck Doyle 2d96e37390
Change sort arrow to pass through pointer events (#5833)
Without this, clicking on the sort arrow didn’t change the
sort direction.
2019-06-13 16:14:35 -05:00
Michael Lange b0d6517297 Include the _ prefix separator in both regexes
And include all prefix types in the test data
2019-05-21 14:20:40 -07:00
Michael Lange b330321e44 Use the TwoStepButton page object for integration testing too 2019-05-21 09:24:19 -07:00
Michael Lange c485bc64fb Acceptance testing for allocation lifecycle 2019-05-21 09:24:19 -07:00
Michael Lange d485c040e3 Restart a single task from the task detail page 2019-05-21 09:24:18 -07:00
Michael Lange 416e9895d6 Don't cancel watchers when transitioning to a sub-route 2019-05-21 09:24:18 -07:00
Michael Lange e40a01456b Watch the next allocation on the allocation index page 2019-05-21 09:24:17 -07:00
Michael Lange 8d31474fdc Support task restarting in the allocation adapter 2019-05-21 09:24:17 -07:00
Michael Lange ffadcf5a25 Add stop and restart buttons to the allocation index page 2019-05-21 09:24:16 -07:00
Michael Lange a00bc8befc Allocation methods for stopping and restarting 2019-05-21 09:24:16 -07:00
Michael Lange d3e919a2c8 New with-headroom modifier for titles 2019-05-21 09:24:15 -07:00
Michael Lange 7933a41782 Add cancel on click outside and disabled behaviors to two-step-button 2019-05-21 09:24:14 -07:00
Michael Lange 96a1a5e812 Move addToPath to its own util 2019-05-20 11:52:47 -07:00
Michael Lange 084c4cc95f Standardize on Abort over Cancel 2019-05-20 11:08:16 -07:00
Michael Lange c9220cb929 Replace the adapter cancellation methods with a cancellation token system 2019-05-20 10:29:22 -07:00
Buck Doyle e40197a7a5
Merge pull request #5715 from hashicorp/b-precommit-linting
Restore precommit linting
2019-05-15 16:44:19 -05:00
Buck Doyle 16ba41101b Restore precommit linting
The two pairs of quotes were causing no files to match.
2019-05-15 14:48:16 -05:00
Buck Doyle da65595db0 Change clients/jobs facets to always right-align
This changes the templates so the element that contains
the search box is always present, instead hiding only
the box itself when there’s nothing to search. Keeping
the empty element lets it take up its flexbox space so
the facets will no longer be in the centre.
2019-05-15 13:25:30 -05:00
Michael Lange 14dca3830a Fixed flaky client-detail test
Since one allocation is preempted, the alloc factory creates a new alloc
that wasn't guaranteed to be running. When it is the first alloc row in
the table, then the alloc row detail test fails because non-running
allocs don't have metrics. The fix was to manually update all the alloc
clientStatuses.
2019-05-09 10:26:55 -07:00
Conor Mongey 49afa42af3
Return a htmlSafe string rather than use triple curlies 2019-05-02 21:47:24 +01:00
Conor Mongey 9ab4ef52c0
Converts ANSI terminal codes to HTML in logs 2019-05-02 21:47:23 +01:00
Michael Lange f530c2f5c1 Updated serializer unit tests 2019-04-22 17:20:52 -07:00
Michael Lange 35e34fea8b Test coverage for preemption on the client detail page 2019-04-22 16:40:10 -07:00
Michael Lange b7860a9bca Test coverage for preemption on the allocation detail page 2019-04-22 16:40:09 -07:00
Michael Lange 29ccd8bcc5 Preemption modeling as page objects 2019-04-22 16:40:08 -07:00
Michael Lange 5124dfe30f Integration test for the alloc row icon 2019-04-22 16:40:07 -07:00
Michael Lange 000bfce30f Add preemption properties to Mirage allocation factory 2019-04-22 16:40:07 -07:00
Michael Lange 4c7e350e84 Show which allocations an allocation preempted on the alloc page 2019-04-22 16:40:06 -07:00
Michael Lange 42a4793d9d Show which alloc, if any, preempted an alloc on the alloc detail page 2019-04-22 16:40:05 -07:00
Michael Lange a5a659a98a Preemptions count and filtering on client detail page
Show the count in the allocations table next to the existing total alloc
count badge. Clicking either will filter by all or by preemptions.
2019-04-22 16:40:04 -07:00
Michael Lange 1266567098 Add preempted icon to alloc row 2019-04-22 16:40:04 -07:00
Michael Lange e35139e453 Make sure tooltips show up over the top of the side bar 2019-04-22 16:40:03 -07:00
Michael Lange d12d5f9163 Add wasPreempted bool to allocs 2019-04-22 16:40:02 -07:00
Michael Lange dcc219fe73 Show preemptions on the job plan phase of job submission 2019-04-22 16:40:01 -07:00
Michael Lange cb11f46ecf Data modeling for preemptions 2019-04-22 16:40:00 -07:00
Michael Lange 9358713560 Speed up slow acceptance tests with shallow jobs and generally less models 2019-04-11 20:08:43 -07:00
Michael Lange 6988dc1b5c Introduce the concept of 'shallow' job models in Mirage 2019-04-11 20:08:09 -07:00