Commit Graph

16817 Commits

Author SHA1 Message Date
Michael Lange
4bcd47c0b3 Make outline buttons have a solid white background 2020-01-23 16:34:25 -08:00
Michael Lange
504a7afa03 Modifiers to the two-step-button 2020-01-23 16:34:25 -08:00
Michael Lange
96522e7f53 Drain stop and update and notifications 2020-01-23 16:34:24 -08:00
Michael Lange
fabf956b6e Drain complete notification 2020-01-23 16:34:24 -08:00
Michael Lange
e886361075 Fill out the metrics and time since values in the drain summary 2020-01-23 16:34:23 -08:00
Michael Lange
ad8df16c44 Fill in the drain strategy ribbon values 2020-01-23 16:34:22 -08:00
Michael Lange
4439853737 Stub out all the markup for the new drain strategy view 2020-01-23 16:34:22 -08:00
Michael Lange
2ddc54e7a1 Polish for the drain popover 2020-01-23 16:34:21 -08:00
Michael Lange
da576bc805 Refactor parseDuration to support multi-character units 2020-01-23 16:34:20 -08:00
Michael Lange
6f6b9c2443 Test coverage for the parse duration util 2020-01-23 16:34:20 -08:00
Michael Lange
faffb83d1d Extract the duration parsing into a util 2020-01-23 16:34:19 -08:00
Michael Lange
e47d255b07 Factor out the drain popover and implement its behaviors 2020-01-23 16:34:18 -08:00
Michael Lange
d401a11d0c Add triggerClass support to the popover menu 2020-01-23 16:34:18 -08:00
Michael Lange
7eb71ca439 Let dropdowns assume their full width 2020-01-23 16:34:17 -08:00
Michael Lange
0a8c27d0cf Initial layout of the drain options popover 2020-01-23 16:34:16 -08:00
Michael Lange
030b449463 More form styles as needed for the drain form 2020-01-23 16:34:16 -08:00
Michael Lange
5098b552cf Multiline modifier for tooltips 2020-01-23 16:34:15 -08:00
Michael Lange
b02f05fbda Update the dropdown styles to be more similar to button styles 2020-01-23 16:34:14 -08:00
Michael Lange
de03d82df9 PopoverMenu component 2020-01-23 16:34:14 -08:00
Michael Lange
8788d39987 Eligibility toggling behavior 2020-01-23 16:34:13 -08:00
Michael Lange
44904ba3f1 Update the underlying node model when toggling eligibility in mirage 2020-01-23 16:34:12 -08:00
Michael Lange
09b62eb8cb Add tooltip to the eligibility control 2020-01-23 16:34:11 -08:00
Michael Lange
3ad898762b Reformat the client detail page to use the two-row header design 2020-01-23 16:34:11 -08:00
Michael Lange
4d05f53f1d cancelDrain adapter method 2020-01-23 16:34:10 -08:00
Michael Lange
0b031f0b27 Update drain methods to properly wrap DrainSpec params 2020-01-23 16:34:09 -08:00
Michael Lange
4ddcd6044e drain and forceDrain adapter methods 2020-01-23 16:34:09 -08:00
Michael Lange
1cbbba038c Mock the drain endpoint 2020-01-23 16:34:08 -08:00
Michael Lange
b22047e6e2 Add isMigrating property to the allocation model 2020-01-23 16:34:07 -08:00
Michael Lange
649be7f599 Implement eligibility toggling in the data layer 2020-01-23 16:34:07 -08:00
Michael Lange
a43d1084b1 Mock the eligibility endpoint in mirage 2020-01-23 16:34:06 -08:00
Michael Schurter
3ed31eb949 Merge pull request #6953 from TimHiggison/patch-2
Update configuring-tasks.html.md
2020-01-23 12:15:54 -08:00
Michael Schurter
2b3db3c2f8 Merge pull request #6952 from TimHiggison/patch-1
Update ecs.html.md
2020-01-23 12:15:07 -08:00
Charlie Voiselle
bb5f15f130 Merge pull request #6780 from hashicorp/km.intro-video
website: add ‘intro to nomad’ video to /intro
2020-01-23 11:32:13 -05:00
Tim Gross
074f17a38c e2e: document e2e provisioning process (#6976) 2020-01-22 16:55:17 -05:00
Drew Bailey
15b782c40d Merge pull request #6968 from hashicorp/b-system-sched-plan-ineligible
Return FailedTGAlloc metric instead of no node err
2020-01-22 11:53:07 -05:00
Drew Bailey
abde9f9e3d update changelog 2020-01-22 10:10:15 -05:00
Drew Bailey
264932dae4 Return FailedTGAlloc metric instead of no node err
If an existing system allocation is running and the node its running on
is marked as ineligible, subsequent plan/applys return an RPC error
instead of a more helpful plan result.

This change logs the error, and appends a failedTGAlloc for the
placement.
2020-01-22 10:07:15 -05:00
Tim Gross
2a89e47746 e2e: ensure group script check tests interpolation (#6972)
Fixes a bug introduced in 0aa58b9 where we're writing a test file to
a taskdir-interpolated location, which works when we `alloc exec` but
not in the jobspec for a group script check.

This changeset also makes the test safe to run multiple times by
namespacing the file with the alloc ID, which has the added bonus of
exercising our alloc interpolation code for group script checks.
2020-01-22 09:54:54 -05:00
Tim Gross
0b6b475e7d e2e: update framework to allow deploying Nomad (#6969)
The e2e framework instantiates clients for Nomad/Consul but the
provisioning of the actual Nomad cluster is left to Terraform. The
Terraform provisioning process uses `remote-exec` to deploy specific
versions of Nomad so that we don't have to bake an AMI every time we
want to test a new version. But Terraform treats the resulting
instances as immutable, so we can't use the same tooling to update the
version of Nomad in-place. This is a prerequisite for upgrade testing.

This changeset extends the e2e framework to provide the option of
deploying Nomad (and, in the future, Consul/Vault) with specific
versions to running infrastructure. This initial implementation is
focused on deploying to a single cluster via `ssh` (because that's our
current need), but provides interfaces to hook the test run at the
start of the run, the start of each suite, or the start of a given
test case.

Terraform work includes:
* provides Terraform output that written to JSON used by the framework
  to configure provisioning via `terraform output provisioning`.
* provides Terraform output that can be used by test operators to
  configure their shell via `$(terraform output environment)`
* drops `remote-exec` provisioning steps from Terraform
* makes changes to the deployment scripts to ensure they can be run
  multiple times w/ different versions against the same host.
2020-01-22 08:48:52 -05:00
Buck Doyle
9f86f5a1fc UI: Migrate to Storybook (#6507)
I originally planned to add component documentation, but as this dragged on and I found that JSDoc-to-Markdown sometimes needed hand-tuning, I decided to skip it and focus on replicating what was already present in Freestyle. Adding documentation is a finite task that can be revisited in the future.

My goal was to migrate everything from Freestyle with as few changes as possible. Some adaptations that I found necessary:
• the DelayedArray and DelayedTruth utilities that delay component rendering until slightly after initial render because without them:
  ◦ charts were rendering with zero width
  ◦ the JSON viewer was rendering with empty content
• Storybook in Ember renders components in a routerless/controllerless context by default, so some component stories needed changes:
  ◦ table pagination/sorting stories access to query params, which necessitates some reaching into Ember internals to start routing and dynamically generate a Storybook route/controller to render components into
  ◦ some stories have a faux controller as part of their Storybook context that hosts setInterval-linked dynamic computed properties
• some jiggery-pokery with anchor tags
  ◦ inert href='#' had to become href='javascript:;
  ◦ links that are actually meant to navigate need target='_parent' so they don’t navigate inside the Storybook iframe

Maybe some of these could be addressed by fixes in ember-cli-storybook but I’m wary of digging around in there any more than I already have, as I’ve lost a lot of time to Storybook confusion and frustrations already 😞

The STORYBOOK=true environment variable tweaks some environment settings to get things working as expected in the Storybook context.

I chose to:
• use angle bracket invocation within stories rather than have to migrate them soon after having moved to Storybook
• keep Freestyle around for now for its palette and typeface components
2020-01-21 15:46:32 -06:00
Tim Gross
0aa58b90c3 e2e: use valid jobspec for group check test (#6967)
Group service checks cannot interpolate task fields, because the task
fields are not available at the time the script check hook is created
for the group service. When f31482a was merged this e2e test began
failing because we are now correctly matching the script check ID to
the service ID, which revealed this jobspec was invalid.
2020-01-21 15:54:46 -05:00
Buck Doyle
1e6282582d Update changelog 2020-01-21 09:10:54 -06:00
Buck Doyle
3adb3cd1fe 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
Tim Higgison
302e27e9ab Update configuring-tasks.html.md 2020-01-17 11:41:47 +10:00
Tim Higgison
ae3030e286 Update ecs.html.md 2020-01-17 08:51:09 +10:00
Tim Gross
6c3a29a877 e2e: improve reusability of provisioning scripts (#6942)
This changeset is part of the work to improve our E2E provisioning
process to allow our upgrade tests:

* Move more of the setup into the AMI image creation so it's a little
 more obvious to provisioning config authors which bits are essential
 to deploying a specific version of Nomad.

* Make the service file update do a systemd daemon-reload so that we
  can update an already-running cluster with the same script we use to
  deploy it initially.
2020-01-16 09:29:36 -05:00
Charlie Voiselle
126b865573 Upgrade -> Update 2020-01-13 17:36:49 -05:00
Danielle
2121d57281 cli: add system command and subcmds to interact with system API. (#6924)
cli: add system command and subcmds to interact with system API.
2020-01-13 16:16:08 +01:00
James Rasell
a672753f9f system CLI documentation fixes based on feedback from @angrycub 2020-01-13 15:45:14 +01:00
James Rasell
38adb4734b docs: add documentation for system command. 2020-01-13 11:35:24 +01:00