Commit Graph

16263 Commits

Author SHA1 Message Date
Mahmood Ali 29c8fe1ba1
fix typo
Co-Authored-By: Danielle <dani@hashicorp.com>
2019-09-06 10:05:02 -04:00
Mahmood Ali 01f42053e4 dev: avoid codecgen code in downstream projects
This is an attempt to ease dependency management for external driver
plugins, by avoiding requiring them to compile ugorji/go generated
files.  Plugin developers reported some pain with the brittleness of
ugorji/go dependency in particular, specially when using go mod, the
default go mod manager in golang 1.13.

Context
--------

Nomad uses msgpack to persist and serialize internal structs, using
ugorji/go library.  As an optimization, we use ugorji/go code generation
to speedup process and aovid the relection-based slow path.

We commit these generated files in repository when we cut and tag the
release to ease reproducability and debugging old releases.  Thus,
downstream projects that depend on release tag, indirectly depends on
ugorji/go generated code.

Sadly, the generated code is brittle and specific to the version of
ugorji/go being used.  When go mod picks another version of ugorji/go
then nomad (go mod by default uses release according to semver),
downstream projects face compilation errors.

Interestingly, downstream projects don't commonly serialize nomad
internal structs.  Drivers and device plugins use grpc instead of
msgpack for the most part.  In the few cases where they use msgpag (e.g.
decoding task config), they do without codegen path as they run on
driver specific structs not the nomad internal structs.  Also, the
ugorji/go serialization through reflection is generally backward
compatible (mod some ugorji/go regression bugs that get introduced every
now and then :( ).

Proposal
---------

The proposal here is to keep committing ugorji/go codec generated files
for releases but to use a go tag for them.

All nomad development through the makefile, including releasing, CI and
dev flow, has the tag enabled.

Downstream plugin projects, by default, will skip these files and life
proceed as normal for them.

The downside is that nomad developers who use generated code but avoid
using make must start passing additional go tag argument.  Though this
is not a blessed configuration.
2019-09-06 09:22:00 -04:00
Danielle c2b64483ce
Merge pull request #6288 from hashicorp/volume-acl-docs
docs: Add host volume acl docs
2019-09-06 15:04:07 +02:00
Danielle 25b7d58b37
Apply suggestions from code review
acl_docs: Stylistic improvements

Co-Authored-By: Tim Gross <tim@0x74696d.com>
2019-09-06 15:03:38 +02:00
Luiz Aoqui b4d8312a8d
Merge pull request #6289 from hashicorp/docs-fix-host-volume-path
Fix host volume path
2019-09-06 09:02:38 -04:00
Luiz Aoqui 17ba1e9e20 fix host volume path 2019-09-06 08:44:57 -04:00
Danielle Lancashire 4b6e03b8e9
docs: Add host volume acl docs 2019-09-06 14:02:19 +02:00
Michael Schurter b460271de5
Merge pull request #6286 from hashicorp/b-inplaceupdate-bugfix
Fix inplace updates bug with group level networks
2019-09-05 17:01:30 -07:00
Preetha Appan 9accf60805
update comment 2019-09-05 18:43:30 -05:00
Preetha Appan d21c708c4a
Fix inplace updates bug with group level networks
During inplace updates, we should be using network information
from the previous allocation being updated.
2019-09-05 18:37:24 -05:00
Jasmine Dahilig 3d9d4d0522
upgrade guide for 0.10.0 (#6266) 2019-09-05 13:27:37 -07:00
Buck Doyle aa40833194
Fix documentation typo (#6285) 2019-09-05 15:04:52 -05:00
Buck Doyle 4ca5662895
UI: Remove Connect proxy tag tests again (#6284)
This semi-reverts #6275, as the tests are intermittently
failing in CI.
2019-09-05 14:34:47 -05:00
Michael Schurter 2ce1b28b33
Merge pull request #6279 from hashicorp/f-connect-docs
Initial placeholder connect docs
2019-09-05 12:29:44 -07:00
Michael Schurter 31eb8375e5
Merge pull request #6282 from hashicorp/f-connect-dev-path
connect: check if consul is on PATH
2019-09-05 12:25:23 -07:00
Tim Gross 7551baae30
add CNI plugins to Vagrant install (#6280) 2019-09-05 15:10:15 -04:00
Buck Doyle dc43dbdad2
UI: Restore Connect proxy tag tests (#6275)
These are the tests skipped in #6271.
2019-09-05 14:09:32 -05:00
Michael Schurter 457684e34e connect: check if consul is on PATH
Only in -dev-connect mode for now since its valid to install Consul
after Nomad has started in production.
2019-09-05 12:05:42 -07:00
Jasmine Dahilig f152738545
Update CHANGELOG.md 2019-09-05 11:56:12 -07:00
Jasmine Dahilig a5b0fd3f45
update namespace envvar entry in changelog 2019-09-05 11:54:42 -07:00
Jasmine Dahilig 97fd81ef68 fix changelog message 2019-09-05 11:42:07 -07:00
Preetha Appan 1cb045100d
Add docs for new kind field 2019-09-05 13:31:05 -05:00
Jasmine Dahilig e1c73cdab5
add validation for job_gc_interval (#6277) 2019-09-05 11:20:46 -07:00
Tim Gross 6e987f8455 add CNI plugins to Vagrant install 2019-09-05 14:20:17 -04:00
Buck Doyle ee0e74186f
UI: Move kind property to task (#6271)
I put this property in the wrong place. 

I’ve found how to fix the mock API in the tests but
they’re failing to pass with headless Chrome only,
so they’re skipped for now.
2019-09-05 13:14:54 -05:00
Preetha Appan 6ed9e07941
Initial placeholder connect docs 2019-09-05 13:08:31 -05:00
Michael Schurter 45a5e15cb5
Merge pull request #6278 from hashicorp/docs-changelog-label
changelog: command/run -> cli prefix
2019-09-05 11:07:11 -07:00
Michael Schurter 77b036b6f9 changelog: command/run -> cli prefix 2019-09-05 11:04:41 -07:00
Mahmood Ali 1bef8e1202
update changelog for 0.10 (#6270)
update changelog for 0.10
2019-09-05 13:59:05 -04:00
Charlie Voiselle 967c80005d docs: Add Persistent Workload using Host Volumes guide (#6263)
* Added Persistent Workload guide using Host Volumes

* Update website/source/guides/stateful-workloads/stateful-workloads.html.md

Co-Authored-By: Danielle <dani@hashicorp.com>

* fix client config and job spec formatting

* fix typo in description

* fix navigation for both stateful workloads guides

* show output from nomad node status to verify host volumes

* Add value prop info; info about HA

From feedback, added more information about the value proposition for
host volumes (h/t @rkettelerij), and corrected an orphaned bit from
the original guide this one was created from.
2019-09-05 12:33:10 -04:00
Omar Khawaja 43363f9337
Consul connect guide update (#6268)
* formatting paragraphs

* remove reference to consul 1.6-beta and update nomad agent command

* remove tech preview status and update limitations

* remove beta tag in navigation

* add screenshot of count dashboard

* update example summary and remove redis references

* capitalize Consul

* minor corrections

* hcl formatting
* demo is on localhost not host ip
* clarify consul on PATH

* mention variable interpolation limitation
2019-09-05 12:29:47 -04:00
Buck Doyle 24b0be1625 Restore local headless testing
I’ve been unable to use ember test without --server for a
while. This brings in the fix from ember-cli/ember-cli#8774
2019-09-05 11:24:05 -05:00
Omar Khawaja 77464b700b fix typo 2019-09-05 12:20:34 -04:00
Michael Schurter 1a69911237
Merge pull request #6211 from hashicorp/f-host-volume-docs
docs: Initial documentation for volume(_mount)
2019-09-05 09:17:40 -07:00
Omar Khawaja 6f50f0eb6f change localhost to host ip 2019-09-05 12:08:55 -04:00
Michael Schurter a59e8ca4a6 mention variable interpolation limitation 2019-09-05 08:58:24 -07:00
Michael Schurter 58f13da372 minor corrections
* hcl formatting
* demo is on localhost not host ip
* clarify consul on PATH
2019-09-05 08:56:39 -07:00
Tim Gross 8ce201854a
client: recreate script checks on Update (#6265)
Splitting the immutable and mutable components of the scriptCheck led
to a bug where the environment interpolation wasn't being incorporated
into the check's ID, which caused the UpdateTTL to update for a check
ID that Consul didn't have (because our Consul client creates the ID
from the structs.ServiceCheck each time we update).

Task group services don't have access to a task environment at
creation, so their checks get registered before the check can be
interpolated. Use the original check ID so they can be updated.
2019-09-05 11:43:23 -04:00
Jasmine Dahilig f88d4cf0ac update changelog 2019-09-05 08:31:09 -07:00
Omar Khawaja e866e92ff4 capitalize Consul 2019-09-04 20:56:38 -04:00
Omar Khawaja deb2a250f0 update example summary and remove redis references 2019-09-04 19:58:47 -04:00
Buck Doyle ec65c8e260
Add handling for not-running task filesystem query (#6267) 2019-09-04 17:38:26 -05:00
Jasmine Dahilig 7078d1e65e update changelog 2019-09-04 15:17:42 -07:00
Omar Khawaja ea7eb660ae add screenshot of count dashboard 2019-09-04 18:00:49 -04:00
Omar Khawaja f8e010515b remove beta tag in navigation 2019-09-04 17:48:23 -04:00
Omar Khawaja 1e904a28a9 remove tech preview status and update limitations 2019-09-04 17:46:02 -04:00
Buck Doyle 61ae2edac8 Add allocation filesystem UI to changelog 2019-09-04 16:35:42 -05:00
Michael Schurter ee06c36345
Merge pull request #6254 from hashicorp/test-connect-e2e-demo
e2e: test demo job for connect
2019-09-04 14:33:26 -07:00
Omar Khawaja a98fe3c9ca remove reference to consul 1.6-beta and update nomad agent command 2019-09-04 17:30:45 -04:00
Omar Khawaja 4596f00d40 formatting paragraphs 2019-09-04 17:25:06 -04:00