Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Agent ¶
type Agent interface {
io.Closer
m3em.OperatorServer
// Running returns a flag indicating if the test process supervised
// by the Agent is running.
Running() bool
}
Agent is the remote executor of m3em operations
type ExecGenFn ¶
ExecGenFn specifies the command to execute for a given build, and config e.g. say the process binary expects the config with a cli flag "-f", ExecGenFn("binary", "config") == "binary", ["-f", "config"]
type HostResourcesFn ¶
type HostResourcesFn func() error
HostResourcesFn is used by the Agent to capture/release any resources required on the host. E.g. we use hosts that are typically running staging versions of the service being tested, for our integration tests as well. So we use this function hook to stop any running instances of said service on the host.
type Options ¶
type Options interface {
// Validate checks if the options set are valid
Validate() error
// SetInstrumentOptions sets the instrument options
SetInstrumentOptions(instrument.Options) Options
// InstrumentOptions returns the instrument options
InstrumentOptions() instrument.Options
// SetWorkingDirectory sets the agent's WorkingDirectory
SetWorkingDirectory(string) Options
// WorkingDirectory returns the agent's WorkingDirectory
WorkingDirectory() string
// SetExecGenFn sets the ExecGenFn
SetExecGenFn(fn ExecGenFn) Options
// ExecGenFn returns the ExecGenFn
ExecGenFn() ExecGenFn
// SetInitHostResourcesFn sets the InitHostResourcesFn
SetInitHostResourcesFn(HostResourcesFn) Options
// InitHostResourcesFn returns the InitHostResourcesFn
InitHostResourcesFn() HostResourcesFn
// SetReleaseHostResourcesFn sets the ReleaseHostResourcesFn
SetReleaseHostResourcesFn(HostResourcesFn) Options
// ReleaseHostResourcesFn returns the ReleaseHostResourcesFn
ReleaseHostResourcesFn() HostResourcesFn
// SetEnvMap sets the EnvMap used to execute any child processes
SetEnvMap(exec.EnvMap) Options
// EnvMap returns the EnvMap used to execute any child processes
EnvMap() exec.EnvMap
// SetHeartbeatTimeout sets the duration after which failed attempts at
// sending heartbeats will trigger the agent to reset itself
SetHeartbeatTimeout(time.Duration) Options
// HeartbeatTimeout sets the duration after which failed attempts at
// sending heartbeats will trigger the agent to reset itself
HeartbeatTimeout() time.Duration
// SetNowFn sets the now fn
SetNowFn(xclock.NowFn) Options
// NowFn returns the now fn
NowFn() xclock.NowFn
// SetNewFileMode sets the new file mode
SetNewFileMode(value os.FileMode) Options
// NewFileMode returns the new file mode
NewFileMode() os.FileMode
// SetNewDirectoryMode sets the new directory mode
SetNewDirectoryMode(value os.FileMode) Options
// NewDirectoryMode returns the new directory mode
NewDirectoryMode() os.FileMode
}
Options represent the knobs for a m3em agent
Click to show internal directories.
Click to hide internal directories.