Documentation ¶
Index ¶
- Variables
- func NewLXCDriver(logger hclog.Logger) drivers.DriverPlugin
- type Config
- type Driver
- func (d *Driver) Capabilities() (*drivers.Capabilities, error)
- func (d *Driver) ConfigSchema() (*hclspec.Spec, error)
- func (d *Driver) DestroyTask(taskID string, force bool) error
- func (d *Driver) ExecTask(taskID string, cmd []string, timeout time.Duration) (*drivers.ExecTaskResult, error)
- func (d *Driver) Fingerprint(ctx context.Context) (<-chan *drivers.Fingerprint, error)
- func (d *Driver) InspectTask(taskID string) (*drivers.TaskStatus, error)
- func (d *Driver) PluginInfo() (*base.PluginInfoResponse, error)
- func (d *Driver) RecoverTask(handle *drivers.TaskHandle) error
- func (d *Driver) SetConfig(cfg *base.Config) error
- func (d *Driver) Shutdown(ctx context.Context) error
- func (d *Driver) SignalTask(taskID string, signal string) error
- func (d *Driver) StartTask(cfg *drivers.TaskConfig) (*drivers.TaskHandle, *drivers.DriverNetwork, error)
- func (d *Driver) StopTask(taskID string, timeout time.Duration, signal string) error
- func (d *Driver) TaskConfigSchema() (*hclspec.Spec, error)
- func (d *Driver) TaskEvents(ctx context.Context) (<-chan *drivers.TaskEvent, error)
- func (d *Driver) TaskStats(ctx context.Context, taskID string, interval time.Duration) (<-chan *drivers.TaskResourceUsage, error)
- func (d *Driver) WaitTask(ctx context.Context, taskID string) (<-chan *drivers.ExitResult, error)
- type GCConfig
- type TaskConfig
- type TaskState
Constants ¶
This section is empty.
Variables ¶
View Source
var ( LXCMeasuredCpuStats = []string{"System Mode", "User Mode", "Percent"} LXCMeasuredMemStats = []string{"RSS", "Cache", "Swap", "Max Usage", "Kernel Usage", "Kernel Max Usage"} )
Functions ¶
func NewLXCDriver ¶
func NewLXCDriver(logger hclog.Logger) drivers.DriverPlugin
NewLXCDriver returns a new DriverPlugin implementation
Types ¶
type Config ¶
type Config struct { // Enabled is set to true to enable the lxc driver Enabled bool `codec:"enabled"` AllowVolumes bool `codec:"volumes_enabled"` LXCPath string `codec:"lxc_path"` // default networking mode if not specified in task config NetworkMode string `codec:"network_mode"` GC GCConfig `codec:"gc"` }
Config is the driver configuration set by the SetConfig RPC call
type Driver ¶
type Driver struct {
// contains filtered or unexported fields
}
Driver is a driver for running LXC containers
func (*Driver) Capabilities ¶
func (d *Driver) Capabilities() (*drivers.Capabilities, error)
func (*Driver) Fingerprint ¶
func (*Driver) InspectTask ¶
func (d *Driver) InspectTask(taskID string) (*drivers.TaskStatus, error)
func (*Driver) PluginInfo ¶
func (d *Driver) PluginInfo() (*base.PluginInfoResponse, error)
func (*Driver) RecoverTask ¶
func (d *Driver) RecoverTask(handle *drivers.TaskHandle) error
func (*Driver) StartTask ¶
func (d *Driver) StartTask(cfg *drivers.TaskConfig) (*drivers.TaskHandle, *drivers.DriverNetwork, error)
func (*Driver) TaskEvents ¶
type GCConfig ¶ added in v0.2.0
type GCConfig struct {
Container bool `codec:"container"`
}
GCConfig is the driver GarbageCollection configuration
type TaskConfig ¶
type TaskConfig struct { Template string `codec:"template"` Distro string `codec:"distro"` Release string `codec:"release"` Arch string `codec:"arch"` ImageVariant string `codec:"image_variant"` ImageServer string `codec:"image_server"` GPGKeyID string `codec:"gpg_key_id"` GPGKeyServer string `codec:"gpg_key_server"` DisableGPGValidation bool `codec:"disable_gpg"` FlushCache bool `codec:"flush_cache"` ForceCache bool `codec:"force_cache"` TemplateArgs []string `codec:"template_args"` LogLevel string `codec:"log_level"` Verbosity string `codec:"verbosity"` Volumes []string `codec:"volumes"` NetworkMode string `codec:"network_mode"` }
TaskConfig is the driver configuration of a task within a job
Click to show internal directories.
Click to hide internal directories.