Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Spanner ¶
type Spanner struct {
Job
Laforge *core.Laforge
TeamDirs map[int]string
Workers map[int]*Worker
LogDir string
BuildDir string
Result chan *Worker
ExecTime int64
}
Spanner is a multiplexer for teams in a laforge environment
func New ¶
func New(base *core.Laforge, command []string, exectype, hostid string, saveOutput, silent bool) (*Spanner, error)
New returns a new Spanner
func (*Spanner) CreateWorkerPool ¶
CreateWorkerPool creates the individual workers for the spanner
type Worker ¶
type Worker struct {
Job
ID int64
TeamID int
Parent *Spanner
Host *core.ProvisionedHost
BeginTime time.Time
EndTime time.Time
LogFile string
TeamDir string
ExitStatus int
ExitError error
}
Worker is a single unit of work and corrasponds to a single team element within a build
func (*Worker) ResolveProvisionedHost ¶
ResolveProvisionedHost gets the provisioned host config from the team
func (*Worker) RunLocalCommand ¶
RunLocalCommand executes the worker's task, piping output to the logfile
func (*Worker) RunRemoteCommand ¶
RunRemoteCommand begins the process for executing commands across the Spanner's worker.
func (*Worker) RunSSHCommand ¶
RunSSHCommand executes the remote command over the SSH remote protocol
func (*Worker) RunWinRMCommand ¶
RunWinRMCommand executes the remote command over the WinRM protocol on remote Windows hosts