Commit graph

13315 commits

Author SHA1 Message Date
Michael Schurter c429e6b0ab client: check if prev alloc is already terminated
This is a defensive fast-path as 7c6aa0be already fixed the deadlock.
2018-11-27 14:06:08 -08:00
Michael Schurter 944ea6d38b client: emit last sent alloc to new listeners
Fixes a deadlock where the allocwatcher would block forever waiting for
an update from a terminal alloc.

Made the broadcaster easier to debug as well.
2018-11-27 14:06:08 -08:00
Michael Schurter 1e4ef139dd
Merge pull request #4883 from hashicorp/f-graceful-shutdown
Support graceful shutdowns in agent
2018-11-27 15:55:15 -06:00
Omar Khawaja 77945c9e4f
New Nomad Vault Integration Guide (#4886)
* add vault integration guide in guides section and move current vault integration content to docs section

* complete guide with image

* fix typos

* rename step 6 and fix typos

* fix typos and awkward phrasing along with links

* fix duplicated step #

* fix typo

* fix links so that pages that pointed to the original vault integration content still point there
2018-11-27 10:28:01 -05:00
Preetha Appan b9a22f8047
Fix panic in test setup when task does not have resources
This affects exec/rawexec drivers
2018-11-26 21:42:45 -06:00
Preetha Appan 125869686b
Fix nil dereference in copy method 2018-11-26 15:53:15 -06:00
Michael Schurter 4f7e6f9464 client: fix races in use of goroutine group
The group utility struct does not support asynchronously launched
goroutines (goroutines-inside-of-goroutines), so switch those uses to a
normal go call.

This means watchNodeUpdates and watchNodeEvents may not be shutdown when
Shutdown() exits. During nomad agent shutdown this does not matter.

During tests this means a test may leak those goroutines or be unable to
know when those goroutines have exited.

Since there's no runtime impact and these goroutines do not affect alloc
state syncing it seems ok to risk leaking them.
2018-11-26 12:52:55 -08:00
Michael Schurter 9f43fb6d29 client: reuse group instead of diy'ing it 2018-11-26 12:52:31 -08:00
Michael Schurter 22771aa19e client/ar: remove useless wait ch from runTasks
Arguably this makes task.WaitCh() useless, but I think exposing a wait
chan from TaskRunners is a generically useful API.
2018-11-26 12:51:18 -08:00
Michael Schurter 2fdd013956 client: document how AR/TR Run methods behave 2018-11-26 12:50:35 -08:00
Omar Khawaja be1c2e6624
Move current telemetry page to docs (#4898)
* move current telemetry page to docs

* fix broken links to telemetry doc
2018-11-26 15:18:57 -05:00
Mahmood Ali 71249a28fc
Merge pull request #4917 from hashicorp/r-docker-plugin-followup-1
Fix linter job
2018-11-25 15:35:51 -05:00
Mahmood Ali 141092e46d Formatting and typo fixes 2018-11-25 11:53:21 -05:00
Mahmood Ali c61d99b525
Merge pull request #4908 from hashicorp/f-docker-opts-storageopt
Add support for docker storage options
2018-11-20 21:08:27 -05:00
Nick Ethier 95362eaa02
Merge pull request #4844 from hashicorp/f-docker-plugin
Docker driver plugin
2018-11-20 20:43:03 -05:00
Nick Ethier 1f3fe02e62
docker: sync access to exit result within a handle 2018-11-20 20:41:32 -05:00
Michael Schurter 2275153875
Apply suggestions from code review
Co-Authored-By: nickethier <ncethier@gmail.com>
2018-11-20 20:33:31 -05:00
Mahmood Ali e2098a9fa3
Merge pull request #4817 from hashicorp/b-vault-client-tweaks
Vault API Client Tweaks
2018-11-20 18:31:49 -05:00
Mahmood Ali 2e6133fd33 nil secrets as recoverable to keep renew attempts 2018-11-20 17:11:55 -05:00
Mahmood Ali 5827438983 Renew past recorded expiry till unrecoverable error
Keep attempting to renew Vault token past locally recorded expiry, just
in case the token was renewed out of band, e.g. on another Nomad server,
until Vault returns an unrecoverable error.
2018-11-20 17:10:55 -05:00
Mahmood Ali 5836a341dd fix typo 2018-11-20 17:10:55 -05:00
Mahmood Ali 93add67e04 round ttl duration for users 2018-11-20 17:10:55 -05:00
Mahmood Ali 4a0544b369 Track renewal expiration properly 2018-11-20 17:10:55 -05:00
Mahmood Ali 79aa934a4b reconcile interface 2018-11-20 17:10:55 -05:00
Mahmood Ali 6efea6d8fc Populate agent-info with vault
Return Vault TTL info to /agent/self API and `nomad agent-info` command.
2018-11-20 17:10:55 -05:00
Mahmood Ali 6034af5084 Avoid explicit precomputed stats field
Seems like the stats field is a micro-optimization that doesn't justify
the complexity it introduces.  Removing it and computing the stats from
revoking field directly.
2018-11-20 17:10:54 -05:00
Mahmood Ali 14842200ec More metrics for Server vault
Add a gauge to track remaining time-to-live, duration of renewal request API call.
2018-11-20 17:10:54 -05:00
Mahmood Ali e1994e59bd address review comments 2018-11-20 17:10:54 -05:00
Mahmood Ali 35179c9655 Wrap Vault API api errors for easing debugging 2018-11-20 17:10:54 -05:00
Mahmood Ali 171b73fde7 Emit metric counters for Vault token and renewal failures 2018-11-20 17:10:54 -05:00
Mahmood Ali 55456fc823 Set a 1s floor for Vault renew operation backoff 2018-11-20 17:10:54 -05:00
Mahmood Ali 5b10da5de6 Set User-Agent header when hitting Vault API 2018-11-20 17:10:54 -05:00
Preetha 789b1e5b6d
Merge pull request #4911 from hashicorp/add-circleci-master
Add CircleCI configuration for website build
2018-11-20 16:01:57 -06:00
Alvin Huang 25601a8a57 remove packer.json since CircleCI builds the site 2018-11-20 16:59:42 -05:00
Alvin Huang 436229fd31 add circleci website build 2018-11-20 16:59:34 -05:00
Mahmood Ali 841c1ec79b document storage opts 2018-11-20 16:11:02 -05:00
Mahmood Ali e9e415f186 Add support for storage opt 2018-11-20 16:11:02 -05:00
Preetha 67283aa133
Merge pull request #4857 from hashicorp/f-affinity-docs
docs for affinity
2018-11-20 14:17:28 -06:00
Preetha 7e1b59119e
Update CHANGELOG.md 2018-11-20 14:16:37 -06:00
Mahmood Ali 7ad8f6c103
Merge pull request #4903 from hashicorp/b-delete-versions-mod-while-iter
Fix a panic related to batch GC
2018-11-20 15:16:02 -05:00
Preetha 93555e7bfa
Merge pull request #4885 from hashicorp/f-update-consultemplate
Vendor update consul template
2018-11-20 14:15:14 -06:00
Michael Schurter 93e897e1f8 changelog: mention #4904 2018-11-20 11:37:09 -08:00
Nick Ethier 3e42d6914e
task_runner: use NodeResources instead of deprecated struct 2018-11-20 13:46:39 -05:00
Nick Ethier 93c0200566
task_runner: use task and alloc copies instead of referencing the original pointer 2018-11-20 13:34:46 -05:00
Mahmood Ali 6281700c0c address review comments 2018-11-20 13:21:39 -05:00
Michael Schurter a3ca72f6de Remove committed test output and gitignore it 2018-11-20 10:16:03 -08:00
Michael Schurter 1f61a925c4
Merge pull request #4904 from hashicorp/b-vault-panic
vault: fix panic by checking for nil secret
2018-11-20 12:09:35 -06:00
Charlie Voiselle 9427285112
Merge pull request #4905 from sevagh/fix-typo
Fix typo in GNUmakefile
2018-11-20 09:25:09 -05:00
Nick Ethier 3ccd359735
docker: unexport new coordinator func 2018-11-19 23:07:07 -05:00
Nick Ethier 8b9b2b476e
docker: add default blocks for driver plugin config schema 2018-11-19 22:59:18 -05:00