fakes

package
v6.8.1+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 2, 2018 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AWSClient

type AWSClient struct {
	RetrieveAZsCall struct {
		Receives struct {
			Region string
		}
		Returns struct {
			AZs   []string
			Error error
		}
		CallCount int
	}
	RetrieveDNSCall struct {
		Receives struct {
			URL string
		}
		Returns struct {
			DNS string
		}
		CallCount int
	}
}

func (*AWSClient) RetrieveAZs

func (a *AWSClient) RetrieveAZs(region string) ([]string, error)

func (*AWSClient) RetrieveDNS

func (a *AWSClient) RetrieveDNS(url string) string

type AWSClientProvider

type AWSClientProvider struct {
	SetConfigCall struct {
		CallCount int
		Receives  struct {
			Config storage.AWS
		}
	}
	GetEC2ClientCall struct {
		CallCount int
		Returns   struct {
			EC2Client aws.Client
		}
	}
}

func (*AWSClientProvider) GetEC2Client

func (c *AWSClientProvider) GetEC2Client() aws.Client

func (*AWSClientProvider) SetConfig

func (c *AWSClientProvider) SetConfig(config storage.AWS)

type AWSEC2Client

type AWSEC2Client struct {
	DescribeAvailabilityZonesCall struct {
		Receives struct {
			Input *awsec2.DescribeAvailabilityZonesInput
		}
		Returns struct {
			Output *awsec2.DescribeAvailabilityZonesOutput
			Error  error
		}
	}

	DescribeInstancesCall struct {
		Receives struct {
			Input *awsec2.DescribeInstancesInput
		}
		Returns struct {
			Output *awsec2.DescribeInstancesOutput
			Error  error
		}
	}

	DescribeVpcsCall struct {
		Receives struct {
			Input *awsec2.DescribeVpcsInput
		}
		Returns struct {
			Output *awsec2.DescribeVpcsOutput
			Error  error
		}
	}
}

func (*AWSEC2Client) DescribeAvailabilityZones

func (*AWSEC2Client) DescribeInstances

func (*AWSEC2Client) DescribeVpcs

type AWSRoute53Client

type AWSRoute53Client struct {
	ListHostedZonesByNameCall struct {
		Receives struct {
			Input *awsroute53.ListHostedZonesByNameInput
		}
		Returns struct {
			Output *awsroute53.ListHostedZonesByNameOutput
			Error  error
		}
	}
}

func (*AWSRoute53Client) ListHostedZonesByName

type AllProxyGetter

type AllProxyGetter struct {
	GeneratePrivateKeyCall struct {
		CallCount int
		Returns   struct {
			PrivateKey string
			Error      error
		}
	}

	BoshAllProxyCall struct {
		CallCount int
		Receives  struct {
			JumpboxURL string
			PrivateKey string
		}
		Returns struct {
			URL string
		}
	}
}

func (*AllProxyGetter) BoshAllProxy

func (a *AllProxyGetter) BoshAllProxy(jumpboxURL, privateKey string) string

func (*AllProxyGetter) GeneratePrivateKey

func (a *AllProxyGetter) GeneratePrivateKey() (string, error)

type AzureGroupsClient

type AzureGroupsClient struct {
	CheckExistenceCall struct {
		CallCount int
		Receives  struct {
			ResourceGroup string
		}
		Returns struct {
			Response autorest.Response
			Error    error
		}
	}
}

func (*AzureGroupsClient) CheckExistence

func (a *AzureGroupsClient) CheckExistence(resourceGroup string) (autorest.Response, error)

type AzureVMsClient

type AzureVMsClient struct {
	ListCall struct {
		CallCount int
		Receives  struct {
			ResourceGroup string
		}
		Returns struct {
			Result compute.VirtualMachineListResult
			Error  error
		}
	}
}

func (*AzureVMsClient) List

func (a *AzureVMsClient) List(resourceGroup string) (compute.VirtualMachineListResult, error)

type BOSHCLI

type BOSHCLI struct {
	GetBOSHPathCall struct {
		CallCount int
		Returns   struct {
			Path string
		}
	}

	RunStub func(stdout io.Writer, workingDirectory string, args []string) error
	// contains filtered or unexported fields
}

func (*BOSHCLI) GetBOSHPath

func (fake *BOSHCLI) GetBOSHPath() string

func (*BOSHCLI) Invocations

func (fake *BOSHCLI) Invocations() map[string][][]interface{}

func (*BOSHCLI) Run

func (fake *BOSHCLI) Run(stdout io.Writer, workingDirectory string, args []string) error

func (*BOSHCLI) RunArgsForCall

func (fake *BOSHCLI) RunArgsForCall(i int) (io.Writer, string, []string)

func (*BOSHCLI) RunCallCount

func (fake *BOSHCLI) RunCallCount() int

func (*BOSHCLI) RunReturns

func (fake *BOSHCLI) RunReturns(result1 error)

func (*BOSHCLI) RunReturnsOnCall

func (fake *BOSHCLI) RunReturnsOnCall(i int, result1 error)

type BOSHClient

type BOSHClient struct {
	UpdateCloudConfigCall struct {
		CallCount int
		Receives  struct {
			Yaml []byte
		}
		Returns struct {
			Error error
		}
	}

	ConfigureHTTPClientCall struct {
		CallCount int
		Receives  struct {
			Socks5Client proxy.Dialer
		}
	}

	InfoCall struct {
		CallCount int
		Returns   struct {
			Info  bosh.Info
			Error error
		}
	}
}

func (*BOSHClient) ConfigureHTTPClient

func (c *BOSHClient) ConfigureHTTPClient(socks5Client proxy.Dialer)

func (*BOSHClient) Info

func (c *BOSHClient) Info() (bosh.Info, error)

func (*BOSHClient) UpdateCloudConfig

func (c *BOSHClient) UpdateCloudConfig(yaml []byte) error

type BOSHClientProvider

type BOSHClientProvider struct {
	ClientCall struct {
		CallCount int

		Receives struct {
			Jumpbox          storage.Jumpbox
			DirectorAddress  string
			DirectorUsername string
			DirectorPassword string
			DirectorCACert   string
		}
		Returns struct {
			Client bosh.Client
			Error  error
		}
	}
}

func (*BOSHClientProvider) Client

func (b *BOSHClientProvider) Client(jumpbox storage.Jumpbox, directorAddress, directorUsername, directorPassword, directorCACert string) (bosh.Client, error)

type BOSHExecutor

type BOSHExecutor struct {
	CreateEnvCall struct {
		CallCount int
		Receives  struct {
			DirInput bosh.DirInput
			State    storage.State
		}
		Returns struct {
			Variables string
			Error     error
		}
	}

	DeleteEnvCall struct {
		CallCount int
		Receives  struct {
			DirInput bosh.DirInput
			State    storage.State
		}
		Returns struct {
			Error error
		}
	}

	PlanJumpboxCall struct {
		CallCount int
		Receives  struct {
			DirInput      bosh.DirInput
			DeploymentDir string
			Iaas          string
		}
		Returns struct {
			Error error
		}
	}

	PlanDirectorCall struct {
		CallCount int
		Receives  struct {
			DirInput      bosh.DirInput
			DeploymentDir string
			Iaas          string
		}
		Returns struct {
			Error error
		}
	}

	WriteDeploymentVarsCall struct {
		CallCount int
		Receives  struct {
			DirInput       bosh.DirInput
			DeploymentVars string
		}
		Returns struct {
			Error error
		}
	}

	PathCall struct {
		CallCount int
		Returns   struct {
			Path string
		}
	}

	VersionCall struct {
		CallCount int
		Returns   struct {
			Version string
			Error   error
		}
	}
}

func (*BOSHExecutor) CreateEnv

func (e *BOSHExecutor) CreateEnv(input bosh.DirInput, state storage.State) (string, error)

func (*BOSHExecutor) DeleteEnv

func (e *BOSHExecutor) DeleteEnv(input bosh.DirInput, state storage.State) error

func (*BOSHExecutor) Path

func (e *BOSHExecutor) Path() string

func (*BOSHExecutor) PlanDirector

func (e *BOSHExecutor) PlanDirector(input bosh.DirInput, deploymentDir, iaas string) error

func (*BOSHExecutor) PlanJumpbox

func (e *BOSHExecutor) PlanJumpbox(input bosh.DirInput, deploymentDir, iaas string) error

func (*BOSHExecutor) Version

func (e *BOSHExecutor) Version() (string, error)

func (*BOSHExecutor) WriteDeploymentVars

func (e *BOSHExecutor) WriteDeploymentVars(input bosh.DirInput, deploymentVars string) error

type BOSHManager

type BOSHManager struct {
	InitializeJumpboxCall struct {
		CallCount int
		Receives  struct {
			State storage.State
		}
		Returns struct {
			Error error
		}
	}
	CreateJumpboxCall struct {
		CallCount int
		Receives  struct {
			State            storage.State
			TerraformOutputs terraform.Outputs
		}
		Returns struct {
			State storage.State
			Error error
		}
	}
	InitializeDirectorCall struct {
		CallCount int
		Receives  struct {
			State storage.State
		}
		Returns struct {
			Error error
		}
	}
	CreateDirectorCall struct {
		CallCount int
		Receives  struct {
			State            storage.State
			TerraformOutputs terraform.Outputs
		}
		Returns struct {
			State storage.State
			Error error
		}
	}
	PathCall struct {
		CallCount int
		Returns   struct {
			Path string
		}
	}
	VersionCall struct {
		CallCount int
		Returns   struct {
			Version string
			Error   error
		}
	}
	DeleteDirectorCall struct {
		CallCount int
		Receives  struct {
			State            storage.State
			TerraformOutputs terraform.Outputs
		}
		Returns struct {
			Error error
		}
	}
	DeleteJumpboxCall struct {
		CallCount int
		Receives  struct {
			State            storage.State
			TerraformOutputs terraform.Outputs
		}
		Returns struct {
			Error error
		}
	}
	GetDirectorDeploymentVarsCall struct {
		CallCount int
		Receives  struct {
			State            storage.State
			TerraformOutputs terraform.Outputs
		}
		Returns struct {
			Vars string
		}
	}
	GetJumpboxDeploymentVarsCall struct {
		CallCount int
		Receives  struct {
			State            storage.State
			TerraformOutputs terraform.Outputs
		}
		Returns struct {
			Vars string
		}
	}
}

func (*BOSHManager) CreateDirector

func (b *BOSHManager) CreateDirector(state storage.State, terraformOutputs terraform.Outputs) (storage.State, error)

func (*BOSHManager) CreateJumpbox

func (b *BOSHManager) CreateJumpbox(state storage.State, terraformOutputs terraform.Outputs) (storage.State, error)

func (*BOSHManager) DeleteDirector

func (b *BOSHManager) DeleteDirector(state storage.State, terraformOutputs terraform.Outputs) error

func (*BOSHManager) DeleteJumpbox

func (b *BOSHManager) DeleteJumpbox(state storage.State, terraformOutputs terraform.Outputs) error

func (*BOSHManager) GetDirectorDeploymentVars

func (b *BOSHManager) GetDirectorDeploymentVars(state storage.State, terraformOutputs terraform.Outputs) string

func (*BOSHManager) GetJumpboxDeploymentVars

func (b *BOSHManager) GetJumpboxDeploymentVars(state storage.State, terraformOutputs terraform.Outputs) string

func (*BOSHManager) InitializeDirector

func (b *BOSHManager) InitializeDirector(state storage.State) error

func (*BOSHManager) InitializeJumpbox

func (b *BOSHManager) InitializeJumpbox(state storage.State) error

func (*BOSHManager) Path

func (b *BOSHManager) Path() string

func (*BOSHManager) Version

func (b *BOSHManager) Version() (string, error)

type CertificateDeleter

type CertificateDeleter struct {
	DeleteCall struct {
		CallCount int
		Receives  struct {
			CertificateName string
		}
		Returns struct {
			Error error
		}
	}
}

func (*CertificateDeleter) Delete

func (c *CertificateDeleter) Delete(certificateName string) error

type CertificateValidator

type CertificateValidator struct {
	ReadAndValidateCall struct {
		CallCount int
		Returns   struct {
			CertData certs.CertData
			Error    error
		}
		Receives struct {
			Command         string
			CertificatePath string
			KeyPath         string
			ChainPath       string
		}
	}

	ReadCall struct {
		CallCount int
		Returns   struct {
			CertData certs.CertData
			Error    error
		}
		Receives struct {
			Command         string
			CertificatePath string
			KeyPath         string
			ChainPath       string
		}
	}

	ReadAndValidatePKCS12Call struct {
		CallCount int
		Returns   struct {
			CertData certs.CertData
			Error    error
		}
		Receives struct {
			CertificatePath string
			PasswordPath    string
		}
	}

	ReadPKCS12Call struct {
		CallCount int
		Returns   struct {
			CertData certs.CertData
			Error    error
		}
		Receives struct {
			CertificatePath string
			PasswordPath    string
		}
	}
}

func (*CertificateValidator) Read

func (c *CertificateValidator) Read(certificatePath, keyPath, chainPath string) (certs.CertData, error)

func (*CertificateValidator) ReadAndValidate

func (c *CertificateValidator) ReadAndValidate(certificatePath, keyPath, chainPath string) (certs.CertData, error)

func (*CertificateValidator) ReadAndValidatePKCS12

func (c *CertificateValidator) ReadAndValidatePKCS12(certificatePath, passwordPath string) (certs.CertData, error)

func (*CertificateValidator) ReadPKCS12

func (c *CertificateValidator) ReadPKCS12(certificatePath, passwordPath string) (certs.CertData, error)

type CloudConfigManager

type CloudConfigManager struct {
	UpdateCall struct {
		CallCount int
		Receives  struct {
			State storage.State
		}
		Returns struct {
			Error error
		}
	}
	InitializeCall struct {
		CallCount int
		Receives  struct {
			State storage.State
		}
		Returns struct {
			Error error
		}
	}
	GenerateVarsCall struct {
		CallCount int
		Receives  struct {
			State storage.State
		}
		Returns struct {
			Error error
		}
	}
	InterpolateCall struct {
		CallCount int
		Returns   struct {
			CloudConfig string
			Error       error
		}
	}
	IsPresentCloudConfigCall struct {
		CallCount int
		Returns   struct {
			IsPresent bool
		}
	}
	IsPresentCloudConfigVarsCall struct {
		CallCount int
		Returns   struct {
			IsPresent bool
		}
	}
}

func (*CloudConfigManager) GenerateVars

func (c *CloudConfigManager) GenerateVars(state storage.State) error

func (*CloudConfigManager) Initialize

func (c *CloudConfigManager) Initialize(state storage.State) error

func (*CloudConfigManager) Interpolate

func (c *CloudConfigManager) Interpolate() (string, error)

func (*CloudConfigManager) IsPresentCloudConfig

func (c *CloudConfigManager) IsPresentCloudConfig() bool

func (*CloudConfigManager) IsPresentCloudConfigVars

func (c *CloudConfigManager) IsPresentCloudConfigVars() bool

func (*CloudConfigManager) Update

func (c *CloudConfigManager) Update(state storage.State) error

type CloudConfigOpsGenerator

type CloudConfigOpsGenerator struct {
	GenerateCall struct {
		Receives struct {
			State storage.State
		}
		Returns struct {
			OpsYAML string
			Error   error
		}
	}
	GenerateVarsCall struct {
		Receives struct {
			State storage.State
		}
		Returns struct {
			VarsYAML string
			Error    error
		}
	}
}

func (*CloudConfigOpsGenerator) Generate

func (c *CloudConfigOpsGenerator) Generate(state storage.State) (string, error)

func (*CloudConfigOpsGenerator) GenerateVars

func (c *CloudConfigOpsGenerator) GenerateVars(state storage.State) (string, error)

type Command

type Command struct {
	CheckFastFailsCall struct {
		CallCount int
		Receives  struct {
			State           storage.State
			SubcommandFlags []string
		}
		Returns struct {
			Error error
		}
	}
	ExecuteCall struct {
		CallCount int
		PassState bool
		Receives  struct {
			State           storage.State
			SubcommandFlags []string
		}
		Returns struct {
			Error error
		}
	}
	UsageCall struct {
		CallCount int
		Returns   struct {
			Usage string
		}
	}
}

func (*Command) CheckFastFails

func (c *Command) CheckFastFails(subcommandFlags []string, state storage.State) error

func (*Command) Execute

func (c *Command) Execute(subcommandFlags []string, state storage.State) error

func (*Command) Usage

func (c *Command) Usage() string

type CredhubGetter

type CredhubGetter struct {
	GetServerCall struct {
		CallCount int
		Returns   struct {
			Server string
			Error  error
		}
	}
	GetCertsCall struct {
		CallCount int
		Returns   struct {
			Certs string
			Error error
		}
	}
	GetPasswordCall struct {
		CallCount int
		Returns   struct {
			Password string
			Error    error
		}
	}
}

func (*CredhubGetter) GetCerts

func (s *CredhubGetter) GetCerts() (string, error)

func (*CredhubGetter) GetPassword

func (s *CredhubGetter) GetPassword() (string, error)

func (*CredhubGetter) GetServer

func (s *CredhubGetter) GetServer() (string, error)

type DeleteLBs

type DeleteLBs struct {
	ExecuteCall struct {
		CallCount int
		Receives  struct {
			State storage.State
		}

		Returns struct {
			Error error
		}
	}
}

func (*DeleteLBs) Execute

func (a *DeleteLBs) Execute(state storage.State) error

type DirFileInfo

type DirFileInfo struct {
	FileInfo
}

func (DirFileInfo) IsDir

func (d DirFileInfo) IsDir() bool

type EnvGetter

type EnvGetter struct {
	Values  map[string]string
	GetCall struct {
		CallCount int
		Receives  struct {
			Name string
		}
	}
}

func (*EnvGetter) Get

func (e *EnvGetter) Get(name string) string

type EnvIDGenerator

type EnvIDGenerator struct {
	GenerateCall struct {
		CallCount int
		Returns   struct {
			EnvID string
			Error error
		}
	}
}

func (*EnvIDGenerator) Generate

func (e *EnvIDGenerator) Generate() (string, error)

type EnvIDManager

type EnvIDManager struct {
	SyncCall struct {
		CallCount int
		Receives  struct {
			State storage.State
			Name  string
		}
		Returns struct {
			State storage.State
			Error error
		}
	}
}

func (*EnvIDManager) Sync

func (e *EnvIDManager) Sync(state storage.State, name string) (storage.State, error)

type EnvironmentValidator

type EnvironmentValidator struct {
	ValidateCall struct {
		CallCount int
		Receives  struct {
			State storage.State
		}
		Returns struct {
			Error error
		}
	}
}

func (*EnvironmentValidator) Validate

func (e *EnvironmentValidator) Validate(state storage.State) error

type Executable

type Executable struct {
	RunCall struct {
		CallCount int
		Stub      func() error
		Returns   struct {
			Error error
		}
	}
}

func (*Executable) Run

func (e *Executable) Run() error

type FancySSHKeyGetter

type FancySSHKeyGetter struct {
	JumpboxGetCall struct {
		CallCount int
		Returns   struct {
			PrivateKey string
			Error      error
		}
	}
	DirectorGetCall struct {
		CallCount int
		Returns   struct {
			PrivateKey string
			Error      error
		}
	}
}

func (*FancySSHKeyGetter) Get

func (s *FancySSHKeyGetter) Get(deployment string) (string, error)

type FileIO

type FileIO struct {
	TempFileCall struct {
		CallCount int
		Receives  struct {
			Dir    string
			Prefix string
		}
		Returns struct {
			File  afero.File
			Error error
		}
	}

	TempDirCall struct {
		CallCount int
		Receives  struct {
			Dir    string
			Prefix string
		}
		Returns struct {
			Name  string
			Error error
		}
	}

	GetTempDirCall struct {
		CallCount int
		Receives  struct {
			Dir string
		}
		Returns struct {
			Name string
		}
	}

	ReadFileCall struct {
		CallCount int
		Fake      func(string) ([]byte, error)
		Receives  struct {
			Filename string
		}
		Returns struct {
			Contents []byte
			Error    error
		}
	}

	WriteFileCall struct {
		CallCount int
		Receives  []WriteFileReceive
		Returns   []WriteFileReturn
	}

	StatCall struct {
		CallCount int
		Fake      func(string) (os.FileInfo, error)
		Receives  struct {
			Name string
		}
		Returns struct {
			FileInfo os.FileInfo
			Error    error
		}
	}

	ExistsCall struct {
		CallCount int
		Receives  struct {
			Path string
		}
		Returns struct {
			Bool  bool
			Error error
		}
	}

	RenameCall struct {
		CallCount int
		Receives  struct {
			Oldpath string
			Newpath string
		}
		Returns struct {
			Error error
		}
	}

	ChtimesCall struct {
		CallCount int
		Receives  struct {
			ATime   time.Time
			ModTime time.Time
			// contains filtered or unexported fields
		}
		Returns struct {
			Error error
		}
	}

	RemoveCall struct {
		CallCount int
		Receives  []RemoveReceive
		Returns   []RemoveReturn
	}

	RemoveAllCall struct {
		CallCount int
		Receives  []RemoveAllReceive
		Returns   []RemoveAllReturn
	}

	ReadDirCall struct {
		CallCount int
		Receives  struct {
			Dirname string
		}
		Returns struct {
			FileInfos []os.FileInfo
			Error     error
		}
	}

	MkdirAllCall struct {
		CallCount int
		Receives  struct {
			Dir  string
			Perm os.FileMode
		}
		Returns struct {
			Error error
		}
	}
}

func (*FileIO) Chtimes

func (f *FileIO) Chtimes(path string, atime, mtime time.Time) error

func (*FileIO) Exists

func (f *FileIO) Exists(path string) (bool, error)

func (*FileIO) GetTempDir

func (f *FileIO) GetTempDir(dir string) string

func (*FileIO) MkdirAll

func (f *FileIO) MkdirAll(dir string, perm os.FileMode) error

func (*FileIO) ReadDir

func (f *FileIO) ReadDir(dirname string) ([]os.FileInfo, error)

func (*FileIO) ReadFile

func (f *FileIO) ReadFile(filename string) ([]byte, error)

func (*FileIO) Remove

func (f *FileIO) Remove(name string) error

func (*FileIO) RemoveAll

func (f *FileIO) RemoveAll(path string) error

func (*FileIO) Rename

func (f *FileIO) Rename(oldpath, newpath string) error

func (*FileIO) Stat

func (f *FileIO) Stat(name string) (os.FileInfo, error)

func (*FileIO) TempDir

func (f *FileIO) TempDir(dir, prefix string) (string, error)

func (*FileIO) TempFile

func (f *FileIO) TempFile(dir, prefix string) (afero.File, error)

func (*FileIO) WriteFile

func (f *FileIO) WriteFile(filename string, contents []byte, perm os.FileMode) error

type FileInfo

type FileInfo struct {
	FileName string
	Modtime  *time.Time // this is an optional
}

func (FileInfo) IsDir

func (f FileInfo) IsDir() bool

func (FileInfo) ModTime

func (f FileInfo) ModTime() time.Time

func (FileInfo) Mode

func (f FileInfo) Mode() os.FileMode

func (FileInfo) Name

func (f FileInfo) Name() string

func (FileInfo) Size

func (f FileInfo) Size() int64

func (FileInfo) Sys

func (f FileInfo) Sys() interface{}

type FilteredDeleter

type FilteredDeleter struct {
	DeleteCall struct {
		CallCount int
		Receives  struct {
			Filter string
		}
		Returns struct {
			Error error
		}
	}

	ListCall struct {
		CallCount int
		Receives  struct {
			Filter string
		}
	}
}

func (*FilteredDeleter) Delete

func (l *FilteredDeleter) Delete(filter string) error

func (*FilteredDeleter) List

func (l *FilteredDeleter) List(filter string)

type GCPClient

type GCPClient struct {
	ProjectIDCall struct {
		CallCount int
		Returns   struct {
			ProjectID string
		}
	}
	GetProjectCall struct {
		CallCount int
		Returns   struct {
			Project *compute.Project
			Error   error
		}
	}
	SetCommonInstanceMetadataCall struct {
		CallCount int
		Receives  struct {
			Metadata *compute.Metadata
		}
		Returns struct {
			Operation *compute.Operation
			Error     error
		}
	}
	ListInstancesCall struct {
		CallCount int
		Returns   struct {
			InstanceList *compute.InstanceList
			Error        error
		}
	}
	GetZonesCall struct {
		CallCount int
		Receives  struct {
			Region string
		}
		Returns struct {
			Zones []string
			Error error
		}
	}
	GetZoneCall struct {
		CallCount int
		Receives  struct {
			Zone string
		}
		Returns struct {
			Zone  *compute.Zone
			Error error
		}
	}
	GetRegionCall struct {
		CallCount int
		Receives  struct {
			Region string
		}
		Returns struct {
			Region *compute.Region
			Error  error
		}
	}
	GetNetworksCall struct {
		CallCount int
		Receives  struct {
			Name string
		}
		Returns struct {
			NetworkList *compute.NetworkList
			Error       error
		}
	}
}

func (*GCPClient) GetNetworks

func (g *GCPClient) GetNetworks(name string) (*compute.NetworkList, error)

func (*GCPClient) GetProject

func (g *GCPClient) GetProject() (*compute.Project, error)

func (*GCPClient) GetRegion

func (g *GCPClient) GetRegion(region string) (*compute.Region, error)

func (*GCPClient) GetZone

func (g *GCPClient) GetZone(zone string) (*compute.Zone, error)

func (*GCPClient) GetZones

func (g *GCPClient) GetZones(region string) ([]string, error)

func (*GCPClient) ListInstances

func (g *GCPClient) ListInstances() (*compute.InstanceList, error)

func (*GCPClient) ProjectID

func (g *GCPClient) ProjectID() string

func (*GCPClient) SetCommonInstanceMetadata

func (g *GCPClient) SetCommonInstanceMetadata(metadata *compute.Metadata) (*compute.Operation, error)

type GCPClientProvider

type GCPClientProvider struct {
	ClientCall struct {
		CallCount int
		Returns   struct {
			Client gcp.Client
		}
	}
	SetConfigCall struct {
		CallCount int
		Receives  struct {
			ServiceAccountKey string
			ProjectID         string
			Region            string
			Zone              string
		}
		Returns struct {
			Error error
		}
	}
}

func (*GCPClientProvider) Client

func (g *GCPClientProvider) Client() gcp.Client

func (*GCPClientProvider) SetConfig

func (g *GCPClientProvider) SetConfig(serviceAccountKey, projectID, region, zone string) error

type GCPComputeClient

type GCPComputeClient struct {
	ListInstancesCall struct {
		CallCount int
		Receives  struct {
			ProjectID string
			Zone      string
		}
		Returns struct {
			InstanceList *compute.InstanceList
			Error        error
		}
	}
	GetZonesCall struct {
		CallCount int
		Receives  struct {
			Region    string
			ProjectID string
		}
		Returns struct {
			Zones []string
			Error error
		}
	}
	GetZoneCall struct {
		CallCount int
		Receives  struct {
			Zone      string
			ProjectID string
		}
		Returns struct {
			Zone  *compute.Zone
			Error error
		}
	}
	GetRegionCall struct {
		CallCount int
		Receives  struct {
			Region    string
			ProjectID string
		}
		Returns struct {
			Region *compute.Region
			Error  error
		}
	}
	GetNetworksCall struct {
		CallCount int
		Receives  struct {
			Name      string
			ProjectID string
		}
		Returns struct {
			NetworkList *compute.NetworkList
			Error       error
		}
	}
}

func (*GCPComputeClient) GetNetworks

func (g *GCPComputeClient) GetNetworks(name, projectID string) (*compute.NetworkList, error)

func (*GCPComputeClient) GetRegion

func (g *GCPComputeClient) GetRegion(region, projectID string) (*compute.Region, error)

func (*GCPComputeClient) GetZone

func (g *GCPComputeClient) GetZone(zone, projectID string) (*compute.Zone, error)

func (*GCPComputeClient) GetZones

func (g *GCPComputeClient) GetZones(region, projectID string) ([]string, error)

func (*GCPComputeClient) ListInstances

func (g *GCPComputeClient) ListInstances(projectID, zone string) (*compute.InstanceList, error)

type GarbageCollector

type GarbageCollector struct {
	RemoveCall struct {
		CallCount int
		Receives  struct {
			Directory string
		}
		Returns struct {
			Error error
		}
	}
}

func (*GarbageCollector) Remove

func (g *GarbageCollector) Remove(directory string) error

type GenerateReturn

type GenerateReturn struct {
	String string
	Error  error
}

type GuidGenerator

type GuidGenerator struct {
	GenerateCall struct {
		Receives struct {
			CallCount int
		}
		Returns struct {
			Output string
			Error  error
		}
	}
}

func (*GuidGenerator) Generate

func (g *GuidGenerator) Generate() (string, error)

type HostKeyGetter

type HostKeyGetter struct {
	GetCall struct {
		CallCount int
		Receives  struct {
			PrivateKey string
			ServerURL  string
		}
		Returns struct {
			HostKey ssh.PublicKey
			Error   error
		}
	}
}

func (*HostKeyGetter) Get

func (h *HostKeyGetter) Get(privateKey, serverURL string) (ssh.PublicKey, error)

type Import

type Import struct {
	Addr string
	ID   string
}

type InputGenerator

type InputGenerator struct {
	GenerateCall struct {
		CallCount int
		Receives  struct {
			State storage.State
		}
		Returns struct {
			Inputs map[string]interface{}
			Error  error
		}
	}
	CredentialsCall struct {
		CallCount int
		Receives  struct {
			State storage.State
		}
		Returns struct {
			Credentials map[string]string
		}
	}
}

func (*InputGenerator) Credentials

func (i *InputGenerator) Credentials(state storage.State) map[string]string

func (*InputGenerator) Generate

func (i *InputGenerator) Generate(state storage.State) (map[string]interface{}, error)

type LBArgsHandler

type LBArgsHandler struct {
	GetLBStateCall struct {
		CallCount int
		Returns   struct {
			LB    storage.LB
			Error error
		}
		Receives struct {
			IAAS string
			Args commands.LBArgs
		}
	}
	MergeCall struct {
		CallCount int
		Returns   struct {
			LB storage.LB
		}
		Receives struct {
			New storage.LB
			Old storage.LB
		}
	}
}

func (*LBArgsHandler) GetLBState

func (c *LBArgsHandler) GetLBState(iaas string, args commands.LBArgs) (storage.LB, error)

func (*LBArgsHandler) Merge

func (c *LBArgsHandler) Merge(new storage.LB, old storage.LB) storage.LB

type LBs

type LBs struct {
	Name        string
	ExecuteCall struct {
		CallCount int
		Receives  struct {
			SubcommandFlags []string
			State           storage.State
		}
		Returns struct {
			Error error
		}
	}
}

func (*LBs) Execute

func (u *LBs) Execute(subcommandFlags []string, state storage.State) error

type Logger

type Logger struct {
	StepCall struct {
		CallCount int
		Receives  struct {
			Message   string
			Arguments []interface{}
		}
		Messages []string
	}

	DotCall struct {
		CallCount int
	}

	PrintfCall struct {
		CallCount int
		Receives  struct {
			Message   string
			Arguments []interface{}
		}
		Messages []string
	}

	PrintlnCall struct {
		CallCount int
		Stub      func(string)
		Receives  struct {
			Message string
		}
		Messages []string
	}

	PromptCall struct {
		CallCount int
		Receives  struct {
			Message string
		}
		Returns struct {
			Proceed bool
		}
	}
	// contains filtered or unexported fields
}

func (*Logger) Dot

func (l *Logger) Dot()

func (*Logger) Printf

func (l *Logger) Printf(message string, a ...interface{})

func (*Logger) Println

func (l *Logger) Println(message string)

func (*Logger) PrintlnMessages

func (l *Logger) PrintlnMessages() []string

func (*Logger) Prompt

func (l *Logger) Prompt(message string) bool

func (*Logger) Step

func (l *Logger) Step(message string, a ...interface{})

type NetworkClient

type NetworkClient struct {
	CheckExistsCall struct {
		CallCount int
		Receives  struct {
			Name string
		}
		Returns struct {
			Exists bool
			Error  error
		}
	}
}

func (*NetworkClient) CheckExists

func (n *NetworkClient) CheckExists(name string) (bool, error)

type NetworkDeletionValidator

type NetworkDeletionValidator struct {
	ValidateSafeToDeleteCall struct {
		CallCount int
		Returns   struct {
			Error error
		}
		Receives struct {
			NetworkName string
			EnvID       string
		}
	}
}

func (*NetworkDeletionValidator) ValidateSafeToDelete

func (n *NetworkDeletionValidator) ValidateSafeToDelete(networkName string, envID string) error

type NetworkInstancesChecker

type NetworkInstancesChecker struct {
	ValidateSafeToDeleteCall struct {
		CallCount int
		Returns   struct {
			Error error
		}
		Receives struct {
			NetworkName string
		}
	}
}

func (*NetworkInstancesChecker) ValidateSafeToDelete

func (n *NetworkInstancesChecker) ValidateSafeToDelete(networkName string) error

type PatchDetector

type PatchDetector struct {
	FindCall struct {
		CallCount int
		Returns   struct {
			Error error
		}
	}
}

func (*PatchDetector) Find

func (p *PatchDetector) Find() error

type PathFinder

type PathFinder struct {
	CommandExistsCall struct {
		CallCount int
		Receives  struct {
			Command string
		}
		Returns struct {
			Exists bool
		}
	}
}

func (*PathFinder) CommandExists

func (p *PathFinder) CommandExists(command string) bool

type Plan

type Plan struct {
	CheckFastFailsCall struct {
		CallCount int
		Receives  struct {
			SubcommandFlags []string
			State           storage.State
		}
		Returns struct {
			Error error
		}
	}
	ParseArgsCall struct {
		CallCount int
		Receives  struct {
			Args  []string
			State storage.State
		}
		Returns struct {
			Config commands.PlanConfig
			Error  error
		}
	}
	ExecuteCall struct {
		CallCount int
		Receives  struct {
			Args  []string
			State storage.State
		}
		Returns struct {
			Error error
		}
	}
	InitializePlanCall struct {
		CallCount int
		Receives  struct {
			Plan  commands.PlanConfig
			State storage.State
		}
		Returns struct {
			State storage.State
			Error error
		}
	}
	IsInitializedCall struct {
		CallCount int
		Receives  struct {
			State storage.State
		}
		Returns struct {
			IsInitialized bool
		}
	}
}

func (*Plan) CheckFastFails

func (p *Plan) CheckFastFails(subcommandFlags []string, state storage.State) error

func (*Plan) Execute

func (p *Plan) Execute(args []string, state storage.State) error

func (*Plan) InitializePlan

func (p *Plan) InitializePlan(plan commands.PlanConfig, state storage.State) (storage.State, error)

func (*Plan) IsInitialized

func (p *Plan) IsInitialized(state storage.State) bool

func (*Plan) ParseArgs

func (p *Plan) ParseArgs(args []string, state storage.State) (commands.PlanConfig, error)

type RandomPort

type RandomPort struct {
	GetPortCall struct {
		CallCount int
		Returns   struct {
			Port  string
			Error error
		}
	}
}

func (*RandomPort) GetPort

func (r *RandomPort) GetPort() (string, error)

type Reader

type Reader struct {
	ReadCall struct {
		Returns struct {
			Error error
		}
	}
}

func (*Reader) Read

func (r *Reader) Read([]byte) (int, error)

type RemoveAllReceive

type RemoveAllReceive struct {
	Path string
}

type RemoveAllReturn

type RemoveAllReturn struct {
	Error error
}

type RemoveReceive

type RemoveReceive struct {
	Name string
}

type RemoveReturn

type RemoveReturn struct {
	Error error
}

type SSHCLI

type SSHCLI struct {
	RunCall struct {
		CallCount int
		Receives  [][]string
		Returns   []error
	}

	StartCall struct {
		CallCount int
		Receives  [][]string
		Returns   []SSHStartReturn
	}
}

func (*SSHCLI) Run

func (s *SSHCLI) Run(args []string) error

func (*SSHCLI) Start

func (s *SSHCLI) Start(args []string) (*exec.Cmd, error)

type SSHKeyDeleter

type SSHKeyDeleter struct {
	DeleteCall struct {
		CallCount int
		Returns   struct {
			Error error
		}
	}
}

func (*SSHKeyDeleter) Delete

func (s *SSHKeyDeleter) Delete() error

type SSHKeyGetter

type SSHKeyGetter struct {
	GetCall struct {
		CallCount int
		Receives  struct {
			Deployment string
		}
		Returns struct {
			PrivateKey string
			Error      error
		}
	}
}

func (*SSHKeyGetter) Get

func (s *SSHKeyGetter) Get(deployment string) (string, error)

type SSHRunReceive

type SSHRunReceive struct {
	Args []string
}

type SSHStartReturn

type SSHStartReturn struct {
	Cmd   *exec.Cmd
	Error error
}

type SetCallReceive

type SetCallReceive struct {
	State storage.State
}

type SetCallReturn

type SetCallReturn struct {
	Error error
}

type Socks5Client

type Socks5Client struct {
	DialCall struct {
		CallCount int
		Stub      func(network, addr string) (net.Conn, error)
		Receives  struct {
			Network string
			Addr    string
		}
		Returns struct {
			Connection net.Conn
			Error      error
		}
	}
}

func (*Socks5Client) Dial

func (s *Socks5Client) Dial(network, addr string) (net.Conn, error)

type Socks5Proxy

type Socks5Proxy struct {
	StartCall struct {
		CallCount int
		Receives  struct {
			Username    string
			PrivateKey  string
			ExternalURL string
		}
		Returns struct {
			Error error
		}
	}
	AddrCall struct {
		CallCount int
		Returns   struct {
			Addr  string
			Error error
		}
	}
}

func (*Socks5Proxy) Addr

func (s *Socks5Proxy) Addr() (string, error)

func (*Socks5Proxy) Start

func (s *Socks5Proxy) Start(username, privateKey, externalURL string) error

type StateBootstrap

type StateBootstrap struct {
	GetStateCall struct {
		CallCount int
		Returns   struct {
			State storage.State
			Error error
		}
		Receives struct {
			Dir string
		}
	}
}

func (*StateBootstrap) GetState

func (s *StateBootstrap) GetState(dir string) (storage.State, error)

type StateMigrator

type StateMigrator struct {
	MigrateCall struct {
		CallCount int
		Receives  struct {
			State storage.State
		}
		Returns struct {
			State storage.State
			Error error
		}
	}
}

func (*StateMigrator) Migrate

func (s *StateMigrator) Migrate(state storage.State) (storage.State, error)

type StateStore

type StateStore struct {
	SetCall struct {
		CallCount int
		Receives  []SetCallReceive
		Returns   []SetCallReturn
	}

	GetCall struct {
		CallCount int
		Receives  struct {
			Dir string
		}
		Returns struct {
			State storage.State
			Error error
		}
	}

	GetCloudConfigDirCall struct {
		CallCount int
		Returns   struct {
			Directory string
			Error     error
		}
	}

	GetStateDirCall struct {
		CallCount int
		Returns   struct {
			Directory string
		}
	}

	GetOldBblDirCall struct {
		CallCount int
		Returns   struct {
			Directory string
			Error     error
		}
	}

	GetTerraformDirCall struct {
		CallCount int
		Returns   struct {
			Directory string
			Error     error
		}
	}

	GetVarsDirCall struct {
		CallCount int
		Returns   struct {
			Directory string
			Error     error
		}
	}

	GetDirectorDeploymentDirCall struct {
		CallCount int
		Returns   struct {
			Directory string
			Error     error
		}
	}

	GetJumpboxDeploymentDirCall struct {
		CallCount int
		Returns   struct {
			Directory string
			Error     error
		}
	}
}

func (*StateStore) GetCloudConfigDir

func (s *StateStore) GetCloudConfigDir() (string, error)

func (*StateStore) GetDirectorDeploymentDir

func (s *StateStore) GetDirectorDeploymentDir() (string, error)

func (*StateStore) GetJumpboxDeploymentDir

func (s *StateStore) GetJumpboxDeploymentDir() (string, error)

func (*StateStore) GetOldBblDir

func (s *StateStore) GetOldBblDir() string

func (*StateStore) GetStateDir

func (s *StateStore) GetStateDir() string

func (*StateStore) GetTerraformDir

func (s *StateStore) GetTerraformDir() (string, error)

func (*StateStore) GetVarsDir

func (s *StateStore) GetVarsDir() (string, error)

func (*StateStore) Set

func (s *StateStore) Set(state storage.State) error

type StateValidator added in v1.2.1

type StateValidator struct {
	ValidateCall struct {
		CallCount int
		Returns   struct {
			Error error
		}
	}
}

func (*StateValidator) Validate added in v1.2.1

func (s *StateValidator) Validate() error

type TemplateGenerator

type TemplateGenerator struct {
	GenerateCall struct {
		CallCount int
		Receives  struct {
			State storage.State
		}
		Returns struct {
			Template string
		}
	}
}

func (*TemplateGenerator) Generate

func (t *TemplateGenerator) Generate(state storage.State) string

type TerraformCLI

type TerraformCLI struct {
	RunCall struct {
		CallCount int
		Stub      func(stdout io.Writer)
		Returns   struct {
			Errors []error
		}
		Initialized bool
		Receives    struct {
			Stdout           io.Writer
			WorkingDirectory string
			Args             []string
			Env              []string
		}
	}
}

func (*TerraformCLI) Run

func (t *TerraformCLI) Run(stdout io.Writer, workingDirectory string, args []string) error

func (*TerraformCLI) RunWithEnv

func (t *TerraformCLI) RunWithEnv(stdout io.Writer, workingDirectory string, args []string, env []string) error

type TerraformExecutor

type TerraformExecutor struct {
	IsInitializedCall struct {
		CallCount int
		Returns   struct {
			IsInitialized bool
		}
	}
	SetupCall struct {
		CallCount int
		Receives  struct {
			Template string
			Inputs   map[string]interface{}
		}
		Returns struct {
			Error error
		}
	}
	InitCall struct {
		CallCount int
		Receives  struct{}
		Returns   struct {
			Error error
		}
	}
	ApplyCall struct {
		CallCount int
		Receives  struct {
			Credentials map[string]string
		}
		Returns struct {
			Error error
		}
	}
	DestroyCall struct {
		CallCount int
		Receives  struct {
			Credentials map[string]string
		}
		Returns struct {
			Error error
		}
	}
	ValidateCall struct {
		CallCount int
		Receives  struct {
			Credentials map[string]string
		}
		Returns struct {
			Error error
		}
	}
	VersionCall struct {
		CallCount int
		Returns   struct {
			Version string
			Error   error
		}
	}
	OutputCall struct {
		Stub      func(string) (string, error)
		CallCount int
		Receives  struct {
			OutputName string
		}
		Returns struct {
			Output string
			Error  error
		}
	}
	OutputsCall struct {
		Stub      func() (map[string]interface{}, error)
		CallCount int
		Returns   struct {
			Outputs map[string]interface{}
			Error   error
		}
	}
	IsPavedCall struct {
		CallCount int
		Returns   struct {
			IsPaved bool
			Error   error
		}
	}
}

func (*TerraformExecutor) Apply

func (t *TerraformExecutor) Apply(credentials map[string]string) error

func (*TerraformExecutor) Destroy

func (t *TerraformExecutor) Destroy(credentials map[string]string) error

func (*TerraformExecutor) Init

func (t *TerraformExecutor) Init() error

func (*TerraformExecutor) IsInitialized

func (t *TerraformExecutor) IsInitialized() bool

func (*TerraformExecutor) IsPaved

func (t *TerraformExecutor) IsPaved() (bool, error)

func (*TerraformExecutor) Output

func (t *TerraformExecutor) Output(outputName string) (string, error)

func (*TerraformExecutor) Outputs

func (t *TerraformExecutor) Outputs() (map[string]interface{}, error)

func (*TerraformExecutor) Setup

func (t *TerraformExecutor) Setup(template string, inputs map[string]interface{}) error

func (*TerraformExecutor) Validate

func (t *TerraformExecutor) Validate(credentials map[string]string) error

func (*TerraformExecutor) Version

func (t *TerraformExecutor) Version() (string, error)

type TerraformManager

type TerraformManager struct {
	InitCall struct {
		CallCount int
		Receives  struct {
			BBLState storage.State
		}
		Returns struct {
			Error error
		}
	}
	SetupCall struct {
		CallCount int
		Receives  struct {
			BBLState storage.State
		}
		Returns struct {
			Error error
		}
	}
	ApplyCall struct {
		CallCount int
		Receives  struct {
			BBLState storage.State
		}
		Returns struct {
			BBLState storage.State
			Error    error
		}
	}
	DestroyCall struct {
		CallCount int
		Receives  struct {
			BBLState storage.State
		}
		Returns struct {
			BBLState storage.State
			Error    error
		}
	}
	ValidateCall struct {
		CallCount int
		Receives  struct {
			BBLState storage.State
		}
		Returns struct {
			BBLState storage.State
			Error    error
		}
	}
	ImportCall struct {
		CallCount int
		Receives  struct {
			BBLState storage.State
			Outputs  map[string]string
		}
		Returns struct {
			BBLState storage.State
			Error    error
		}
	}
	GetOutputsCall struct {
		CallCount int
		Returns   struct {
			Outputs terraform.Outputs
			Error   error
		}
	}
	VersionCall struct {
		CallCount int
		Returns   struct {
			Version string
			Error   error
		}
	}
	ValidateVersionCall struct {
		CallCount int
		Returns   struct {
			Error error
		}
	}
	IsPavedCall struct {
		CallCount int
		Returns   struct {
			IsPaved bool
			Error   error
		}
	}
}

func (*TerraformManager) Apply

func (t *TerraformManager) Apply(bblState storage.State) (storage.State, error)

func (*TerraformManager) Destroy

func (t *TerraformManager) Destroy(bblState storage.State) (storage.State, error)

func (*TerraformManager) GetOutputs

func (t *TerraformManager) GetOutputs() (terraform.Outputs, error)

func (*TerraformManager) Import

func (t *TerraformManager) Import(bblState storage.State, outputs map[string]string) (storage.State, error)

func (*TerraformManager) Init

func (t *TerraformManager) Init(bblState storage.State) error

func (*TerraformManager) IsPaved

func (t *TerraformManager) IsPaved() (bool, error)

func (*TerraformManager) Setup

func (t *TerraformManager) Setup(bblState storage.State) error

func (*TerraformManager) Validate

func (t *TerraformManager) Validate(bblState storage.State) (storage.State, error)

func (*TerraformManager) ValidateVersion

func (t *TerraformManager) ValidateVersion() error

func (*TerraformManager) Version

func (t *TerraformManager) Version() (string, error)

type UUIDGenerator

type UUIDGenerator struct {
	GenerateCall struct {
		Returns   []GenerateReturn
		CallCount int
	}
}

func (*UUIDGenerator) Generate

func (u *UUIDGenerator) Generate() (string, error)

type Up

type Up struct {
	CheckFastFailsCall struct {
		CallCount int
		Receives  struct {
			SubcommandFlags []string
			State           storage.State
		}
		Returns struct {
			Error error
		}
	}
	ParseArgsCall struct {
		CallCount int
		Receives  struct {
			Args  []string
			State storage.State
		}
		Returns struct {
			Config commands.PlanConfig
			Error  error
		}
	}
	ExecuteCall struct {
		CallCount int
		Receives  struct {
			Args  []string
			State storage.State
		}
		Returns struct {
			Error error
		}
	}
}

func (*Up) CheckFastFails

func (u *Up) CheckFastFails(subcommandFlags []string, state storage.State) error

func (*Up) Execute

func (u *Up) Execute(args []string, state storage.State) error

func (*Up) ParseArgs

func (u *Up) ParseArgs(args []string, state storage.State) (commands.PlanConfig, error)

type UpCmd

type UpCmd struct {
	ExecuteCall struct {
		CallCount int
		Receives  struct {
			State storage.State
		}
		Returns struct {
			State storage.State
			Error error
		}
	}
}

func (*UpCmd) Execute

func (u *UpCmd) Execute(state storage.State) (storage.State, error)

type Usage

type Usage struct {
	PrintCall struct {
		CallCount int
	}

	PrintCommandUsageCall struct {
		CallCount int
		Receives  struct {
			Command string
			Message string
		}
	}
}

func (*Usage) Print

func (u *Usage) Print()

func (*Usage) PrintCommandUsage

func (u *Usage) PrintCommandUsage(command, message string)

type VPCStatusChecker

type VPCStatusChecker struct {
	ValidateSafeToDeleteCall struct {
		CallCount int
		Receives  struct {
			VPCID string
			EnvID string
		}
		Returns struct {
			Error error
		}
	}
}

func (*VPCStatusChecker) ValidateSafeToDelete

func (v *VPCStatusChecker) ValidateSafeToDelete(vpcID, envID string) error

type WriteFileReceive

type WriteFileReceive struct {
	Filename string
	Contents []byte
	Mode     os.FileMode
}

type WriteFileReturn

type WriteFileReturn struct {
	Error error
}

type Zones

type Zones struct {
	GetCall struct {
		CallCount int
		Receives  struct {
			Region string
		}
		Returns struct {
			Zones []string
			Error error
		}
	}
}

func (*Zones) Get

func (z *Zones) Get(region string) ([]string, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL