Commit graph

621 commits

Author SHA1 Message Date
Yoan Blanc 392e95d496
fixup! vendor: fsouza/go-docker-client v1.6.3
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-22 09:29:49 +01:00
Yoan Blanc 8e744d1877
vendor: fsouza/go-docker-client v1.6.3
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-22 09:25:46 +01:00
Yoan Blanc 9507509e09
fixup! vendor: add golang.org/x/crypto/ed25519
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-21 18:03:09 +01:00
Yoan Blanc 1c395710ea
vendor: add golang.org/x/crypto/ed25519
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-21 18:00:41 +01:00
Yoan Blanc 67692789b7
vendor: vault api and sdk
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-21 17:57:48 +01:00
Yoan Blanc 17b013617c
vendor: opencontainrs/runc v1.0.0-rc7
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-21 15:43:02 +01:00
Yoan Blanc 7c2859ec95
remove all opencontainers/runc
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-21 15:33:30 +01:00
Yoan Blanc 379bb0589e
vendor: update containerd/console
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-20 08:27:10 +01:00
Yoan Blanc f9c7e6e12e
vendors: avoir vendors from docker's vendors
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-19 14:31:58 +01:00
Mahmood Ali 45787e96eb Vendor shirou/gopsutil c files
This change adds Darwin and FreeBSD C code of gopsutil library, that is
needed for these platforms.  `shirou/gopsutil` uses some C code that
isn't in a go package, so don't get vendored automatically.
2020-03-16 09:43:44 -04:00
Yoan Blanc 4593f588c9
bump golang.org/x/sys
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-15 09:53:21 +01:00
Yoan Blanc f85cbddaf1
gopsutils: v2.20.2
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-15 09:36:59 +01:00
Yoan Blanc c8e69a0427
docker: v18.09.9
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-15 08:23:11 +01:00
Yoan Blanc 490369515c
fixup! vendor: vendor.json cleanup
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-14 17:58:24 +01:00
Yoan Blanc 4c9754bcfb
vendor: vendor.json cleanup
Signed-off-by: Yoan Blanc <yoan@dosimple.ch>
2020-03-14 14:38:05 +01:00
Michael Schurter b72b3e765c
Merge pull request #7170 from fredrikhgrelland/consul_template_upgrade
Update consul-template to v0.24.1 and remove deprecated vault grace
2020-03-10 14:15:47 -07:00
Mahmood Ali 88cfe504a0 update grpc
Upgrade grpc to v1.27.1 and protobuf plugins to v1.3.4.
2020-03-03 08:39:54 -05:00
Mahmood Ali d32f0ff079 Update github.com/hashicorp/hcl
hashicorp/hcl library added some better validation for error and illegal
characters.  The diff is primarily improved error reporting.  The
parser.go change includes a case where illegal characters were silently
dropped, but now get reported as invalid characters.
2020-02-28 15:40:01 -05:00
Fredrik Hoem Grelland edb3bd0f3f Update consul-template to v0.24.1 and remove deprecated vault_grace (#7170) 2020-02-23 16:24:53 +01:00
Mahmood Ali 98ad59b1de update rest of consul packages 2020-02-16 16:25:04 -06:00
Mahmood Ali 3dcc65d58d Update consul autopilot dependency 2020-02-16 15:41:43 -06:00
Mahmood Ali f12bf4a629 update raft to latest 2020-02-13 18:56:52 -05:00
Michael Schurter c82b14b0c4 core: add limits to unauthorized connections
Introduce limits to prevent unauthorized users from exhausting all
ephemeral ports on agents:

 * `{https,rpc}_handshake_timeout`
 * `{http,rpc}_max_conns_per_client`

The handshake timeout closes connections that have not completed the TLS
handshake by the deadline (5s by default). For RPC connections this
timeout also separately applies to first byte being read so RPC
connections with TLS enabled have `rpc_handshake_time * 2` as their
deadline.

The connection limit per client prevents a single remote TCP peer from
exhausting all ephemeral ports. The default is 100, but can be lowered
to a minimum of 26. Since streaming RPC connections create a new TCP
connection (until MultiplexV2 is used), 20 connections are reserved for
Raft and non-streaming RPCs to prevent connection exhaustion due to
streaming RPCs.

All limits are configurable and may be disabled by setting them to `0`.

This also includes a fix that closes connections that attempt to create
TLS RPC connections recursively. While only users with valid mTLS
certificates could perform such an operation, it was added as a
safeguard to prevent programming errors before they could cause resource
exhaustion.
2020-01-30 10:38:25 -08:00
Mahmood Ali 8e78fb15bf Update go-discover library
To pick up go.net change so we can cross compile to arm64
2020-01-08 14:49:04 -05:00
Mahmood Ali 0ec9532ab1
Merge pull request #6831 from hashicorp/add_inmemory_certificate
Add option to set certificate in-memory
2019-12-19 08:54:32 -05:00
Drew Bailey 31777c3fdb
update go-hclog to latest release 2019-12-18 12:53:33 -05:00
Michel Vocks 3864d91d03 Add option to set certificate in-memory via SDK 2019-12-16 10:59:27 +01:00
Mahmood Ali a7361612b6
Merge pull request #6556 from hashicorp/c-vendor-multierror-20191025
Update go-multierror library
2019-12-13 11:32:42 -05:00
Mahmood Ali ea30ab9c56 Update go-multierror to 72917a1
To pick up https://github.com/hashicorp/go-multierror/pull/28
2019-12-13 10:13:31 -05:00
Mahmood Ali a7d8513ced vendor: Update go-discover for AWS SDK change
Update go-discover to pull in latest AWS SDK change through its vendored
path, along with other provider changes.
2019-12-03 13:49:52 -05:00
Mahmood Ali 3f15326248 Update AWS SDK library to v1.25.41
Update github.com/aws/aws-sdk-go and github.com/hashicorp/go-discover to
pick up support for EC2 Metadata Instance Service v2 changes.

Follow up to https://github.com/hashicorp/go-discover/pull/128 .
2019-12-03 13:35:03 -05:00
Michael Schurter 98321f9729 vendor: update go-version to include NewSemver 2019-11-19 08:40:18 -08:00
Drew Bailey 37de02c8f7
updates consul template deps to v0.22.1
pin to v0.22.1
2019-11-14 08:58:34 -05:00
Charlie Voiselle 835831a3d8 Added service wrapper code (#6220)
This is the basic code to add the Windows Service Manager hooks to Nomad.

Includes vendoring golang.org/x/sys/windows/svc and added Docs:
* guide for installing as a windows service.
* configuration for logging to file from PR #6429
2019-11-11 15:16:07 -05:00
Drew Bailey da6229d704
update go-hclog dep
remove duplicate lock
2019-11-05 09:51:52 -05:00
Drew Bailey 3b9c33a5f0
new hclog with standardlogger intercept 2019-11-05 09:51:49 -05:00
Drew Bailey 786989dbe3
New monitor pkg for shared monitor functionality
Adds new package that can be used by client and server RPC endpoints to
facilitate monitoring based off of a logger

clean up old code

small comment about write

rm old comment about minsize

rename to Monitor

Removes connection logic from monitor command

Keep connection logic in endpoints, use a channel to send results from
monitoring

use new multisink logger and interfaces

small test for dropped messages

update go-hclogger and update sink/intercept logger interfaces
2019-11-05 09:51:49 -05:00
Drew Bailey 976c43157c
remove log_writer
prefix output with proper spacing

update gzip handler, adjust first byte flow to allow gzip handler bypass

wip, first stab at wiring up rpc endpoint
2019-11-05 09:51:48 -05:00
Drew Bailey 0de94466b2
Display error when remote side ended monitor
multisink logger

remove usage of logwriter
2019-11-05 09:51:48 -05:00
Drew Bailey f60e44afc7
Adds nomad monitor command
Adds nomad monitor command. Like consul monitor, this command allows you
to stream logs from a nomad agent in real time with a a specified log
level

add endpoint tests

Upgrade go-hclog to latest version

The current version of go-hclog pads log prefixes to equal lengths
so info becomes [INFO ] and debug becomes [DEBUG]. This breaks
hashicorp/logutils/level.go Check function. Upgrading to the latest
version removes this padding and fixes log filtering that uses logutils
Check
2019-11-05 09:51:47 -05:00
Drew Bailey b0184e2032
Adds AgentMonitor Endpoint
AgentMonitor is an endpoint to stream logs for a given agent. It allows
callers to pass in a supplied log level, which may be different than the
agents config allowing for temporary debugging with lower log levels.

Pass in logWriter when setting up Agent
2019-11-05 09:51:46 -05:00
Drew Bailey 8c3e1b382a
Update gziphandler to latest version
This version of gziphandler includes a fix that fixes GzipResponseWriter
to implement CloseNotifier

https://github.com/nytimes/gziphandler/pull/63
2019-11-05 09:51:46 -05:00
Mahmood Ali 1f267bad58 Update go-multierror library
Update multierror to latest as of now.  Our version is very old and
dates back to Sep 2015[1].  Here, we aim to pick up a panic fix found in
n https://github.com/hashicorp/go-multierror/pull/11 (Dec 2016).

This is a purely hygiene maintenance change.  I am unaware of any causes
of the panic in our current dependencies.  Though, some private internal
libraries did rely on the "recent" behavior of go-multierror, and I
aimed to update here to ease our adoption of other libraries later.

[1] d30f09973e
2019-10-25 09:25:42 -04:00
Mahmood Ali e1fbe94457 upgrade go-plugin to latest, 8091134
Upgrade go-plugin to latest to pick up Windows fix in
https://github.com/hashicorp/go-plugin/pull/125 .
2019-10-04 13:26:49 -04:00
Mahmood Ali 4c548b9c75 Fix hashicorp/go-msgpack import
Golang 1.13 is pickier with importpaths and aliasing and fails
compilation currently.

Here, for go-msgpack dependency, we use upstream ugorji/go with a single
change
23165f7bc3
.

For consistency and to ease noticing descripency, I made ugorji/go and
hashicorp/go-msgpack reference the same sha.

This is a dependency management update and has no functional change to
product.
2019-09-27 09:08:30 -04:00
Nick Ethier e440ba80f1
ar: refactor network bridge config to use go-cni lib (#6255)
* ar: refactor network bridge config to use go-cni lib

* ar: use eth as the iface prefix for bridged network namespaces

* vendor: update containerd/go-cni package

* ar: update network hook to use TODO contexts when calling configurator

* unnecessary conversion
2019-09-04 16:33:25 -04:00
Lang Martin a1936e3add
Merge pull request #6215 from hashicorp/f-upgrade-go-getter
upgrade go-getter, leave compiled protobuf at version 1.2
2019-08-28 11:01:31 -04:00
Nick Ethier cf014c7fd5
ar: ensure network forwarding is allowed for bridged allocs (#6196)
* ar: ensure network forwarding is allowed in iptables for bridged allocs

* ensure filter rule exists at setup time
2019-08-28 10:51:34 -04:00
Lang Martin 5ae153900f match pinned versions for sub-modules 2019-08-27 12:58:12 -04:00
Lang Martin c79eb24816 govendor fetch github.com/hashicorp/go-getter@f5101da, protobuf 1.2 2019-08-26 17:54:21 -04:00
Mahmood Ali 3791a70aa9
Merge pull request #5676 from hashicorp/f-b-upgrade-ugorji-dep-20190508
Update ugorji/go to latest
2019-08-23 18:29:49 -04:00
Lang Martin f807d9208f govendor fetch github.com/hashicorp/go-getter@6be654f 2019-08-23 15:59:03 -04:00
Chris Baker ee0bfe1926
Merge pull request #6152 from dwagin/master
Bump up github.com/hashicorp/go-syslog for better BSD support
2019-08-20 14:22:03 -04:00
Dmitry edde02c242 updated vendor/vendor.json 2019-08-20 13:34:36 +03:00
Dmitry d313ccaf93 added version github.com/hashicorp/go-syslog 2019-08-20 13:17:08 +03:00
Michael Schurter 7b2d5f601f vendor: update testify to v1.4.0 2019-08-19 15:36:04 -07:00
Dmitry f99f6d7384 Bump up github.com/hashicorp/go-syslog 2019-08-19 12:17:01 +03:00
Tim Gross bf8b27c4c7 update consul-template to latest version
pulls in configuration option for blacklisting template functions from:
https://github.com/hashicorp/consul-template/pull/1243
https://github.com/hashicorp/consul-template/pull/1246

pulls in configuration option for file sandboxing from:
https://github.com/hashicorp/consul-template/pull/1249
https://github.com/hashicorp/consul-template/pull/1254

pulls in vault KVv2 read fixes from:
https://github.com/hashicorp/consul-template/pull/1253
2019-08-12 16:34:48 -04:00
Michael Schurter dbd8badf31
Merge pull request #6009 from hmalphettes/f-update-go-getter
Update go-getter@1.1.0 to fix #3491
2019-08-01 12:59:09 -07:00
Nick Ethier 4433dc8435
vendor: add cni libs 2019-07-31 01:04:07 -04:00
Michael Schurter 5081e3f8a8
vendor: update consul/api@v1.5.1 for connect fields 2019-07-31 01:04:05 -04:00
Nick Ethier ab84630132
plugin/driver: fix tests and add new dep to vendor 2019-07-31 01:03:17 -04:00
hmalphettes bd904f8fe0
Update go-getter to v1.1.0 2019-07-26 06:54:23 +08:00
Mahmood Ali cd6f1d3102 Update consul-template dependency to latest
To pick up the fix in
https://github.com/hashicorp/consul-template/pull/1231 .
2019-07-18 07:32:03 +07:00
Danielle c6872cdf12
Merge pull request #5864 from hashicorp/dani/win-pipe-cleaner
windows: Fix restarts using the raw_exec driver
2019-07-02 13:58:56 +02:00
Danielle Lancashire 0ff27cfc0f
vendor: Use dani fork of go-winio 2019-06-28 13:47:18 +02:00
Chris Baker 0436f70975
Merge branch 'master' into b-5345-prometheus-metric-label-conflict 2019-06-19 12:50:03 -04:00
Mahmood Ali 4c3798c82a
Merge pull request #5844 from hashicorp/b-hcl-parse-unknown-vars
Upgrade hcl2 to validate arrays for unknown values
2019-06-19 10:44:21 -04:00
Mahmood Ali 0c8a1623f3 update logrus and go-windows-terminal-sequences 2019-06-18 14:55:19 -04:00
Mahmood Ali 3dd3195d45 Update github.com/opencontainers/selinux
Or github.com/opencontainers/selinux/go-selinux, a dependency of
libcontainer.
2019-06-18 14:49:11 -04:00
Mahmood Ali 0848f577bb Update libcontainer to 6cc5158
To pick up the fix in https://github.com/opencontainers/runc/pull/2023

Fixes https://github.com/hashicorp/nomad/issues/5836
2019-06-18 14:48:13 -04:00
Chris Baker 50b491564d metrics: upgraded prometheus http client to 0.9.4 to address label conflict in Nomad 0.9.x reported in #5345 2019-06-18 18:34:22 +00:00
Mahmood Ali c1f6c7b457 Upgrade hcl2 to validate arrays for unknown values
This upgrades hcl2 library dependency to pick up
https://github.com/hashicorp/hcl2/pull/113 .

Prior to this change, parsing and decoding array attributes containing
invalid errors (e.g. references to unknown variables) are silently
dropped, with `cty.Unknown` being assigned to the bad element.  Rather
than showing a type/meaningful error from hcl2, we get a very decrypted
error message from msgpack layer trying to handle `cty.unknown`.

This ensures that we propagate diagnostics correctly and report
meaningful errors to users.

Fixes https://github.com/hashicorp/nomad/issues/5694
Fixes https://github.com/hashicorp/nomad/issues/5680
2019-06-17 12:28:14 -04:00
Lang Martin a337488b5c config parse update hcl with support for decoding bool to string 2019-06-10 13:12:38 -04:00
Mahmood Ali 78602461c1 remove github.com/RackSec/srslog dependency
No longer used
2019-05-21 10:56:08 -04:00
Mahmood Ali 7fdb7564e8 vendor github.com/kr/pty 2019-05-10 19:17:14 -04:00
Mahmood Ali cf1f3625b4 Update ugorji/go to latest
Our testing so far indicates that ugorji/go/codec maintains backward
compatiblity with the version we are using now, for purposes of Nomad
serialization.

Using latest ugorji/go allows us to get back to using upstream library,
get get the optimizations benefits in RPC paths (including code
generation optimizations).

ugorji/go introduced two significant changes:
* time binary format in debb8e2d2e.  Setting `h.BasicHandle.TimeNotBuiltin = true` restores old behavior
* ugorji/go started honoring `json` tag as well:

v1.1.4 is the latest but has a bug in handling RawString that's fixed in
d09a80c1e0
.
2019-05-09 19:35:58 -04:00
Mahmood Ali 919827f2df
Merge pull request #5632 from hashicorp/f-nomad-exec-parts-01-base
nomad exec part 1: plumbing and docker driver
2019-05-09 18:09:27 -04:00
Mahmood Ali 050e88c668 vendor github.com/gorilla/websocket 2019-05-09 16:49:08 -04:00
Lang Martin 9f3f11df97
Merge pull request #5601 from hashicorp/b-config-parse-direct-hcl
config parse direct hcl
2019-05-06 12:05:19 -04:00
Mahmood Ali 7b72105802 Update hashicorp/go-msgpack/codec
To pick up the fix in https://github.com/hashicorp/go-msgpack/pull/8 .
2019-05-02 10:59:09 -04:00
Chris Baker a40477a7b8
test case for 5540 (#5590)
* client/metrics: modified metrics to use (updated) client copy of allocation instead of (unupdated) server copy

* updated armon/go-metrics to address race condition in DisplayMetrics
2019-04-30 10:31:35 -04:00
Lang Martin 7e0e9b1ec1 govendor fetch github.com/hashicorp/hcl@99e2f22 2019-04-30 10:30:12 -04:00
Mahmood Ali d314db54d8 vendor docker/docker volume utils 2019-04-25 08:55:21 -04:00
Lang Martin 0c9b9c4815 update vendor/github.com/hashicorp/hcl 2019-04-23 11:56:07 -04:00
Mahmood Ali e0c7063697 vendor upstream opencontainers/runc 2019-04-19 09:49:04 -04:00
Chris Baker 829a972693
vault client test: minor formatting
vendor: using upstream circonus-gometrics
2019-04-10 10:34:10 -05:00
Chris Baker 01c79666f0
vendor: updated consul-template and downstream
consul-template -> v0.20.0
consul/api -> v1.2.1
vault/api -> v1.0.3
go-retryablehttp -> v0.5.2
circonus-gometrics: modified local source for compat with go-retryablehttp
2019-04-10 10:34:10 -05:00
Jeff Mitchell 13dab7dd24
Divest api/ package of deps elsewhere in the nomad repo. (#5488)
* Divest api/ package of deps elsewhere in the nomad repo.

This will allow making api/ a module without then pulling in the
external repo, leading to a package name conflict.

This required some migration of tests to an apitests/ folder (can be
moved anywhere as it has no deps on it). It also required some
duplication of code, notably some test helpers from api/ -> apitests/
and part (but not all) of testutil/ -> api/testutil/.

Once there's more separation and an e.g. sdk/ folder those can be
removed in favor of a dep on the sdk/ folder, provided the sdk/ folder
doesn't depend on api/ or /.

* Also remove consul dep from api/ package

* Fix stupid linters

* Some restructuring
2019-03-29 14:47:40 -04:00
Mahmood Ali bb32ba8784
Support driver config fields being set to nil (#5391)
To pick up https://github.com/hashicorp/hcl2/pull/90
2019-03-05 21:47:06 -05:00
Danielle Tomlinson 3ae58eba84 vendor: Update to latest go-colorable 2019-02-20 13:56:15 +01:00
Mahmood Ali a394cd63f4
CVE-2019-5736: Update libcontainer depedencies (#5334)
* CVE-2019-5736: Update libcontainer depedencies

Libcontainer is vulnerable to a runc container breakout, that was
reported as CVE-2019-5736[1].  Upgrading vendored libcontainer with the fix.

The runc changes are captured in 369b920277 .

[1] https://seclists.org/oss-sec/2019/q1/119
2019-02-19 20:21:18 -05:00
Danielle Tomlinson b59ed9d6c9 vendor: Update to latest hcl2
* Includes fixes for handling null blocks https://github.com/hashicorp/hcl2/pull/87
* Updates go-cty as a newer version is required by hcl2
2019-02-14 13:34:46 +01:00
Michael Schurter 17a8c6639c Install versioned release of codecgen
Gets us one step closer to a reproducible build. Also removes the unused
vendored version.
2019-01-30 08:00:17 -08:00
Mahmood Ali 08db847aa8 drivers/rkt: Remove unused github.com/rkt/rkt 2019-01-23 10:53:49 -05:00
Mahmood Ali a8cd7003d7 fix vendor entry field name 2019-01-18 10:05:21 -05:00
Mahmood Ali 21e193ecf4 Update shirou/gopsutil dep to use non-GPL code
Previously used `github.com/shirou/gopsutil`[1], used some GPL code [2].
This was somewhat unintentional, and was addressed later [3].

Due to being late in the cycle of Nomad release when this is noticed,
and time elapsed since we updated the dependency, we want to be
conservative in our package updates.

As such, we opted to go with forking the repo to use the previously used
version with the GPL removal code commit, done in [4].

[1] 5776ff9c7c
[2] 5776ff9c7c/host/include/smc.c
[3] c95755e4bc
[4] 62d5761ddb
2019-01-17 11:08:30 -05:00
oleksii.shyman 7393e91145 Update go-dockerclient and docker dependencies
- go-dockerclient is updated because of lack of "runtime" API field
 - docker/docker is updated because go-dockerclient depends on docker
 master branch
2019-01-15 11:28:57 -08:00
Mahmood Ali b08f59cdda
Merge pull request #5162 from hashicorp/f-extract-lxc
Extract LXC from nomad
2019-01-09 13:07:05 -05:00
Danielle Tomlinson cca5f41360 vendor: Update go-plugin
This fixes a bug related to shutting down of GRPC plugin interfaces
(more info: https://github.com/hashicorp/go-plugin/pull/88)

This does not yet fix all test cases for subprocess leaking, but is a
useful independant change.
2019-01-08 17:43:20 +01:00
Mahmood Ali 04f787d3fa remove unused go-lxc vendored library 2019-01-08 09:28:21 -05:00
Danielle Tomlinson 734574bc25 deps: Update x/net/context
This allows std context to be used in place of an x/net/context and
unblocks updating to the latest version of go-plugin.
2019-01-08 13:45:10 +01:00
Chris Baker 4109306fff updated serf along with raft 2019-01-04 16:56:26 +00:00
Chris Baker 11c4496a4d updated to latest hashicorp/raft and hashicorp/memberlist to pull
upstream fixes for accept-loop error handling
2019-01-04 14:01:36 +00:00
Alex Dadgar 4c57d2ec4d Add plugin API versioning to plugin loader and plugins 2018-12-18 16:48:00 -08:00
Chris Baker 4bbb8106c1 updated memberlist dependency to latest, which is missing NMD-1173 error 2018-12-07 22:15:05 +00:00
Mahmood Ali 91a67f347d Vendor libcontainer/devices 2018-12-07 09:13:27 -05:00
Mahmood Ali 3f1887db8c Update go-lxc library to handle LXC 3.0 2018-11-27 21:40:43 -05:00
Preetha Appan cba7ed58e0
update consul template 2018-11-15 14:15:12 -06:00
Mahmood Ali 1010213db2 format vendor.json 2018-11-14 20:17:11 -05:00
Mahmood Ali 713c9fe683 Move Stat{Object|Value} to plugins/shared/structs
Moving them as they may be useful for other packages/plugins besides
devices.
2018-11-14 09:01:26 -05:00
Alex Dadgar 204ca8230c Device manager
Introduce a device manager that manages the lifecycle of device plugins
on the client. It fingerprints, collects stats, and forwards Reserve
requests to the correct plugin. The manager, also handles device plugins
failing and validates their output.
2018-11-07 10:43:15 -08:00
Nick Ethier 5dee1141d1 executor v2 (#4656)
* client/executor: refactor client to remove interpolation

* executor: POC libcontainer based executor

* vendor: use hashicorp libcontainer fork

* vendor: add libcontainer/nsenter dep

* executor: updated executor interface to simplify operations

* executor: implement logging pipe

* logmon: new logmon plugin to manage task logs

* driver/executor: use logmon for log management

* executor: fix tests and windows build

* executor: fix logging key names

* executor: fix test failures

* executor: add config field to toggle between using libcontainer and standard executors

* logmon: use discover utility to discover nomad executable

* executor: only call libcontainer-shim on main in linux

* logmon: use seperate path configs for stdout/stderr fifos

* executor: windows fixes

* executor: created reusable pid stats collection utility that can be used in an executor

* executor: update fifo.Open calls

* executor: fix build

* remove executor from docker driver

* executor: Shutdown func to kill and cleanup executor and its children

* executor: move linux specific universal executor funcs to seperate file

* move logmon initialization to a task runner hook

* client: doc fixes and renaming from code review


* taskrunner: use shared config struct for logmon fifo fields

* taskrunner: logmon only needs to be started once per task
2018-10-16 16:53:31 -07:00
Nick Ethier 03422aa529 fifo: add new fifo package for named pipes (#4665)
* fifo: add new fifo package for named pipes
2018-10-16 16:53:30 -07:00
Nick Ethier 66ff12e5f7 Update runc/libcontainer and friends (#4655)
* vendor: bump libcontainer and docker to remove Sirupsen imports

* vendor: fix bad vendoring of archive package

* vendor: fix api changes to cgroups in executor

* vendor: fix docker api changes

* vendor: update github.com/Azure/go-ansiterm to use non capitalized logrus import
2018-10-16 16:53:30 -07:00
oleksii.shyman b4a4b395e3 Introduce nvidia-plugin fingerprinting
- created go-nvml wrapper for fingerprinting
  - added fingerprinting feature to nvidia-plugin
2018-10-03 15:11:56 -07:00
Alex Dadgar d58595b0b9 vendor vault api for backwards compatibility 2018-09-19 10:23:18 -07:00
Alex Dadgar 9dc26699b4 vendor yamux 2018-09-17 13:58:51 -07:00
Alex Dadgar 8b01793d63 vault consts 2018-09-11 12:05:47 -07:00
Alex Dadgar 66d40431f1 remove toplevel vault dependency 2018-09-11 10:19:03 -07:00
Alex Dadgar 50bf6b3e93 Missing vendors 2018-09-10 15:08:34 -07:00
Alex Dadgar 808397eca6 circonus 2018-09-10 15:03:17 -07:00
Alex Dadgar 08286a54dc Update retryablehttp 2018-09-10 15:02:05 -07:00
Alex Dadgar 38268aab24 vendor vault 0.11.1 api 2018-09-10 14:58:31 -07:00
Chelsea Holland Komlo 67f2e6c046 vendor github.com/golang/protobuf/ptypes/empty 2018-08-14 16:20:20 -04:00
Michael Schurter 2a3eac1ce3
Merge pull request #4568 from hashicorp/vendor-fix-blake2b
vendor: fix blake2b on non-amd64 archs
2018-08-13 15:46:32 -07:00
Alex Dadgar c324e98a25 Initial go-plugin 2018-08-12 15:58:39 -07:00
Alex Dadgar 42b432d18d block attr spec 2018-08-10 11:14:12 -07:00
Michael Schurter 080dca7329 vendor: fix blake2b on non-amd64 archs
The blake2b package only includes an asm implementation for amd64. Other
architectures use a generic Go implementation. Unfortunately appengine
is one of those architectures and we explicitly ignore appengine when
vendoring because it is an unsupported platform for Nomad.

Commit 925ec07a4 started ignoring appengine to help trim down the vendor
package. We now need to include appengine again - despite not building
for it - just to avoid accidently breaking other archs we do support.
2018-08-09 10:33:21 -07:00
Alex Dadgar ca121ce110 review feedback 2018-08-07 13:03:21 -07:00
Alex Dadgar 58a85f911e Vendor conflicts
Vendored the tagged version of protobuf.
2018-08-07 13:02:47 -07:00
Chelsea Holland Komlo 7f7e149b80 fix up merge 2018-08-06 11:54:56 -04:00
Chelsea Holland Komlo 9fe77e63ce don't vendor protoc-gen-go 2018-08-06 11:45:00 -04:00
Chelsea Holland Komlo d8fb48a45e vendorfmt 2018-08-06 11:45:00 -04:00
Chelsea Holland Komlo 1b598cbbb2 update grpc vendor dependencies 2018-08-06 11:43:24 -04:00
Michael Schurter 1adf360d40
Merge pull request #4553 from hashicorp/vendor-blake2b
vendor: update blake2b and dependencies
2018-08-03 16:52:27 -07:00
Michael Schurter 69780b9943 vendor: update blake2b and dependencies
All of this just to get something faster than md5... yeesh.
2018-08-02 12:00:51 -07:00
Nick Ethier bba732b2c3
vendor: update github.com/hashicorp/go-hclog 2018-07-31 13:51:30 -04:00
Nick Ethier a3be46b5ee
vendor: remove unused github.com/kardianos/osext 2018-07-05 11:04:12 -04:00
Alvin Huang ca3d767d40 bump go-discover to fix Azure provider vendor.json file 2018-06-20 12:51:52 -04:00
Preetha Appan ca5758741b
Update serf to pick up graceful leave fix 2018-05-10 11:16:24 -05:00
Preetha e7ae6e98d9
Merge pull request #4259 from hashicorp/f-deployment-improvements 2018-05-08 16:37:10 -05:00
Chelsea Holland Komlo 8d3c739832 remove unused dependencies 2018-05-07 16:57:07 -04:00
Chelsea Holland Komlo d215326de7 update go-discover 2018-05-07 16:57:07 -04:00
Chelsea Holland Komlo a6aa2f6bfa vendor go-discover 2018-05-07 16:57:07 -04:00
Alex Dadgar d7e01b2531
vendor testify 2018-05-07 14:50:01 -05:00
Michael Schurter 0996c7da4e vendor: update consul for grpc 2018-05-04 11:08:11 -07:00
Preetha Appan 698a52f4d1 Fix vendor file format 2018-04-25 16:32:36 -07:00
Preetha Appan f2a817fdf4 Update go-getter to pick up file accesstime fix 2018-04-25 16:32:36 -07:00
Charlie Voiselle 4a5f90194c Vendored hashicorp/go-getter
Brings in fix for directory permissions when expanding tarballs
2018-04-10 13:07:35 -05:00
Nick Ethier f6b0473900 vendor: update mitchellh/cli and transitive deps 2018-04-09 18:02:14 -04:00
Nick Ethier a541707528 vendor: pull in go-safetemp 2018-04-09 17:19:26 -04:00
Alex Dadgar 0733ef47e6 vendor go-getter 2018-04-09 13:34:38 -07:00
Alex Dadgar 73d2d8eb1a vendor vault/api to get fix from https://github.com/hashicorp/vault/pull/4258 2018-04-03 15:48:26 -07:00
Alex Dadgar a950db3a95 vendor gosockaddr 2018-03-20 10:39:39 -07:00
Preetha Appan 913317a767
Update yamux library to pick up memory performance optimization 2018-03-14 15:14:52 -05:00
Alex Dadgar 4844317cc2
Merge pull request #3890 from hashicorp/b-heartbeat
Heartbeat improvements and handling failures during establishing leadership
2018-03-12 14:41:59 -07:00
Preetha Appan df0d3358bc
Add missing deps needed for ginkgo 2018-03-12 10:30:56 -05:00
Preetha Appan e0a39c7e40
Initial commit of end to end tests integration tests for rescheduling using ginkgo 2018-03-09 16:24:50 -06:00
Charlie Voiselle 192176b89e Vendored gopsutil to fix partial vendoring 2018-03-05 20:26:23 -05:00
Alvin Huang bb09314d84 pin github.com/stretchr/testify/assert in vendor.json 2018-03-01 18:31:21 -05:00
Michael Ihde 359e1f3497 Update vendor package github.com/shirou/gopsutil/process, resolves #3881 2018-02-26 22:34:44 -05:00
Alex Dadgar 9fee7b2afc Pull in new autopilot 2018-02-21 10:24:32 -08:00
Charlie Voiselle 3ce3aaf0c0 Vendored go-sockaddr and go-sockaddr/template 2018-02-08 09:30:05 -05:00
Kyle Havlovitz c807fc5b86
Merge pull request #3787 from hashicorp/server-health-loop
Move server health loop into autopilot leader actions
2018-01-23 15:22:25 -08:00
Kyle Havlovitz a162b9ce14 Move server health loop into autopilot leader actions 2018-01-23 12:57:02 -08:00
Alex Dadgar 98a03ad689
Merge pull request #3754 from filipochnik/docker-caps
Add an option to add and drop capabilities in the Docker driver
2018-01-23 12:02:50 -08:00
Chelsea Komlo d09cc2a69f
Merge pull request #3492 from hashicorp/f-client-tls-reload
Client/Server TLS dynamic reload
2018-01-23 05:51:32 -05:00
Michael Schurter 2fb69d33c4 Update go-envparse to allow dots in env vars
Includes hashicorp/go-envparse#2
2018-01-22 14:02:39 -08:00
Chelsea Holland Komlo db83b203e7 specified version of raft should be master 2018-01-22 09:02:26 -05:00
Filip Ochnik ab7e104db5 Fix moby package location 2018-01-21 12:35:41 +01:00
Filip Ochnik 4abd269a68
Merge branch 'master' into docker-caps 2018-01-21 12:18:22 +01:00
Filip Ochnik 558812350d Finish implementation of the capabilities whitelist 2018-01-21 12:14:24 +01:00
Chelsea Holland Komlo d86bee57da vendor raft to master branch 2018-01-19 17:00:15 -05:00
Kyle Havlovitz 12ff22ea70 Merge branch 'master' into autopilot 2018-01-18 13:29:25 -08:00
Chelsea Holland Komlo 35466a331a fixing up raft reload tests
close second goroutine in raft-net
2018-01-17 10:29:15 -05:00
Kyle Havlovitz 7b980c42d8 Add raft remove by id endpoint/command 2018-01-16 13:35:32 -08:00
Chelsea Holland Komlo 5f52e8e103 feedback from code review 2018-01-16 11:55:11 -05:00
Chelsea Holland Komlo 214d128eb9 reload raft transport layer
fix up linting
2018-01-08 14:52:28 -05:00
Chelsea Holland Komlo ae7fc4695e fixups from code review
Revert "close raft long-lived connections"

This reverts commit 3ffda28206fcb3d63ad117fd1d27ae6f832b6625.

reload raft connections on changing tls
2018-01-08 09:21:06 -05:00
Chelsea Holland Komlo dfb6a3d9a8 close raft long-lived connections 2018-01-08 09:21:06 -05:00
Alex Dadgar 40f614699d add require 2018-01-04 14:40:11 -08:00
Kyle Havlovitz 60279e328f vendor: add autopilot and flags packages from consul 2017-12-18 14:29:35 -08:00
Preetha Appan 61a7606cd4
Changes vendor.json to one dependency per line 2017-12-12 10:30:36 -06:00
Michael Schurter 1dd5b3822c
Merge pull request #3608 from hashicorp/b-3342-windows-log-leak
Fix bug in log framer only affecting Windows
2017-12-08 10:59:26 -08:00
Alex Dadgar 5c9e4a5321 Update go-getter 2017-12-06 11:16:17 -08:00
Michael Schurter 5c00d10fe2 Update tail, x/sys, and fsnotify deps 2017-11-30 15:52:43 -08:00
Chelsea Holland Komlo 2208964948 Support StopTimeout for Docker tasksw
Update github.com/fsouza/go-dockerclient
2017-11-29 14:33:05 -05:00
Alex Dadgar 69d3bf7392
Merge pull request #3559 from hashicorp/b-metrics
Don't emit metrics for non-running tasks
2017-11-17 10:33:23 -08:00
Michael Schurter 737fb45640
Merge pull request #3551 from hashicorp/b-3419-docker-409-bug
Fix Docker name conflict bug by updating dockerclient
2017-11-16 16:38:54 -08:00
Alex Dadgar 7e509e24ba Vendor in fixed go-metrics 2017-11-16 10:42:49 -08:00
Michael Schurter a3ad2771da Update go-dockerclient to fix #3419
Includes this workaround:
99ba9a9ff4/container.go (L634-L637)
2017-11-14 15:57:09 -08:00
Preetha 8e20aba14a
Merge pull request #3543 from hashicorp/b-consul-template-vendor-update
Vendor update to consul template 0.19.4
2017-11-14 09:35:33 -06:00
Preetha Appan c60b7d45ed Vendor update to consul template 0.19.4 2017-11-13 14:58:36 -06:00
Alex Dadgar 8f6f9e9e49 Clean vendored packages
This PR removes unused packages from the vendor folder.
2017-11-10 13:00:32 -08:00
Alex Dadgar 57cb99ea54 update consul-lib 2017-10-31 09:41:02 -07:00
Alex Dadgar 506f32b303 vendor freeport 2017-10-25 15:49:53 -07:00
preetapan 333baf0c86 Merge pull request #3443 from hashicorp/vendor_update_codegen
Updates vendor directory to get code generation working correctly
2017-10-25 13:00:34 -05:00
Preetha Appan a3e8de3090 Updates vendor directory to get code generation working correctly 2017-10-25 12:15:31 -05:00
Alex Dadgar cb0d0ef009 move to consul freeport implementation 2017-10-23 16:51:40 -07:00