hashicorp-copywrite[bot]
f005448366
[COMPLIANCE] Add Copyright and License Headers
2023-04-10 15:36:59 +00:00
Mahmood Ali
6c414cd5f9
gofmt all the files
...
mostly to handle build directives in 1.17.
2021-10-01 10:14:28 -04:00
Mahmood Ali
34ee0ba6b9
Remove some dead code
2019-01-08 09:11:48 -05:00
Mahmood Ali
694e3010c2
use drivers.FSIsolation
2019-01-08 09:11:47 -05:00
Nick Ethier
13b582fcfb
executor: merge plugin shim with executor package
2018-12-06 21:13:45 -05:00
Nick Ethier
0087a51a7a
executor: remove structs package
2018-12-06 20:54:14 -05:00
Nick Ethier
467930f650
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
03db4cf82d
client: Rename drivers/shared/env => client/taskenv
2018-11-30 12:18:39 +01:00
Danielle Tomlinson
17d14d7f52
executors: Unify go-plugin handshake
2018-11-30 10:59:23 +01:00
Danielle Tomlinson
5262e42d62
fixup: executorplugin: fix rkt build
2018-11-30 10:47:08 +01:00
Danielle Tomlinson
75d333fe02
client: Move executor plugins into own package
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
5c777a37de
drivers/docker: more work porting tests from old driver plugin
2018-11-19 22:59:16 -05:00
Mahmood Ali
60166374d9
Add a helper functions for checking unix root
2018-11-08 10:00:49 -08:00
Alex Dadgar
57f40c7e3e
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
394cbc81b6
plugins/drivers: nil gaurd driver config when building executor config
2018-10-29 21:43:19 -04:00
Nick Ethier
95d381cff7
rename NomadConfig to ClientAgentConfig
2018-10-29 21:34:34 -04:00
Nick Ethier
7f69bcd4cd
added driver specific client config struct to plugin configuration
2018-10-18 23:31:01 -04:00
Nick Ethier
87748fe423
update rkt and exec setconfig funcs
2018-10-16 23:00:26 -04:00
Nick Ethier
db981de8e4
drivers/shared: move eventer to subpackage under drivers shared package
2018-10-16 16:56:55 -07:00
Nick Ethier
ca27a0254b
drivers/utils: better handling of consumer cleanup in eventer
2018-10-16 16:56:55 -07:00
Nick Ethier
a8d50e83b1
plugins/drivers: remove bool to track if eventLoop shutdown and use context instead
2018-10-16 16:56:55 -07:00
Nick Ethier
207522be55
drivers/rawexec: PR comments and feedback
2018-10-16 16:56:55 -07:00
Nick Ethier
0d7bf53c57
plugin/drivers: rework eventer and change naming stream -> consumer
2018-10-16 16:56:55 -07:00
Nick Ethier
391005706f
fix package references after drivers/base subpackage removed
2018-10-16 16:53:31 -07:00
Nick Ethier
650ac5a83e
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
2b655e4463
driver/raw_exec: initial raw_exec implementation
2018-10-16 16:53:31 -07:00
Nick Ethier
e2bf0a388e
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