Documentation ¶
Index ¶
- func Retry(ctx context.Context, f func() error) error
- type Communicator
- type Fatal
- type MockCommunicator
- func (c *MockCommunicator) Connect(o provisioners.UIOutput) error
- func (c *MockCommunicator) Disconnect() error
- func (c *MockCommunicator) ScriptPath() string
- func (c *MockCommunicator) Start(r *remote.Cmd) error
- func (c *MockCommunicator) Timeout() time.Duration
- func (c *MockCommunicator) Upload(path string, input io.Reader) error
- func (c *MockCommunicator) UploadDir(dst string, src string) error
- func (c *MockCommunicator) UploadScript(path string, input io.Reader) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Communicator ¶
type Communicator interface { // Connect is used to set up the connection Connect(provisioners.UIOutput) error // Disconnect is used to terminate the connection Disconnect() error // Timeout returns the configured connection timeout Timeout() time.Duration // ScriptPath returns the configured script path ScriptPath() string // Start executes a remote command in a new session Start(*remote.Cmd) error // Upload is used to upload a single file Upload(string, io.Reader) error // UploadScript is used to upload a file as an executable script UploadScript(string, io.Reader) error // UploadDir is used to upload a directory UploadDir(string, string) error }
Communicator is an interface that must be implemented by all communicators used for any of the provisioners
type Fatal ¶
type Fatal interface {
FatalError() error
}
Fatal is an interface that error values can return to halt Retry
type MockCommunicator ¶
type MockCommunicator struct { RemoteScriptPath string Commands map[string]bool Uploads map[string]string UploadScripts map[string]string UploadDirs map[string]string CommandFunc func(*remote.Cmd) error DisconnectFunc func() error ConnTimeout time.Duration }
MockCommunicator is an implementation of Communicator that can be used for tests.
func (*MockCommunicator) Connect ¶
func (c *MockCommunicator) Connect(o provisioners.UIOutput) error
Connect implementation of communicator.Communicator interface
func (*MockCommunicator) Disconnect ¶
func (c *MockCommunicator) Disconnect() error
Disconnect implementation of communicator.Communicator interface
func (*MockCommunicator) ScriptPath ¶
func (c *MockCommunicator) ScriptPath() string
ScriptPath implementation of communicator.Communicator interface
func (*MockCommunicator) Start ¶
func (c *MockCommunicator) Start(r *remote.Cmd) error
Start implementation of communicator.Communicator interface
func (*MockCommunicator) Timeout ¶
func (c *MockCommunicator) Timeout() time.Duration
Timeout implementation of communicator.Communicator interface
func (*MockCommunicator) Upload ¶
func (c *MockCommunicator) Upload(path string, input io.Reader) error
Upload implementation of communicator.Communicator interface
func (*MockCommunicator) UploadDir ¶
func (c *MockCommunicator) UploadDir(dst string, src string) error
UploadDir implementation of communicator.Communicator interface
func (*MockCommunicator) UploadScript ¶
func (c *MockCommunicator) UploadScript(path string, input io.Reader) error
UploadScript implementation of communicator.Communicator interface