Commit graph

17892 commits

Author SHA1 Message Date
Seth Hoenig d5ad580d5c structs: fix compatibility between api and nomad/structs proxy definitions
The field names within the structs representing the Connect proxy
definition were not the same (nomad/structs/ vs api/), causing the
values to be lost in translation for the 'nomad job inspect' command.

Since the field names already shipped in v0.11.0 we cannot simply
fix the names. Instead, use the json struct tag on the structs/ structs
to remap the name to match the publicly expose api/ package on json
encoding.

This means existing jobs from v0.11.0 will continue to work, and
the JSON API for job submission will remain backwards compatible.
2020-04-13 15:59:45 -06:00
Seth Hoenig 7e3b16fa90 jobspec: correctly parse proxy fields from jobspec
Before, the proxy stanza did not parse non-object fields
`local_service_port` and `local_service_address` from the
connect `proxy` stanza. This change fixes that.
2020-04-13 15:59:45 -06:00
Chris Baker a37446acaa
documents the scaling block in the JSON Job docs (#7706)
* documents the scaling block in the JSON Job docs

resolves #7656

* add task-specific restart to JSON Job docs

companion to #7603

* [docs] improved and corrected scaling docs

* Update website/pages/api-docs/json-jobs.mdx

Co-Authored-By: Michael Schurter <mschurter@hashicorp.com>

Co-authored-by: Michael Schurter <mschurter@hashicorp.com>
2020-04-13 16:33:49 -05:00
Chris Baker a6e0d17433
update restart documentation (#7603)
* update `restart` documentation

#7288 added support for task-specific `restart` policy. this PR updates the docs to reflect that.

* added an explicit example of task-specific restart policy

* Update website/pages/docs/job-specification/restart.mdx
2020-04-13 16:29:43 -05:00
Drew Bailey f3b168e369
Merge pull request #7663 from hashicorp/b-taskrunner-shutdown_delay
Run task shutdown_delay regardless of service registration
2020-04-13 13:27:24 -04:00
Drew Bailey da11c31e4c
Update CHANGELOG.md 2020-04-13 12:41:13 -04:00
Tim Gross 4e9bd1e1d1
refactor: consolidate private methods for CSI RPC (#7702)
Follow-up for a method missed in the refactor for #7688. The
`volAndPluginLookup` method is only ever called from the server's `CSI`
RPC and never the `ClientCSI` RPC, so move it into that scope.
2020-04-13 10:46:43 -04:00
Tim Gross ab3086a1f4
e2e: testing reliability (#7701)
* pin CSI plugin versions
* ensure failing CSI tests clean up
* allow NOMAD_SHA env var to override makefile
2020-04-13 10:25:24 -04:00
Mahmood Ali e6551455b9
Merge pull request #7693 from greut/bump-testify
api: testify v1.5.1
2020-04-11 09:09:44 -04:00
Yoan Blanc 790df29996
api: testify v1.5.1
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-04-11 13:55:10 +02:00
Tim Gross f37e986b1b
refactor: make nodeForControllerPlugin private to ClientCSI (#7688)
The current design of `ClientCSI` RPC requires that callers in the
server know about the free-standing `nodeForControllerPlugin`
function. This makes it difficult to send `ClientCSI` RPC messages
from subpackages of `nomad` and adds a bunch of boilerplate to every
server-side caller of a controller RPC.

This changeset makes it so that the `ClientCSI` RPCs will populate and
validate the controller's client node ID if it hasn't been passed by
the caller, centralizing the logic of picking and validating
controller targets into the `nomad.ClientCSI` struct.
2020-04-10 16:47:21 -04:00
Seth Hoenig 43804d8ca9
Merge pull request #7684 from hashicorp/b-connect-sidecar-name
connect: enable configuring sidecar_task.name
2020-04-10 10:04:25 -06:00
Seth Hoenig 7ff7d2a288
Merge pull request #7683 from hashicorp/b-no-sidecar-panic
connect: correctly handle missing sidecar_service task stanza
2020-04-10 09:49:59 -06:00
Seth Hoenig 0407eaaf88 connect: extract common task keys 2020-04-10 09:49:19 -06:00
Drew Bailey 591aea1edd
changelog 2020-04-10 11:14:39 -04:00
Drew Bailey 8bfee62b70
Run task shutdown_delay regardless of service registration
task shutdown_delay will currently only run if there are registered
services for the task. This implementation detail isn't explicity stated
anywhere and is defined outside of the service stanza.

This change moves shutdown_delay to be evaluated after prekill hooks are
run, outside of any task runner hooks.

just use time.sleep
2020-04-10 11:06:26 -04:00
Seth Hoenig db865e05d8 connect: enable configuring sidecar_task.name
Before, the submitted jobspec for sidecar_task would pass
through 2 key validation steps - once for the subset specific
to connect sidecar task definitions, and once again for the set
of normal task definition where the task would actually get
unmarshalled.

The valid keys for the normal task definition did not include
"name", which is supposed to be configurable for the sidecar
task. To fix this, just eliminate the double validation step,
and instead pass-in the correct set of keys to validate against
to the one generic task parser.

Fixes #7680
2020-04-09 21:01:16 -06:00
Seth Hoenig 20802da8fd connect: correctly deal with nil sidecar_service task stanza
Before, if the sidecar_service stanza of a connect enabled service
was missing, the job submission would cause a panic in the nomad
agent. Since the panic was happening in the API handler the agent
itself continued running, but this change will the condition more
gracefully.

By fixing the `Copy` method, the API handler now returns the proper
error.

$ nomad job run foo.nomad
Error submitting job: Unexpected response code: 500 (1 error occurred:
	* Task group api validation failed: 2 errors occurred:
	* Missing tasks for task group
	* Task group service validation failed: 1 error occurred:
	* Service[0] count-api validation failed: 1 error occurred:
	* Consul Connect must be native or use a sidecar service
2020-04-09 20:28:17 -06:00
Mahmood Ali 1640f58776
Merge pull request #7676 from hashicorp/vendor-golang-org-x-20200409
Upgrade all golang.org/x packages
2020-04-09 17:18:57 -04:00
Seth Hoenig 58d844f591
Merge pull request #7678 from hashicorp/docs-connect-config-link-404
docs: fix link to envoy proxy documentation on consul site
2020-04-09 13:56:58 -06:00
Seth Hoenig 6cfecc6d03 docs: fix link to envoy proxy documentation on consul site 2020-04-09 13:46:59 -06:00
Mahmood Ali 735a478cc2 Upgrade all golang.org/x packages
Upgrade all golang.org/x packages to pick up fixes and improvements.
Some packages date back to 2018 and so much improvement happened since
then!
2020-04-09 15:23:25 -04:00
Michael Schurter 4bd6372284
Merge pull request #7675 from hashicorp/release-post-0110
Prepare for 0.11.1 release
2020-04-09 12:20:39 -07:00
Michael Schurter 084c6bb94b docs: add #7673 to changelog 2020-04-09 12:18:34 -07:00
Mahmood Ali c64a79f6d1
Merge pull request #7673 from hashicorp/b-http2-cached-connections
vendor: upgrade golang.org/x/net packages
2020-04-09 15:14:40 -04:00
Michael Schurter c763cb3b37 docs: prep changelog for 0.11.1 2020-04-09 12:11:54 -07:00
Michael Schurter f93ee566cf release: bump version to 0.11.1 for development 2020-04-09 12:11:13 -07:00
James Rasell 20fd17c166
Merge pull request #7666 from hashicorp/add-0.11.0-changelog-release-date
changelog: add 0.11.0 release date.
2020-04-09 21:10:15 +02:00
Mahmood Ali 63d15d7e5c vendor: upgrade golang.org/net/...
golang.org/net packages are ancient - upgrading them to pick up
important fixes, e.g. https://go-review.googlesource.com/c/go/+/87298/
2020-04-09 14:57:39 -04:00
Mahmood Ali 1271c4ce96
Merge pull request #7672 from hashicorp/dev-e2e-tweaks-20200409
e2e: add a convenient creation script
2020-04-09 11:30:48 -04:00
Mahmood Ali c8eddb9f6b fixup! e2e: add a convenient creation script 2020-04-09 11:04:26 -04:00
Mahmood Ali 8a4937d9ce e2e: add a convenient creation script
Add a convenience Makefile for creating e2e environment for manual
debugging.
2020-04-09 10:54:30 -04:00
James Rasell cb2719b7e6
changelog: add 0.11.0 release date. 2020-04-09 10:35:17 +02:00
Mahmood Ali 030e40ac5c
Merge pull request #7652 from hashicorp/v-gomod-msgpaack
dev: Use go mod for managing hashicorp/go-msgpack
2020-04-08 14:42:39 -04:00
Mahmood Ali 00ea28b0cd go mod for go-bindata
Use go mod for github.com/hashicorp/go-bindata/go-bindata and
github.com/elazarl/go-bindata-assetfs/go-bindata-assetfs but use
`@master` to pull the latest master.  These packages don't have release
tags so `@master` worksaround it.
2020-04-08 14:30:37 -04:00
Mahmood Ali c3ac0ecf7a
Merge pull request #7650 from hashicorp/deflake-set-server-tests
tests: deflake some SetServer related tests
2020-04-08 14:28:30 -04:00
Michael Schurter 65615768c2
Merge pull request #7658 from hashicorp/docs-0110
docs: update downloads+banner for 0.11.0 GA
2020-04-08 08:58:24 -07:00
Tim Gross 00bcb579e8
dist: make README consistent with service unit (#7648) 2020-04-08 09:32:03 -04:00
Mahmood Ali 3d49a31135
Merge pull request #7662 from hashicorp/docs-external-rkt
docs: move rkt to external drivers
2020-04-08 07:59:26 -04:00
Mahmood Ali 2ef4ce04bb
change tense
Co-Authored-By: Chris Baker <1675087+cgbaker@users.noreply.github.com>
2020-04-08 07:59:11 -04:00
Mahmood Ali fa4a6f7052 docs: move rkt to external drivers 2020-04-07 23:13:16 -04:00
Michael Schurter 5938115e30 docs: update downloads+banner for 0.11.0 GA 2020-04-07 15:14:22 -07:00
Michael Schurter e80b53c3d4
Merge pull request #7654 from hashicorp/docs-beta
docs: update changelog/upgrade for 0.11.0
2020-04-07 11:31:45 -07:00
Michael Schurter 34581070f8 docs: remove 0.11 from scaling docs
Keep beta label for now.
2020-04-07 11:22:13 -07:00
Michael Schurter 75018847ec docs: remove beta marker from lifecycle 2020-04-07 11:22:04 -07:00
Michael Schurter fa9bf43cad
Update website/pages/docs/upgrade/upgrade-specific.mdx
Co-Authored-By: Buck Doyle <buck@hashicorp.com>
2020-04-07 11:08:40 -07:00
Michael Schurter cfecae904b
Update CHANGELOG.md
Co-Authored-By: Drew Bailey <2614075+drewbailey@users.noreply.github.com>
2020-04-07 10:45:18 -07:00
Michael Schurter a338597ec1 docs: update changelog/upgrade for 0.11.0 2020-04-07 10:32:23 -07:00
Tim Gross 457b83a967
build: remove working dir from stack traces (#7653)
Adding `-trimpath` to builds removes the local working directory from
the goroutine stack traces, which makes our builds more reproducible
and doesn't leak information about our local development workstations
or CI environment.
2020-04-07 13:32:07 -04:00
dependabot[bot] 7e6a05370f
build(deps): bump next from 9.3.1 to 9.3.2 in /website (#7571)
Bumps [next](https://github.com/zeit/next.js) from 9.3.1 to 9.3.2.
- [Release notes](https://github.com/zeit/next.js/releases)
- [Commits](https://github.com/zeit/next.js/compare/v9.3.1...v9.3.2)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-04-07 12:31:27 -04:00