Danielle Tomlinson
da48a7eab3
client: Move fingerprint structs to pkg
...
This removes a cyclical dependency when importing client/structs from
dependencies of the plugin_loader, specifically, drivers. Due to
client/config also depending on the plugin_loader.
It also better reflects the ownership of fingerprint structs, as they
are fairly internal to the fingerprint manager.
2018-12-01 17:10:39 +01:00
Mahmood Ali
8261f3ebf7
Update changelog ( #4942 )
...
Batch update for the PRs I recently merged.
2018-12-01 07:46:34 -05:00
Omar Khawaja
acae110c7b
remove redirects for vault-integration docs ( #4943 )
2018-11-30 13:14:57 -05:00
Danielle Tomlinson
b8b4ce2fa6
Merge pull request #4936 from hashicorp/f-legacy-refactor
...
Refactor and repackage client/driver
2018-11-30 13:38:06 +01:00
Mahmood Ali
ef424132d0
Merge pull request #4926 from hashicorp/f-docker-image-ref
...
Use user provided image name to launch container
2018-11-30 07:27:39 -05:00
Mahmood Ali
5c354ad8fa
Merge pull request #4924 from hashicorp/f-docker-mounts
...
Support bind and tmpfs docker mounts
2018-11-30 07:27:17 -05:00
Michael Schurter
fe238dc6e3
docs: Use valid docker bind propagation field
...
Co-Authored-By: notnoop <mahmood@notnoop.com >
2018-11-30 07:25:56 -05:00
Danielle Tomlinson
03db4cf82d
client: Rename drivers/shared/env => client/taskenv
2018-11-30 12:18:39 +01:00
Danielle Tomlinson
ca91d503ed
Revert accidental changes to vendor/
2018-11-30 11:01:09 +01:00
Danielle Tomlinson
17d14d7f52
executors: Unify go-plugin handshake
2018-11-30 10:59:23 +01:00
Danielle Tomlinson
756325bcbd
client: Merge driver/shared/structs and client/structs
2018-11-30 10:56:45 +01:00
Danielle Tomlinson
9d4329b57a
client/driver: Remove package
2018-11-30 10:47:08 +01:00
Danielle Tomlinson
9dedec5378
nomad: Remove on-submission job validation
...
With the introduction of driver plugins, we're temporarily relying on
_run time validation_ of driver configurations, rather than submission
time.
2018-11-30 10:47:08 +01:00
Danielle Tomlinson
5262e42d62
fixup: executorplugin: fix rkt build
2018-11-30 10:47:08 +01:00
Danielle Tomlinson
db31a9cd99
client/driver: Vendor setEnvvars into docker_test
2018-11-30 10:46:13 +01:00
Danielle Tomlinson
75d333fe02
client: Move executor plugins into own package
2018-11-30 10:46:13 +01:00
Danielle Tomlinson
d4ef3b68d9
driver: Flatten SetEnvvars into taskdirhook
2018-11-30 10:46:13 +01:00
Danielle Tomlinson
5050c5ffed
command: Remove Extraneous field in nodedrain test
2018-11-30 10:46:13 +01:00
Danielle Tomlinson
eeb0bbae9c
client: Move driver/logging to logmon/logging
...
The logging package is used by logmon and the legacy mock_driver. Because the
legacy drivers are going away, I'm moving it here to signify its actual
ownership.
2018-11-30 10:46:13 +01:00
Danielle Tomlinson
bacd6175f5
client: Migrate DriverStats optout to drivers/shared/structs
2018-11-30 10:46:13 +01:00
Danielle Tomlinson
c36bc2ce9b
client: Remove test dependency on client/driver
2018-11-30 10:46:13 +01:00
Danielle Tomlinson
23197ec6b4
drivers: Create drivers/shared/structs
...
This creates a drivers/shared/structs package and moves the buffer size
checks into it.
2018-11-30 10:46:13 +01:00
Danielle Tomlinson
d2136e0aa7
drivers: Move client/drivers/executor to drivers/shared/executor
2018-11-30 10:46:13 +01:00
Danielle Tomlinson
6756ffd052
drivers: Move client/drivers/env to drivers/shared/env
...
As part of deprecating legacy drivers, we're moving the env package to a
new drivers/shared tree, as it is used by the modern docker and rkt
driver packages, and is useful for 3rd party plugins.
2018-11-30 10:46:13 +01:00
Nick Ethier
bff6484df3
Merge pull request #4906 from hashicorp/f-metric-prefix-master
...
Port metric prefix filtering to master
2018-11-29 22:27:47 -05:00
Nick Ethier
69e6b0ea21
nomad: fix hclog usage
2018-11-29 22:27:39 -05:00
Danielle Tomlinson
ac8adc2ca7
Merge pull request #4938 from hashicorp/b-fix-make
...
make: Fix invocation of vault e2e test
2018-11-29 21:15:06 +01:00
Omar Khawaja
c5905a9fc9
fix step 5 broken link ( #4939 )
2018-11-29 14:35:39 -05:00
Mahmood Ali
e78c4365a7
Merge pull request #4937 from hashicorp/b-vault-panic
...
vault: protect against empty Vault secret response
Fixes #4921
Sadly, we don't have proper mechanism to mock Vault client, so not sure how to best test this.
I inspected the Vault client interactions, specially for cases where returned value is nil even if the error is also nil. I believe we covered all correctly now:
* [`v.client.Sys().InitStatus()`](f3853f11da/nomad/vault.go (L427) ) - the value is non-nil boolean
* [`v.client.Sys().CapabilitiesSelf(path)`](f3853f11da/nomad/vault.go (L812) ): Capabilities handles empty bodies in [`hasCapability`](f3853f11da/vendor/github.com/hashicorp/vault/api/sys_capabilities.go (L43-L45) ) - also the `nil` array is handled with proper fail-safe default.
* [`v.client.Logical().Read(fmt.Sprintf("auth/token/roles/%s", role))`](f3853f11da/nomad/vault.go (L834-L840) ) handles when `rsecret` is nil
2018-11-29 10:35:58 -05:00
Danielle Tomlinson
4dfd952e05
make: Fix invocation of vault e2e test
2018-11-29 15:37:26 +01:00
Mahmood Ali
f3853f11da
vault: protect against empty Vault secret response
...
Also, fix a case where a successful second attempt of loading token can
cause a panic.
2018-11-29 09:34:17 -05:00
Chris Baker
6f2502e803
Merge pull request #4932 from hashicorp/b-1172-rkt-env-vars
...
change to testing utilities to fix rkt tests
2018-11-29 09:18:10 -05:00
Nick Ethier
97c9e42fbe
Merge pull request #4922 from hashicorp/f-drivermananger
...
add generic plugin manager interface and orchestration
2018-11-28 22:17:04 -05:00
Chris Baker
72ca56dabe
testing: in MkAllocDir, do not update TaskConfig with All() from the task builder, just with Env() (because it pollutes environment variables with node attributes and fails the rkt tests)
2018-11-28 22:19:48 +00:00
Preetha
be65442002
Merge pull request #4919 from hashicorp/f-fingerprint-attribute-type
...
Modify fingerprint interface to use typed attribute struct
2018-11-28 14:18:28 -06:00
Preetha Appan
22ddb4d18d
Fix lxc test panic
2018-11-28 13:56:17 -06:00
Michael Schurter
8cdce8b257
Merge pull request #4894 from hashicorp/f-device-hook
...
Device hook and devices affect computed node class
2018-11-28 12:10:43 -06:00
Preetha Appan
76f27a111d
Fix failing lxc test
2018-11-28 11:05:35 -06:00
Preetha Appan
27fb643f5e
Fix LXC driver fingerprint to use typedattributes
2018-11-28 10:09:10 -06:00
Preetha Appan
d36ba880a3
Fix docker driver to use new fingerprint typed attributes
2018-11-28 10:01:03 -06:00
Preetha Appan
829bf74aa8
modify fingerprint interface to use typed attribute struct
2018-11-28 10:01:03 -06:00
Nick Ethier
6352052211
client/plugin: remove println from plugin group func
2018-11-27 22:45:09 -05:00
Nick Ethier
6ead1a8f72
client/plugin: lint/spelling errors
2018-11-27 22:45:09 -05:00
Nick Ethier
5b11495b31
client/plugin: add generic plugin mananger interface and orchestration
2018-11-27 22:45:03 -05:00
Mahmood Ali
4922256170
Merge pull request #4918 from hashicorp/f-lxc-driver
...
Add LXC driver
2018-11-27 22:06:42 -05:00
Mahmood Ali
aa28f71bbe
address review comments
2018-11-27 21:40:43 -05:00
Mahmood Ali
b546247626
Add Driver Plugin for LXC
2018-11-27 21:40:43 -05:00
Mahmood Ali
90daa8b2d3
Fixes in old lxc driver
2018-11-27 21:40:43 -05:00
Mahmood Ali
08349b5a94
Update go-lxc library to handle LXC 3.0
2018-11-27 21:40:43 -05:00
Michael Schurter
b959d9831c
add nil check around task resources in device hook
...
Looking at NewTaskRunner I'm unsure whether TaskRunner.TaskResources
(from which req.TaskResources is set) is intended to be nil at times or
if the TODO in NewTaskRunner is intended to ensure it is always non-nil.
2018-11-27 17:25:33 -08:00