Commit graph

17747 commits

Author SHA1 Message Date
Drew Bailey ec2fd3329c
update enterprise audit blurb 2020-03-24 19:42:02 -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
Chris Baker 83c60e55ab added documentation for scaling stanza 2020-03-24 22:36:27 +00:00
Mahmood Ali 35aa8d6a3f
Merge pull request #7288 from hashicorp/f-task-restart-policy
Support per-task RestartPolicy
2020-03-24 18:33:26 -04:00
Chris Baker 8e449fa49e document new scaling APIs in the API section 2020-03-24 22:08:34 +00:00
Mahmood Ali a45202399c tests: fix TestAllocations_GarbageCollect 2020-03-24 17:38:59 -04:00
Mahmood Ali 5ed346bf05 tests: update AR task restart policy 2020-03-24 17:00:42 -04:00
Mahmood Ali ceed57b48f per-task restart policy 2020-03-24 17:00:41 -04:00
Chris Baker ffd79583f6
Merge pull request #7474 from hashicorp/f-scaling-changes-from-review
more testing for scaling API
2020-03-24 15:32:10 -05:00
Chris Baker c638c2c352 update RPC scaling endpoint tests to use renamed 'scale' policy disposition 2020-03-24 20:18:12 +00:00
Jasmine Dahilig 1a6236f97c update changelog 0.11 with task dependencies 2020-03-24 12:52:47 -07:00
Chris Baker 5979d6a81e more testing for ScalingPolicy, mainly around parsing and canonicalization for Min/Max 2020-03-24 19:43:50 +00:00
Chris Baker ea050b20c7 test coverage for scaling policy min/max parsing 2020-03-24 19:28:24 +00:00
Lang Martin 8bd0405f33
csi: return an empty result list from plugins & volumes without type, not an error (#7471) 2020-03-24 14:28:28 -04:00
Drew Bailey 2430954a9d
Merge pull request #7429 from hashicorp/docs-audit-logging
docs: audit logging
2020-03-24 14:24:31 -04:00
Drew Bailey 4b74084aba
enterprise index page update 2020-03-24 14:22:37 -04:00
Tim Gross b0dbef3221
CSI: HTTP API docs (#7435)
HTTP API documentation for the `/plugin` and `/volume` endpoints, to
support CSI.
2020-03-24 14:21:45 -04:00
Drew Bailey 2f5e77dba4
Audit logging documentation
docs for audit logging

enterprise only note

enterprise page audit blurb

add audit to sidebar

add general options audit info

fix name for docs-navigation

link to docs

more docs

add audit log entry examples

fix audit link

clean up audit log docs
2020-03-24 14:20:27 -04:00
Chris Baker aa5beafe64 Job.Scale should not result in job update or eval create if args.Count == nil
plus tests
2020-03-24 17:36:06 +00:00
Tim Gross 913da68296
csi: remove client from plugin on client node update (#7462)
Plugins track the client nodes where they are placed. On client
updates, remove the client from the plugin tracking if the client is
no longer running an instance of that controller/node plugin.

Extends the state store tests to ensure deregistration works as
expected and that controllers and nodes are being tracked
independently.
2020-03-24 13:26:31 -04:00
Mahmood Ali c65abcb352 batch update with Mahmood's entries 2020-03-24 13:20:11 -04:00
Chris Baker 6cb8003b9f updated changelog: scaling APIs 2020-03-24 16:20:37 +00:00
Drew Bailey b3d78bfca4
changelog: enterprise audit logging 2020-03-24 12:19:17 -04:00
Tim Gross 1b365d029f
Update CHANGELOG.md
Co-Authored-By: James Rasell <jrasell@users.noreply.github.com>
2020-03-24 12:12:43 -04:00
kim yongbin 4378db612b
UI: decode unicode properly in log page 2020-03-25 01:03:39 +09:00
Chris Baker 9e530e167d
Merge pull request #7409 from hashicorp/scaling-api
Scaling API changes
2020-03-24 11:02:09 -05:00
Buck Doyle 3b1218205f Update changelog for exec UI 2020-03-24 10:57:14 -05:00
Tim Gross 95b2ec060e add changelog entries for CSI 2020-03-24 11:14:51 -04:00
Tim Gross 4ef4a604c2
Documentation for CSI command line and jobspec (#7439)
Includes:

* changes `nomad alloc status` and `nomad node status`
* changes to `volume` block in jobspec
* new `csi_plugin` block in jobspec
* new `nomad volume register/deregister/status` commands
* new `nomad plugin status` command
2020-03-24 11:09:46 -04:00
Chris Baker bc13bfb433 bad conversion between api.ScalingPolicy and structs.ScalingPolicy meant
that we were throwing away .Min if provided
2020-03-24 14:39:06 +00:00
Chris Baker ab4d174319 added new int64ToPtr method to api/util to avoid pulling in other packages 2020-03-24 14:39:05 +00:00
Chris Baker 606c79b320 add acl validation to Scaling.ListPolicies and Scaling.GetPolicy 2020-03-24 14:39:05 +00:00
Chris Baker f6ec5f9624 made count optional during job scaling actions
added ACL protection in Job.Scale
in Job.Scale, only perform a Job.Register if the Count was non-nil
2020-03-24 14:39:05 +00:00
Chris Baker 41b002eecc wip: ACL checking for RPC Job.ScaleStatus 2020-03-24 14:39:05 +00:00
Chris Baker ca49563c94 added new ACL capabilities related to autoscaling:
- read-job-scaling
- scale-job
- list-scaling-policies
- read-scaling-policy

updated the read and right policy dispositions, added the new autoscaler disposition
2020-03-24 14:38:58 +00:00
Lang Martin bd22afd003
csi: volume deregister fails for volumes actively in use (#7445)
* nomad/structs/csi: add InUse to CSIVolume

* nomad/state/state_store: block volume deregistration for in use vols
2020-03-24 10:10:44 -04:00
Tim Gross 599e6f4605
Merge pull request #7450 from hashicorp/b-csi-plugin-health-counts
csi: fix missing health count from volume list stub
2020-03-24 10:07:07 -04:00
Chris Baker 233db5258a changes to Canonicalize, Validate, and api->struct conversion so that tg.Count, tg.Scaling.Min/Max are well-defined with reasonable defaults.
- tg.Count defaults to tg.Scaling.Min if present (falls back on previous default of 1 if Scaling is absent)
- Validate() enforces tg.Scaling.Min <= tg.Count <= tg.Scaling.Max

modification in ApiScalingPolicyToStructs, api.TaskGroup.Validate so that defaults are handled for TaskGroup.Count and
2020-03-24 13:57:17 +00:00
Chris Baker 5373d503c7 scaling api: put api.* objects in agreement with structs.* objects 2020-03-24 13:57:16 +00:00
Chris Baker 00092a6c29 fixed http endpoints for job.register and job.scalestatus 2020-03-24 13:57:16 +00:00
Chris Baker f9876a487e finished Job.ScaleStatus RPC, need to work on http endpoint 2020-03-24 13:57:16 +00:00
Chris Baker 925b59e1d2 wip: scaling status return, almost done 2020-03-24 13:57:15 +00:00
James Rasell f125b5fb2d scaling: ensure min and max int64s are in toplevel of block. 2020-03-24 13:57:15 +00:00
Chris Baker 42270d862c wip: some tests still failing
updating job scaling endpoints to match RFC, cleaning up the API object as well
2020-03-24 13:57:14 +00:00
Chris Baker abc7a52f56 finished refactoring state store, schema, etc 2020-03-24 13:57:14 +00:00
Chris Baker 116aa98ed7 wip: removed some commented junk from scaling poc 2020-03-24 13:57:13 +00:00
Luiz Aoqui 47d35489d6 wip: use testify in job scaling tests 2020-03-24 13:57:13 +00:00
Luiz Aoqui d4b6e4b258 wip: add tests for job scale method 2020-03-24 13:57:12 +00:00
Luiz Aoqui c74c01a643 wip: add scaling policies methods to the client 2020-03-24 13:57:12 +00:00
Chris Baker 3d54f1feba wip: added Enabled to ScalingPolicyListStub, removed JobID from body of scaling request 2020-03-24 13:57:12 +00:00