Documentation
¶
Index ¶
- type CliConfig
- type ConfigStore
- type ConnectCommand
- type ConnectConfig
- type ConnectivityService
- type DestroyCommand
- type DestroyConfig
- type HttpConnectivityServiceOptionSetter
- type HttpConnectivityServiceOptions
- type InitCommand
- type InitConfig
- type SsmTunnellerOptions
- type TerraformVars
- type Tunneller
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CliConfig ¶
type CliConfig struct {
ConnectConfig *ConnectConfig `arg:"subcommand:connect" help:"Connect to a funcie deployment to allow local development."`
InitConfig *InitConfig `arg:"subcommand:init" help:"Initialize a new funcie deployment."`
DestroyConfig *DestroyConfig `arg:"subcommand:destroy" help:"Destroy an existing funcie deployment."`
Environment string `arg:"--env" help:"Funcie environment used if multiple deployments are present." default:"default"`
Region string `arg:"env:AWS_REGION" help:"AWS region to use for deployments; otherwise uses the default AWS CLI region."`
// contains filtered or unexported fields
}
CliConfig provides user input parameters specific to the CLI tool.
func NewCliConfig ¶
type ConfigStore ¶
type ConfigStore interface {
// GetConfigValue retrieves the value of a configuration key.
GetConfigValue(ctx context.Context, key string) (string, error)
}
ConfigStore retrieves dynamic configuration values on-demand.
func NewConfigStore ¶
func NewConfigStore(config *CliConfig, ssmClient funcAws.SsmClient) ConfigStore
NewConfigStore creates a new ConfigStore.
type ConnectCommand ¶
type ConnectCommand struct {
// contains filtered or unexported fields
}
func NewConnectCommand ¶
func NewConnectCommand( cliConfig *CliConfig, configStore ConfigStore, connectClient aws2.SsmClient, tunneller Tunneller, connectivityService ConnectivityService, ) *ConnectCommand
type ConnectConfig ¶
type ConnectConfig struct {
RemoteHost string `arg:"--remote-host,-r" help:"Override the remote host to connect to instead of the Redis default."`
RemotePort int `arg:"--remote-port,-p" help:"Override the remote port to bind to." default:"6379"`
LocalPort int `arg:"--local-port,-l" help:"Override the local port to bind to." default:"6379"`
}
type ConnectivityService ¶
type ConnectivityService interface {
// WaitForConnectivity waits for the given endpoint to be reachable, or the context to be done.
WaitForConnectivity(ctx context.Context, endpoint string) error
}
ConnectivityService provides utilities for testing / awaiting internet connectivity.
func NewHttpConnectivityService ¶
func NewHttpConnectivityService(opts ...HttpConnectivityServiceOptionSetter) ConnectivityService
NewHttpConnectivityService creates a new HttpConnectivityService with optional settings.
type DestroyCommand ¶
type DestroyCommand struct {
// contains filtered or unexported fields
}
func NewDestroyCommand ¶
func NewDestroyCommand( cliConfig *CliConfig, terraformClient tools.TerraformClient, ) *DestroyCommand
type DestroyConfig ¶
type DestroyConfig struct {
}
type HttpConnectivityServiceOptionSetter ¶
type HttpConnectivityServiceOptionSetter func(*HttpConnectivityServiceOptions)
func WithRetryInterval ¶
func WithRetryInterval(interval time.Duration) HttpConnectivityServiceOptionSetter
WithRetryInterval sets the retry interval for the HttpConnectivityService.
type InitCommand ¶
type InitCommand struct {
// contains filtered or unexported fields
}
func NewInitCommand ¶
func NewInitCommand( cliConfig *CliConfig, resourceList aws.ResourceLister, gitClient tools.GitClient, terraformClient tools.TerraformClient, dockerClient tools.DockerClient, ) *InitCommand
type InitConfig ¶
type InitConfig struct {
}
type SsmTunnellerOptions ¶
type SsmTunnellerOptions struct {
// Output is the output of the StartSession API call.
Output *ssm.StartSessionOutput
// InstanceID is the EC2 instance ID of the target instance.
InstanceID string
}
SsmTunnellerOptions contains the options for OpenTunnel using SSM.
type TerraformVars ¶
type Tunneller ¶
type Tunneller interface {
// OpenTunnel starts a tunnel to a remote host using the provider-specific options.
OpenTunnel(ctx context.Context, opts interface{}) error
}
Tunneller is an interface for creating a tunnel to a remote host.
func NewSsmTunneller ¶
NewSsmTunneller creates a new WebhookTunnel.
Source Files
¶
Click to show internal directories.
Click to hide internal directories.