Documentation ¶
Index ¶
- Constants
- func NewPlugin(logger hclog.Logger) drivers.DriverPlugin
- type DriverExtra
- func (de *DriverExtra) DestroyTask(_ context.Context, _ trace.Tracer, _ hclog.Logger, ...) error
- func (de *DriverExtra) StartTask(driverCtx context.Context, tracer trace.Tracer, logger hclog.Logger, ...) (*drivers.TaskHandle, *drivers.DriverNetwork, error)
- func (de *DriverExtra) StopTask(_ context.Context, _ trace.Tracer, _ hclog.Logger, ...) error
- func (de *DriverExtra) TaskStats(ctx, driverCtx context.Context, tracer trace.Tracer, _ hclog.Logger, ...) (<-chan *structs.TaskResourceUsage, error)
- func (de *DriverExtra) WaitTask(ctx, driverCtx context.Context, _ trace.Tracer, _ hclog.Logger, ...) (<-chan *drivers.ExitResult, error)
- type TaskConfig
- type TaskState
Constants ¶
View Source
const ( PluginName = "env-build-task-driver" PluginVersion = "0.2.0" )
Variables ¶
This section is empty.
Functions ¶
func NewPlugin ¶
func NewPlugin(logger hclog.Logger) drivers.DriverPlugin
Types ¶
type DriverExtra ¶
type DriverExtra struct {
// contains filtered or unexported fields
}
func (*DriverExtra) DestroyTask ¶
func (*DriverExtra) StartTask ¶
func (de *DriverExtra) StartTask( driverCtx context.Context, tracer trace.Tracer, logger hclog.Logger, cfg *drivers.TaskConfig, tasks *driver.TaskStore[*driver.TaskHandle[*extraTaskHandle]], ) (*drivers.TaskHandle, *drivers.DriverNetwork, error)
func (*DriverExtra) TaskStats ¶
func (de *DriverExtra) TaskStats( ctx, driverCtx context.Context, tracer trace.Tracer, _ hclog.Logger, tasks *driver.TaskStore[*driver.TaskHandle[*extraTaskHandle]], taskID string, interval time.Duration, ) (<-chan *structs.TaskResourceUsage, error)
func (*DriverExtra) WaitTask ¶
func (de *DriverExtra) WaitTask( ctx, driverCtx context.Context, _ trace.Tracer, _ hclog.Logger, tasks *driver.TaskStore[*driver.TaskHandle[*extraTaskHandle]], taskID string, ) (<-chan *drivers.ExitResult, error)
type TaskConfig ¶
type TaskConfig struct { BuildID string `codec:"BuildID"` EnvID string `codec:"EnvID"` KernelVersion string `codec:"KernelVersion"` FirecrackerVersion string `codec:"FirecrackerVersion"` HugePages bool `codec:"HugePages"` StartCmd string `codec:"StartCmd"` SpanID string `codec:"SpanID"` TraceID string `codec:"TraceID"` VCpuCount int64 `codec:"VCpuCount"` MemoryMB int64 `codec:"MemoryMB"` DiskSizeMB int64 `codec:"DiskSizeMB"` }
Click to show internal directories.
Click to hide internal directories.