Michael Schurter
32daa7b47b
goimports until make check is happy
2019-01-23 06:27:14 -08:00
Michael Schurter
be0bab7c3f
move pluginutils -> helper/pluginutils
...
I wanted a different color bikeshed, so I get to paint it
2019-01-22 15:50:08 -08:00
Alex Dadgar
2ca0e97361
Split hclspec
2019-01-22 15:43:34 -08:00
Alex Dadgar
5ca6dd7988
move hclutils
2019-01-22 15:43:34 -08:00
Alex Dadgar
72a5691897
Driver tests do not use hcl2/hcl, hclspec, or hclutils
2019-01-22 15:43:34 -08:00
Alex Dadgar
b2c7268843
move reattach config
2019-01-22 15:11:58 -08:00
Alex Dadgar
cdcd3c929c
loader and singleton
2019-01-22 15:11:57 -08:00
Alex Dadgar
6c2782f037
move catalog + grpcutils
2019-01-22 15:11:57 -08:00
Alex Dadgar
f3a2d05e11
increase log level
2019-01-22 14:20:54 -08:00
Mahmood Ali
5df63fda7c
Merge pull request #5190 from hashicorp/f-memory-usage
...
Track Basic Memory Usage as reported by cgroups
2019-01-18 16:46:02 -05:00
Chris Baker
265f935d10
renamed mispelled function, fixed incorrect comment
2019-01-18 20:00:49 +00:00
Danielle Tomlinson
12eb4631ba
Merge pull request #5204 from hashicorp/dani/loader-typo-2
...
Fix typo in PluginLoader
2019-01-18 11:22:22 +01:00
Danielle Tomlinson
ae5ad68600
pluginloader: typo: s/validePluginConfig/validatePluginConfig
2019-01-17 19:10:32 +01:00
Danielle Tomlinson
707988fee1
plugins: Require an exe extension on windows
2019-01-17 18:43:14 +01:00
Danielle Tomlinson
7fca934509
chore: General Cleanup
2019-01-17 18:43:14 +01:00
Mahmood Ali
b7faf76343
chore: Stylistic cleanup
...
Co-Authored-By: dantoml <dani@tomlinson.io>
2019-01-17 18:43:14 +01:00
Danielle Tomlinson
62e06eda56
chore: Cleanup formatting
2019-01-17 18:43:13 +01:00
Danielle Tomlinson
477c0b1d23
plugins: Load plugins on windows
2019-01-17 18:43:13 +01:00
Mahmood Ali
9909d98bee
Track Basic Memory Usage as reported by cgroups
...
Track current memory usage, `memory.usage_in_bytes`, in addition to
`memory.max_memory_usage_in_bytes` and friends. This number is closer
what Docker reports.
Related to https://github.com/hashicorp/nomad/issues/5165 .
2019-01-14 18:47:52 -05:00
Mahmood Ali
62a7f951c0
remove lxc references
2019-01-08 09:28:20 -05:00
Alex Dadgar
c9825a9c36
recover
2019-01-07 14:49:40 -08:00
Alex Dadgar
730a6f5b9a
lint
2018-12-18 16:48:00 -08:00
Alex Dadgar
4c57d2ec4d
Add plugin API versioning to plugin loader and plugins
2018-12-18 16:48:00 -08:00
Danielle Tomlinson
8ba0a816f3
plugins: Add support for serving driver plugins
2018-12-01 17:30:54 +01:00
Preetha Appan
f89dbcd9cc
modify fingerprint interface to use typed attribute struct
2018-11-28 10:01:03 -06:00
Mahmood Ali
6d34d2fade
Add Driver Plugin for LXC
2018-11-27 21:40:43 -05:00
Nick Ethier
ced5d5c445
docker: move recoverable error proto to shared structs
2018-11-19 22:59:16 -05:00
Nick Ethier
8f8698b3e1
docker: started work on porting docker driver to new plugin framework
2018-11-19 22:59:15 -05:00
Mahmood Ali
b74ccc742c
Expose Device Stats in /client/stats API endpoint
2018-11-14 14:41:19 -05:00
Mahmood Ali
c5de71a424
Allow nullable fields in StatValues
...
In state values, we need to be able to distinguish between zero values
(e.g. `false`) and unset values (e.g. `nil`).
We can alternatively use protobuf `oneOf` and nested map to ensure
consistency of fields that are set together, but the golang
representation does not represent that well and introducing a mismatch
between representations. Thus, I opted not to use it.
2018-11-14 14:41:19 -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
Mahmood Ali
1f4db08f42
Regenerate proto files with protoc-gen-go@v1.2.0
2018-11-14 09:01:26 -05:00
Alex Dadgar
693f244cce
Plugin client's handle plugin dying
...
This PR plumbs the plugins done ctx through the base and driver plugin
clients (device already had it). Further, it adds generic handling of
gRPC stream errors.
2018-11-12 17:09:27 -08:00
Alex Dadgar
c4f9e22aeb
fix race
2018-11-07 12:22:07 -08:00
Alex Dadgar
f0c7a8159b
tests
2018-11-07 10:43:15 -08: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
Alex Dadgar
feb83a2be3
assign devices
2018-11-07 10:32:03 -08:00
Mahmood Ali
53543b3e32
register the java plugin
2018-11-06 12:41:39 -08:00
Mahmood Ali
a17521475d
Merge pull request #4826 from hashicorp/b-driver-exec-tweaks-20181031
...
Register exec driver plugin among some fixes
2018-11-02 10:11:05 -04:00
Mahmood Ali
9a45837c4e
Register exec driver plugin among some fixes
...
Namely, remove the `enabled` configuration flag, as it's specific to
`raw_exec` driver. Also, pass resource limits to underlying call.
2018-10-31 13:55:59 -04:00
Michael Schurter
2a38f575c0
rkt: fix race, register by default, fix fingerprint
2018-10-30 17:37:00 -07:00
Michael Schurter
fc320906aa
qemu: fix build and register by default
...
API changes had broken the build.
2018-10-29 22:10:37 -07:00
Nick Ethier
bda3b1d3b3
rename NomadConfig to ClientAgentConfig
2018-10-29 21:34:34 -04:00
Nick Ethier
58b430edae
added driver specific client config struct to plugin configuration
2018-10-18 23:31:01 -04:00
Nick Ethier
cbf81d3564
test for setting NomadConfig in plugin loader
2018-10-16 22:47:26 -04:00
Nick Ethier
65adb80ebf
plumb NomadConfig into plugins
2018-10-16 22:47:22 -04:00
Michael Schurter
1a29337e48
register drivers by default
...
Do not register mock_driver on release builds.
2018-10-16 16:56:56 -07:00
Alex Dadgar
84ce8c3487
extra logging
2018-10-16 16:56:55 -07:00
Alex Dadgar
6f0ed6184b
Fix client reloading and pass the plugin loaders to server and client
2018-10-16 16:56:55 -07:00
Alex Dadgar
183561cf82
Plugin loader initialization
2018-10-16 16:54:12 -07:00