hashicorp-copywrite[bot]
005636afa0
[COMPLIANCE] Add Copyright and License Headers
2023-04-10 15:36:59 +00:00
Mahmood Ali
4d90afb425
gofmt all the files
...
mostly to handle build directives in 1.17.
2021-10-01 10:14:28 -04:00
Mahmood Ali
426c981c34
Remove some dead code
2019-01-08 09:11:48 -05:00
Mahmood Ali
9369b123de
use drivers.FSIsolation
2019-01-08 09:11:47 -05:00
Nick Ethier
29ef54c0ee
executor: merge plugin shim with executor package
2018-12-06 21:13:45 -05:00
Nick Ethier
71353a88d4
executor: remove structs package
2018-12-06 20:54:14 -05:00
Nick Ethier
8b20de4801
executor: use grpc instead of netrpc as plugin protocol
...
* Added protobuf spec for executor
* Seperated executor structs into their own package
2018-12-05 11:03:56 -05:00
Danielle Tomlinson
2db5ae38d8
client: Rename drivers/shared/env => client/taskenv
2018-11-30 12:18:39 +01:00
Danielle Tomlinson
ffc5e5d56b
executors: Unify go-plugin handshake
2018-11-30 10:59:23 +01:00
Danielle Tomlinson
fdfe93aa25
fixup: executorplugin: fix rkt build
2018-11-30 10:47:08 +01:00
Danielle Tomlinson
d26a310db0
client: Move executor plugins into own package
2018-11-30 10:46:13 +01:00
Danielle Tomlinson
0544a57abe
drivers: Move client/drivers/executor to drivers/shared/executor
2018-11-30 10:46:13 +01:00
Danielle Tomlinson
1a29811169
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
3d7cdea19e
drivers/docker: more work porting tests from old driver plugin
2018-11-19 22:59:16 -05:00
Mahmood Ali
032f86bc78
Add a helper functions for checking unix root
2018-11-08 10:00:49 -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
Nick Ethier
87ee46214f
plugins/drivers: nil gaurd driver config when building executor config
2018-10-29 21:43:19 -04: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
823a6c8d6c
update rkt and exec setconfig funcs
2018-10-16 23:00:26 -04:00
Nick Ethier
951a084198
drivers/shared: move eventer to subpackage under drivers shared package
2018-10-16 16:56:55 -07:00
Nick Ethier
969ecea6f0
drivers/utils: better handling of consumer cleanup in eventer
2018-10-16 16:56:55 -07:00
Nick Ethier
8d04ae860d
plugins/drivers: remove bool to track if eventLoop shutdown and use context instead
2018-10-16 16:56:55 -07:00
Nick Ethier
8cf32eb9d2
drivers/rawexec: PR comments and feedback
2018-10-16 16:56:55 -07:00
Nick Ethier
5742a6b932
plugin/drivers: rework eventer and change naming stream -> consumer
2018-10-16 16:56:55 -07:00
Nick Ethier
8b876e1cce
fix package references after drivers/base subpackage removed
2018-10-16 16:53:31 -07:00
Nick Ethier
d9628ff394
driver/raw_exec: more tests and bug fixes
...
added wrapper struct for plugin.ReattachConfig to better handle serialization
2018-10-16 16:53:31 -07:00
Nick Ethier
5617f3615b
driver/raw_exec: initial raw_exec implementation
2018-10-16 16:53:31 -07:00
Nick Ethier
bcc5c4a8bd
clientv2: base driver plugin ( #4671 )
...
Driver plugin framework to facilitate development of driver plugins.
Implementing plugins only need to implement the DriverPlugin interface.
The framework proxies this interface to the go-plugin GRPC interface generated
from the driver.proto spec.
A testing harness is provided to allow implementing drivers to test the full
lifecycle of the driver plugin. An example use:
func TestMyDriver(t *testing.T) {
harness := NewDriverHarness(t, &MyDiverPlugin{})
// The harness implements the DriverPlugin interface and can be used as such
taskHandle, err := harness.StartTask(...)
}
2018-10-16 16:53:31 -07:00