mirror of
https://github.com/kemko/nomad.git
synced 2026-01-01 16:05:42 +03:00
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(...)
}
6 lines
95 B
Go
6 lines
95 B
Go
package drivers
|
|
|
|
import "fmt"
|
|
|
|
var ErrTaskNotFound = fmt.Errorf("task not found for given id")
|