118 lines
2.2 KiB
Go
118 lines
2.2 KiB
Go
package common
|
|
|
|
import (
|
|
packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer"
|
|
)
|
|
|
|
type RemoteDriverMock struct {
|
|
DriverMock
|
|
|
|
UploadISOCalled bool
|
|
UploadISOPath string
|
|
UploadISOResult string
|
|
UploadISOErr error
|
|
|
|
RegisterCalled bool
|
|
RegisterPath string
|
|
RegisterErr error
|
|
|
|
UnregisterCalled bool
|
|
UnregisterPath string
|
|
UnregisterErr error
|
|
|
|
DestroyCalled bool
|
|
DestroyErr error
|
|
|
|
IsDestroyedCalled bool
|
|
IsDestroyedResult bool
|
|
IsDestroyedErr error
|
|
|
|
UploadErr error
|
|
DownloadErr error
|
|
|
|
RemovedCachePath string
|
|
CacheRemoved bool
|
|
|
|
ReturnValDirExists bool
|
|
|
|
ReloadVMErr error
|
|
|
|
outputDir string
|
|
}
|
|
|
|
func (d *RemoteDriverMock) UploadISO(path string, checksum string, ui packersdk.Ui) (string, error) {
|
|
d.UploadISOCalled = true
|
|
d.UploadISOPath = path
|
|
return d.UploadISOResult, d.UploadISOErr
|
|
}
|
|
|
|
func (d *RemoteDriverMock) Register(path string) error {
|
|
d.RegisterCalled = true
|
|
d.RegisterPath = path
|
|
return d.RegisterErr
|
|
}
|
|
|
|
func (d *RemoteDriverMock) Unregister(path string) error {
|
|
d.UnregisterCalled = true
|
|
d.UnregisterPath = path
|
|
return d.UnregisterErr
|
|
}
|
|
|
|
func (d *RemoteDriverMock) Destroy() error {
|
|
d.DestroyCalled = true
|
|
return d.DestroyErr
|
|
}
|
|
|
|
func (d *RemoteDriverMock) IsDestroyed() (bool, error) {
|
|
d.DestroyCalled = true
|
|
return d.IsDestroyedResult, d.IsDestroyedErr
|
|
}
|
|
|
|
func (d *RemoteDriverMock) upload(dst, src string, ui packersdk.Ui) error {
|
|
return d.UploadErr
|
|
}
|
|
|
|
func (d *RemoteDriverMock) Download(src, dst string) error {
|
|
return d.DownloadErr
|
|
}
|
|
|
|
func (d *RemoteDriverMock) RemoveCache(localPath string) error {
|
|
d.RemovedCachePath = localPath
|
|
d.CacheRemoved = true
|
|
return nil
|
|
}
|
|
|
|
func (d *RemoteDriverMock) ReloadVM() error {
|
|
return d.ReloadVMErr
|
|
}
|
|
|
|
// the following functions satisfy the Outputdir interface
|
|
|
|
func (d *RemoteDriverMock) DirExists() (bool, error) {
|
|
return d.ReturnValDirExists, nil
|
|
}
|
|
|
|
func (d *RemoteDriverMock) ListFiles() ([]string, error) {
|
|
return []string{}, nil
|
|
}
|
|
|
|
func (d *RemoteDriverMock) MkdirAll() error {
|
|
return nil
|
|
}
|
|
|
|
func (d *RemoteDriverMock) Remove(string) error {
|
|
return nil
|
|
}
|
|
|
|
func (d *RemoteDriverMock) RemoveAll() error {
|
|
return nil
|
|
}
|
|
|
|
func (d *RemoteDriverMock) SetOutputDir(s string) {
|
|
d.outputDir = s
|
|
}
|
|
|
|
func (d *RemoteDriverMock) String() string {
|
|
return d.outputDir
|
|
}
|