Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GenerateKeys ¶
func Tunnel ¶
func Tunnel(localPort int, remoteHost EndpointIface, bastionHost EndpointIface) (chan int, error)
Types ¶
type EC2Endpoint ¶
type EC2Endpoint struct {
InstanceID string
Port int
User string
PrivateKey string
PublicKey string
UsePrivate bool
Instance *ec2.Instance
EC2Client ec2iface.EC2API
ConnectClient ec2instanceconnectiface.EC2InstanceConnectAPI
}
func NewEC2Endpoint ¶
func NewEC2Endpoint(InstanceID string, ec2Client ec2iface.EC2API, connectClient ec2instanceconnectiface.EC2InstanceConnectAPI) (*EC2Endpoint, error)
func (*EC2Endpoint) GetSSHConfig ¶
func (e *EC2Endpoint) GetSSHConfig() (*ssh.ClientConfig, error)
func (*EC2Endpoint) String ¶
func (e *EC2Endpoint) String() string
type Endpoint ¶
func NewEndpoint ¶
func (*Endpoint) GetSSHConfig ¶
func (e *Endpoint) GetSSHConfig() (*ssh.ClientConfig, error)
type EndpointIface ¶
type EndpointIface interface {
String() string
GetSSHConfig() (*ssh.ClientConfig, error)
}
type ProfileContainer ¶
type ProfileContainer interface {
GetName() string
Connect(region string) error
GetEC2Service() (ec2iface.EC2API, error)
GetRDSService() (rdsiface.RDSAPI, error)
GetSTSService() (stsiface.STSAPI, error)
GetEC2InstanceConnectService() (ec2instanceconnectiface.EC2InstanceConnectAPI, error)
}
ProfileContainer provides an interface to get an AWS service
type Profiles ¶
type Profiles interface {
GetProfiles() []ProfileContainer
Refresh() error
GetProfile(profile string) ProfileContainer
}
func NewIniConfig ¶
type Tunneller ¶
type Tunneller struct {
// contains filtered or unexported fields
}
func (*Tunneller) TunnelWithContext ¶
Click to show internal directories.
Click to hide internal directories.