Documentation ¶
Index ¶
- Constants
- func AddInternetGateway(client *ec2.Client, vID string, igID string)
- func AddRoute(c context.Context, api types.CreateRouteAPI, input *ec2.CreateRouteInput) (*ec2.CreateRouteOutput, error)
- func AddRouteTable(c context.Context, api types.AssociateRouteTableAPI, ...) (*ec2.AssociateRouteTableOutput, error)
- func AttachInternetGateway(c context.Context, api types.AttachInternetGatewayAPI, ...) (*ec2.AttachInternetGatewayOutput, error)
- func ChangeSubnet(c context.Context, api types.ModifySubnetAttributeAPI, ...) (*ec2.ModifySubnetAttributeOutput, error)
- func CreateInternetGateway(client *ec2.Client, projectName string) string
- func DeleteInstances(c context.Context, api types.TerminateInstancesAPI, ...) (*ec2.TerminateInstancesOutput, error)
- func DeleteInternetGateway(c context.Context, api types.DeleteInternetGatewayAPI, ...) (*ec2.DeleteInternetGatewayOutput, error)
- func DeleteKeyPair(c context.Context, api types.DeleteKeyPairAPI, input *ec2.DeleteKeyPairInput) (*ec2.DeleteKeyPairOutput, error)
- func DeleteRouteTable(c context.Context, api types.DeleteRouteTableAPI, ...) (*ec2.DeleteRouteTableOutput, error)
- func DeleteSecurityGroup(c context.Context, api types.DeleteSecurityGroupAPI, ...) (*ec2.DeleteSecurityGroupOutput, error)
- func DeleteSubnet(c context.Context, api types.DeleteSubnetAPI, input *ec2.DeleteSubnetInput) (*ec2.DeleteSubnetOutput, error)
- func DeleteVpc(c context.Context, api types.DeleteVpcAPI, input *ec2.DeleteVpcInput) (*ec2.DeleteVpcOutput, error)
- func DescribeRouteTables(c context.Context, api types.DescribeRouteTablesAPI, ...) (*ec2.DescribeRouteTablesOutput, error)
- func DetachInternetGateway(c context.Context, api types.DetachInternetGatewayAPI, ...) (*ec2.DetachInternetGatewayOutput, error)
- func DisassociateRouteTable(c context.Context, api types.DisassociateRouteTableAPI, ...) (*ec2.DisassociateRouteTableOutput, error)
- func DownloadObject(s3Config types.S3WorkspacePersistenceRemoteConfiguration, filename string, ...) error
- func GetDefaultAMI(region string) string
- func GetEC2Client(remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration) *ec2.Client
- func GetHyperName(i types.Instance) string
- func GetHyperdriveInstances(remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration) ([]types.Instance, error)
- func GetInstanceForStudy(studyName string, remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration) (types.Instance, error)
- func GetInstances(c context.Context, api hyperdriveTypes.EC2DescribeInstancesAPI, ...) (*ec2.DescribeInstancesOutput, error)
- func GetInternetGatewayID(r *ec2.DescribeInternetGatewaysOutput, projectName string) string
- func GetInternetGateways(c context.Context, api types.DescribeInternetGatewaysAPI, ...) (*ec2.DescribeInternetGatewaysOutput, error)
- func GetKeyPairs(c context.Context, api types.DescribeKeyPairsAPI, ...) (*ec2.DescribeKeyPairsOutput, error)
- func GetSecurityGroupId(r *ec2.DescribeSecurityGroupsOutput, projectName string) string
- func GetSecurityGroups(c context.Context, api types.DescribeSecurityGroupsAPI, ...) (*ec2.DescribeSecurityGroupsOutput, error)
- func GetSubnetID(r *ec2.DescribeSubnetsOutput, projectName string) string
- func GetSubnets(c context.Context, api types.DescribeSubnetsAPI, ...) (*ec2.DescribeSubnetsOutput, error)
- func GetSyncManger(s3Config types.S3WorkspacePersistenceRemoteConfiguration) *s3sync.Manager
- func GetVpcId(r *ec2.DescribeVpcsOutput) string
- func GetVpcs(c context.Context, api types.DescribeVpcsAPI, input *ec2.DescribeVpcsInput) (*ec2.DescribeVpcsOutput, error)
- func ImportKeyPair(c context.Context, api types.ImportKeyPairAPI, input *ec2.ImportKeyPairInput) (*ec2.ImportKeyPairOutput, error)
- func IsHyperdriveInstance(i types.Instance) bool
- func IsStructureEmpty(i types.Instance) bool
- func IsStudyInstance(i types.Instance, studyName string) bool
- func ListServers(remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration)
- func MakeInstance(c context.Context, api types.EC2CreateInstanceAPI, ...) (*ec2.RunInstancesOutput, error)
- func MakeInternetGateway(c context.Context, api types.CreateInternetGatewayAPI, ...) (*ec2.CreateInternetGatewayOutput, error)
- func MakeKeyPair(c context.Context, api types.CreateKeyPairAPI, input *ec2.CreateKeyPairInput) (*ec2.CreateKeyPairOutput, error)
- func MakeRouteTable(c context.Context, api types.CreateRouteTableAPI, ...) (*ec2.CreateRouteTableOutput, error)
- func MakeSecurityGroup(c context.Context, api types.CreateSecurityGroupAPI, ...) (*ec2.CreateSecurityGroupOutput, error)
- func MakeSecurityGroupPermissions(c context.Context, api types.AddSecurityGroupPermissionsAPI, ...) (*ec2.AuthorizeSecurityGroupIngressOutput, error)
- func MakeSubnet(c context.Context, api types.CreateSubnetAPI, input *ec2.CreateSubnetInput) (*ec2.CreateSubnetOutput, error)
- func MakeVpc(c context.Context, api types.CreateVpcAPI, input *ec2.CreateVpcInput) (*ec2.CreateVpcOutput, error)
- func StartHyperpackageEC2(manifestPath string, remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration, ...)
- func StartJupyterEC2(manifestPath string, remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration, ...)
- func StartServer(manifestPath string, remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration, ...) string
- func StopServer(manifestPath string, remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration)
- func SyncDirectory(s3Config types.S3WorkspacePersistenceRemoteConfiguration, srcPath string, ...)
- func UserHomeDir() string
- func WriteFileToEC2(instanceIp string, remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration, ...)
- func WritePublicKey(client *ec2.Client, keyName string, projectName string, publicKeyBytes []byte) error
- type EC2Type
Constants ¶
View Source
const HYPERDRIVE_NAME_TAG string = "hyperdrive-name"
View Source
const HYPERDRIVE_SECURITY_GROUP_NAME string = "-SecurityGroup"
View Source
const HYPERDRIVE_TYPE_TAG string = "hyperdrive-type"
View Source
const HYPERDRIVE_VPC_TAG_KEY string = "hyperdrive-vpc"
View Source
const HYPERDRIVE_VPC_TAG_VALUE string = "true"
Variables ¶
This section is empty.
Functions ¶
func AddRoute ¶
func AddRoute(c context.Context, api types.CreateRouteAPI, input *ec2.CreateRouteInput) (*ec2.CreateRouteOutput, error)
func AddRouteTable ¶
func AddRouteTable(c context.Context, api types.AssociateRouteTableAPI, input *ec2.AssociateRouteTableInput) (*ec2.AssociateRouteTableOutput, error)
func AttachInternetGateway ¶
func AttachInternetGateway(c context.Context, api types.AttachInternetGatewayAPI, input *ec2.AttachInternetGatewayInput) (*ec2.AttachInternetGatewayOutput, error)
func ChangeSubnet ¶
func ChangeSubnet(c context.Context, api types.ModifySubnetAttributeAPI, input *ec2.ModifySubnetAttributeInput) (*ec2.ModifySubnetAttributeOutput, error)
func CreateInternetGateway ¶
func DeleteInstances ¶
func DeleteInstances(c context.Context, api types.TerminateInstancesAPI, input *ec2.TerminateInstancesInput) (*ec2.TerminateInstancesOutput, error)
func DeleteInternetGateway ¶
func DeleteInternetGateway(c context.Context, api types.DeleteInternetGatewayAPI, input *ec2.DeleteInternetGatewayInput) (*ec2.DeleteInternetGatewayOutput, error)
func DeleteKeyPair ¶
func DeleteKeyPair(c context.Context, api types.DeleteKeyPairAPI, input *ec2.DeleteKeyPairInput) (*ec2.DeleteKeyPairOutput, error)
func DeleteRouteTable ¶
func DeleteRouteTable(c context.Context, api types.DeleteRouteTableAPI, input *ec2.DeleteRouteTableInput) (*ec2.DeleteRouteTableOutput, error)
func DeleteSecurityGroup ¶
func DeleteSecurityGroup(c context.Context, api types.DeleteSecurityGroupAPI, input *ec2.DeleteSecurityGroupInput) (*ec2.DeleteSecurityGroupOutput, error)
func DeleteSubnet ¶
func DeleteSubnet(c context.Context, api types.DeleteSubnetAPI, input *ec2.DeleteSubnetInput) (*ec2.DeleteSubnetOutput, error)
func DeleteVpc ¶
func DeleteVpc(c context.Context, api types.DeleteVpcAPI, input *ec2.DeleteVpcInput) (*ec2.DeleteVpcOutput, error)
func DescribeRouteTables ¶
func DescribeRouteTables(c context.Context, api types.DescribeRouteTablesAPI, input *ec2.DescribeRouteTablesInput) (*ec2.DescribeRouteTablesOutput, error)
func DetachInternetGateway ¶
func DetachInternetGateway(c context.Context, api types.DetachInternetGatewayAPI, input *ec2.DetachInternetGatewayInput) (*ec2.DetachInternetGatewayOutput, error)
func DisassociateRouteTable ¶
func DisassociateRouteTable(c context.Context, api types.DisassociateRouteTableAPI, input *ec2.DisassociateRouteTableInput) (*ec2.DisassociateRouteTableOutput, error)
func DownloadObject ¶
func DownloadObject(s3Config types.S3WorkspacePersistenceRemoteConfiguration, filename string, key string) error
func GetDefaultAMI ¶
func GetEC2Client ¶
func GetEC2Client(remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration) *ec2.Client
func GetHyperName ¶
func GetHyperdriveInstances ¶
func GetHyperdriveInstances(remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration) ([]types.Instance, error)
func GetInstanceForStudy ¶
func GetInstanceForStudy(studyName string, remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration) (types.Instance, error)
func GetInstances ¶
func GetInstances(c context.Context, api hyperdriveTypes.EC2DescribeInstancesAPI, input *ec2.DescribeInstancesInput) (*ec2.DescribeInstancesOutput, error)
func GetInternetGatewayID ¶
func GetInternetGatewayID(r *ec2.DescribeInternetGatewaysOutput, projectName string) string
func GetInternetGateways ¶
func GetInternetGateways(c context.Context, api types.DescribeInternetGatewaysAPI, input *ec2.DescribeInternetGatewaysInput) (*ec2.DescribeInternetGatewaysOutput, error)
func GetKeyPairs ¶
func GetKeyPairs(c context.Context, api types.DescribeKeyPairsAPI, input *ec2.DescribeKeyPairsInput) (*ec2.DescribeKeyPairsOutput, error)
func GetSecurityGroupId ¶
func GetSecurityGroupId(r *ec2.DescribeSecurityGroupsOutput, projectName string) string
func GetSecurityGroups ¶
func GetSecurityGroups(c context.Context, api types.DescribeSecurityGroupsAPI, input *ec2.DescribeSecurityGroupsInput) (*ec2.DescribeSecurityGroupsOutput, error)
func GetSubnetID ¶
func GetSubnetID(r *ec2.DescribeSubnetsOutput, projectName string) string
func GetSubnets ¶
func GetSubnets(c context.Context, api types.DescribeSubnetsAPI, input *ec2.DescribeSubnetsInput) (*ec2.DescribeSubnetsOutput, error)
func GetSyncManger ¶
func GetSyncManger(s3Config types.S3WorkspacePersistenceRemoteConfiguration) *s3sync.Manager
func GetVpcId ¶
func GetVpcId(r *ec2.DescribeVpcsOutput) string
func GetVpcs ¶
func GetVpcs(c context.Context, api types.DescribeVpcsAPI, input *ec2.DescribeVpcsInput) (*ec2.DescribeVpcsOutput, error)
func ImportKeyPair ¶
func ImportKeyPair(c context.Context, api types.ImportKeyPairAPI, input *ec2.ImportKeyPairInput) (*ec2.ImportKeyPairOutput, error)
func IsHyperdriveInstance ¶
func IsStructureEmpty ¶
func ListServers ¶
func ListServers(remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration)
func MakeInstance ¶
func MakeInstance(c context.Context, api types.EC2CreateInstanceAPI, input *ec2.RunInstancesInput) (*ec2.RunInstancesOutput, error)
func MakeInternetGateway ¶
func MakeInternetGateway(c context.Context, api types.CreateInternetGatewayAPI, input *ec2.CreateInternetGatewayInput) (*ec2.CreateInternetGatewayOutput, error)
func MakeKeyPair ¶
func MakeKeyPair(c context.Context, api types.CreateKeyPairAPI, input *ec2.CreateKeyPairInput) (*ec2.CreateKeyPairOutput, error)
func MakeRouteTable ¶
func MakeRouteTable(c context.Context, api types.CreateRouteTableAPI, input *ec2.CreateRouteTableInput) (*ec2.CreateRouteTableOutput, error)
func MakeSecurityGroup ¶
func MakeSecurityGroup(c context.Context, api types.CreateSecurityGroupAPI, input *ec2.CreateSecurityGroupInput) (*ec2.CreateSecurityGroupOutput, error)
func MakeSecurityGroupPermissions ¶
func MakeSecurityGroupPermissions(c context.Context, api types.AddSecurityGroupPermissionsAPI, input *ec2.AuthorizeSecurityGroupIngressInput) (*ec2.AuthorizeSecurityGroupIngressOutput, error)
func MakeSubnet ¶
func MakeSubnet(c context.Context, api types.CreateSubnetAPI, input *ec2.CreateSubnetInput) (*ec2.CreateSubnetOutput, error)
func MakeVpc ¶
func MakeVpc(c context.Context, api types.CreateVpcAPI, input *ec2.CreateVpcInput) (*ec2.CreateVpcOutput, error)
func StartHyperpackageEC2 ¶
func StartHyperpackageEC2(manifestPath string, remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration, ec2Type string, amiID string, syncOptions hyperdriveTypes.WorkspaceSyncOptions, dockerOptions hyperdriveTypes.DockerOptions)
func StartJupyterEC2 ¶
func StartJupyterEC2(manifestPath string, remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration, ec2Type string, amiID string, jupyterLaunchOptions hyperdriveTypes.JupyterLaunchOptions, syncOptions hyperdriveTypes.WorkspaceSyncOptions)
func StartServer ¶
func StartServer(manifestPath string, remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration, ec2Type string, amiID string, startupScript string, hostPort int) string
func StopServer ¶
func StopServer(manifestPath string, remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration)
TODO: Refactor this in to a series of smaller, well-named functions for readability
func SyncDirectory ¶
func SyncDirectory(s3Config types.S3WorkspacePersistenceRemoteConfiguration, srcPath string, destPath string)
func UserHomeDir ¶
func UserHomeDir() string
func WriteFileToEC2 ¶
func WriteFileToEC2(instanceIp string, remoteCfg hyperdriveTypes.EC2ComputeRemoteConfiguration, projectName string, filePath string)
Types ¶
Click to show internal directories.
Click to hide internal directories.