Mahmood Ali
23be53a366
Merge pull request #7612 from hashicorp/b-auth-alloc-exec-ws
...
Authenticate alloc/exec websocket requests
2020-04-06 09:24:51 -04:00
Buck Doyle
fbe40a5d36
UI: add handling for exec command-editing keys ( #7601 )
...
This is a minimal implementation that closes #7463 . It doesn’t include
true support for moving around within the command to edit using arrow
keys because it gets too complex when managing wrapping at the edge of
the terminal. Instead, arrow keys are ignored. It also ignores ^A and
^E, which are cursor manipulations that pose similar problems to arrow
keys. It does support ^U, which deletes the entire command.
It also allows a command to be pasted, which was previously unsupported.
This is accomplished by migrating from Xterm.js’s onKey handler to
onData, which is recommended here:
https://github.com/xtermjs/xterm.js/issues/2673#issuecomment-574897733
onData is a higher-level handler that issues events with the final
interpreted data instead of the individual key events. That means the
processing in this PR has changed from inspecting DOM key events to
inspecting their ASCII equivalents, which I’ve extracted into a utility
dictionary for use in tests and implementation.
One consequence of ignoring most control characters is that if you paste
a string that includes a control character, that character will be
stripped. It’s somewhat strange for compound sequences like arrow keys;
if you run copy('/bin/b' + '\x1b[D' + 'ash') in a Javascript console and
paste what’s on the clipboard, you get "/bin/b[Dash". That’s because
the left arrow key, as in that centre portion of the string,
is represented by the escape character and a coded sequence. Stripping
the control character leaves the coded sequence as part of the paste.
That seems like an acceptable compromise vs either ignoring any pasted
string with control characters (confusing UX) or trying to interpret and
strip all such compound control sequences (difficult to be exhaustive).
2020-04-03 12:14:47 -05:00
Mahmood Ali
cec76a4f66
ui: send authentication ws handshake
...
Have the UI send the authentication websocket handshake message.
2020-04-03 11:49:22 -04:00
Buck Doyle
674da96a59
UI: add exec terminal ( #6697 )
...
This connects Xterm.js to a Nomad exec websocket so people
can interact on clients via live sessions. There are buttons on
job, allocation, task group, and task detail pages that open a
popup that lets them edit their shell command and start a
session.
More is to come, as recorded in issues.
2020-03-24 18:22:16 -05:00
Michael Lange
895d74c503
Test coverage for change in resource rows
2020-02-13 17:11:30 -08:00
Michael Lange
41eaec2d9b
Use qunit-dom where applicable
2020-01-23 16:34:35 -08:00
Michael Lange
5e95633481
PopoverMenu integration tests
2020-01-23 16:34:32 -08:00
Michael Lange
3b534bbdf9
Integration tests for the toggle component
2020-01-23 16:34:32 -08:00
Buck Doyle
e525ff99d3
Remove inverse block for list-pagination ( #6523 )
...
As the angle bracket invocation RFC says:
> There is no dedicated syntax for passing an "else" block
> directly. If needed, that can be passed using the named
> blocks syntax.
https://github.com/emberjs/rfcs/blob/master/text/0311-angle-bracket-invocation.md#block
Unfortunately, using a contextual component doesn’t help as
the yield inside that component will still result in content
rendering that would show when the source isn’t empty. So
we decided to change the interface so you have to check
whether the source is empty before using it, which aligns with
how list-table works.
2019-10-24 07:05:43 -05:00
Buck Doyle
9b2fb14e51
UI: Update Ember to 3.12 LTS ( #6419 )
...
This is mostly deprecation fixes and blueprint changes. There
are some dependency updates too; the changes to Ember
Basic Dropdown necessitated changing it to angle bracket
component invocation. The conversion of the rest of the
templates will happen separately.
2019-10-15 13:32:58 -05:00
Buck Doyle
5da134d074
UI: Change Mirage data to be stable in development ( #6389 )
...
This sets a default-but-query-configurable Faker seed in development,
via faker-seed. It also changes uses of Math.random to use Faker’s
randomness so auto-generated data remains stable in development.
2019-10-03 09:13:08 -05:00
Buck Doyle
8950626c55
UI: Update Mirage to 1.1.2 ( #6166 )
2019-09-26 13:47:07 -05:00
Michael Lange
836e7426b8
Encode characters in file paths to ensure proper URIs
2019-08-14 12:54:11 -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
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
c3b33b8420
Use the stream decode util and never opt to use the plain query param
2019-07-30 17:22:45 -07: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
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
Michael Lange
b330321e44
Use the TwoStepButton page object for integration testing too
2019-05-21 09:24:19 -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
5124dfe30f
Integration test for the alloc row icon
2019-04-22 16:40:07 -07:00
Michael Lange
55ea01c1cc
Address test failures
2019-04-10 14:54:35 -07:00
Michael Lange
064f126e14
Remove all andThen and .then usages (except for integration tests)
...
Since a future ember version does way with the need to manually
making runloop runs, I'm holding off on those tests
2019-04-10 14:54:34 -07:00
Michael Lange
c367fb186a
Fix integration tests that had test failures
2019-04-10 14:54:33 -07:00
Michael Lange
c1369c001d
Fix a bunch of snowflake situations the codemod missed
2019-04-10 14:54:31 -07:00
Michael Lange
a356ab5477
Ember QUnit Codemod
2019-04-10 14:54:30 -07:00
Michael Lange
5befd8b85d
Modules codemod + prettier
2019-04-10 14:46:55 -07:00
Michael Lange
40b1857632
Support for the no options case
2019-04-10 10:34:10 -05:00
Michael Lange
fd34f7aa2c
Test coverage for the multi-select-dropdown component
2019-04-10 10:34:10 -05:00
Michael Lange
91d8baa64e
Update tests that check time and date formatting
2019-02-01 09:19:28 -08:00
Michael Lange
6f2e5d49f0
Test coverage for allocation rows
2018-12-13 07:53:17 -08:00
Michael Lange
71a06a6b7f
Conditionally show utilization metrics on alloc and task rows
2018-12-13 07:53:17 -08:00
Michael Lange
9b90683e6b
Use the StatsTracker method of getting alloc stats in alloc row
2018-09-26 10:59:26 -07:00
Michael Lange
18b18da49f
Integration tests for the primary-metric component
2018-09-19 14:15:32 -07:00
Michael Lange
ebe0e97b1a
Merge pull request #4615 from hashicorp/f-ui-restart-stopped-job
...
UI: Restart stopped job
2018-08-30 09:49:14 -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
62e9cf268b
Test coverage for the promote canary feature
2018-08-30 09:38:29 -07:00
Michael Lange
37acc77c9c
Add a confirmation loading state to the two-step-button component
2018-08-28 11:27:00 -07:00
Michael Lange
18d5efce1e
Test coverage for the Start Job behavior
2018-08-28 11:27:00 -07:00
Michael Lange
b5b4a979f9
Test coverage for the job-editor component
...
Most of this was ported over from the existing job run acceptance tests
2018-08-23 09:00:14 -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
8631fecc37
Update tests to handle region switching
2018-08-09 18:22:39 -07:00
Michael Lange
b9fa9a98bc
Test coverage for gutter menu interactions
2018-08-06 11:21:54 -07:00
Michael Lange
e774163360
Tests for the recent allocations table
2018-08-06 11:02:21 -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
9c9bedf53d
Use page-layout for job routes
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
591ddaa93e
Test coverage for summary toggle
2018-07-13 10:26:46 -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
c6e2f1c12e
Remove old evaluations component tests
2018-07-06 17:07:40 -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
2e55afd8ff
Integration tests for the breadcrumbs component
2018-07-06 11:12:12 -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
b6f2b82fad
Merge pull request #4335 from hashicorp/b-ui-safari-log-streaming
...
UI: Use polling instead of streaming for following logs in Safari
2018-05-30 11:36:03 -07:00
Michael Lange
5f9632bee8
Acceptance tests for node driver and node events
2018-05-25 10:15:24 -07:00
Michael Lange
8cb96550c6
The poll logger needs to handle empty frames.
2018-05-24 18:16:42 -07:00
Michael Lange
feec8aa5e7
Integration tests for the various reschedule events timeline permutations
2018-05-04 19:36:55 -07:00
Michael Lange
0c1c66776b
Merge pull request #4195 from hashicorp/b-ui-retry-stats-requests
...
UI: Retry stats requests
2018-04-24 14:13:34 -07:00
Michael Lange
71ca73c19b
Test coverage for alloc stats retrying
2018-04-20 18:11:32 -07:00
Michael Lange
e180e8d74a
Move job-page helpers and repeat stop tests on the service type
2018-04-19 14:22:05 -07:00
Michael Lange
1f3f26b30d
Refactor periodic job tests
2018-04-19 14:22:04 -07:00
Michael Lange
82ca110cd0
New tests for stop job action
2018-04-19 14:22:04 -07:00
Michael Lange
bb61fda409
Test coverage for the two-step-button component
2018-04-19 14:22:04 -07:00
Michael Lange
8541579722
Show an error message when forcing a periodic launch is forbidden
...
This will happen when ACLs allow for reading jobs but not submitting.
2018-03-21 12:12:17 -07:00
Josh Soref
e0169c6a53
spelling: exhausted
2018-03-11 18:05:21 +00: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
553c69cc32
Fix existing tests
2018-03-02 16:21:36 -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
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
6d46d81bd9
Always shutdown the mirage server
2018-02-06 10:53:53 -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
b87f65abfc
Tests for the task groups job page part
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
1b98738a28
Tests for the placement failures job part
2018-02-06 10:53:53 -08:00
Michael Lange
345a954291
Running deployment job page part tests
2018-02-06 10:53:52 -08:00
Michael Lange
395448602f
Job part evaluations test
2018-02-06 10:53:52 -08:00
Michael Lange
d932c79b24
Job part children tests
2018-02-06 10:53:52 -08:00
Michael Lange
3d9ed6e57e
Integration tests for the body job part
2018-02-06 10:53:52 -08: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
c88d75555e
Pluralize test name for consistency (for filtering), inc test
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
45f9214c2c
Use ember-test-selectors for integration tests
2018-01-17 09:03:59 -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
061de462c6
Integration tests for the task-log component
2017-11-21 11:22:42 -08:00
Michael Lange
819fceeac5
Migrate tests over to native helpers as much as possible
2017-09-26 11:59:41 -07:00
Alex Dadgar
e5ec915ac3
sync
2017-09-19 10:08:23 -05:00