data

package
v0.8.2 Latest Latest
Warning

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

Go to latest
Published: Mar 21, 2025 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const ERROR_NO_AMI = "no AMI"

Variables

View Source
var (
	ErrNoDefaultVPC           = fmt.Errorf("no VPC marked as default")
	ErrNoRouteTableBySubnetID = fmt.Errorf("no Route table by association.subnet-id")
)
View Source
var ErrECSClusterNotFound = fmt.Errorf("cluster not found")
View Source
var RegionTimezones = map[string]string{
	"us-east-1":      "America/New_York",
	"us-east-2":      "America/New_York",
	"us-west-1":      "America/Los_Angeles",
	"us-west-2":      "America/Los_Angeles",
	"af-south-1":     "Africa/Johannesburg",
	"ap-east-1":      "Asia/Hong_Kong",
	"ap-south-1":     "Asia/Kolkata",
	"ap-south-2":     "Asia/Kolkata",
	"ap-southeast-1": "Asia/Singapore",
	"ap-southeast-2": "Australia/Sydney",
	"ap-southeast-3": "Asia/Jakarta",
	"ap-southeast-4": "Asia/Manila",
	"ap-northeast-1": "Asia/Tokyo",
	"ap-northeast-2": "Asia/Seoul",
	"ap-northeast-3": "Asia/Tokyo",
	"ca-central-1":   "America/Toronto",
	"eu-central-1":   "Europe/Berlin",
	"eu-central-2":   "Europe/Zurich",
	"eu-north-1":     "Europe/Stockholm",
	"eu-south-1":     "Europe/Rome",
	"eu-south-2":     "Europe/Madrid",
	"eu-west-1":      "Europe/Dublin",
	"eu-west-2":      "Europe/London",
	"eu-west-3":      "Europe/Paris",
	"me-central-1":   "Asia/Riyadh",
	"me-south-1":     "Asia/Dubai",
	"sa-east-1":      "America/Sao_Paulo",
	"il-central-1":   "Asia/Jerusalem",
}

Functions

func DescribeAvailabilityZones

func DescribeAvailabilityZones(regionName string) ([]ec2types.AvailabilityZone, error)

func DescribeAvailabilityZonesAsync

func DescribeAvailabilityZonesAsync(regionName string, c chan AvailabilityZonesResult)

func FilterInstaceTypesOfferedByRegion added in v0.7.2

func FilterInstaceTypesOfferedByRegion(instanceTypes []string, region string) ([]string, error)

Get InstanceTypes offerings on current location

func GetAvailabilityZones

func GetAvailabilityZones() []string

func GetBucketLocation added in v0.8.0

func GetBucketLocation(bucketName string) (*string, error)

func GetBucketLocationFromS3Path added in v0.8.0

func GetBucketLocationFromS3Path(p string) (*string, error)

func GetCluster added in v0.7.4

func GetCluster(clusterName, region string) (*string, error)

func GetDedicatedHost

func GetDedicatedHost(hostID string) (*ec2Types.Host, error)

func GetDedicatedHosts

func GetDedicatedHosts(r DedicatedHostResquest) ([]ec2Types.Host, error)

This function check on all regions for the dedicated host and return the list of hosts matching the request params

func GetInstanceByRegion

func GetInstanceByRegion(r InstanceResquest, regionName string) ([]ec2Types.Instance, error)

func GetRandomAvailabilityZone

func GetRandomAvailabilityZone(region string, excludedAZs []string) (*string, error)

func GetRandomPublicSubnet added in v0.7.4

func GetRandomPublicSubnet(region string) (*string, error)

func GetRegions

func GetRegions() ([]string, error)

func GetRole added in v0.7.4

func GetRole(roleName string) (*string, error)

func GetZoneName

func GetZoneName(azID string, azDescriptions []ec2types.AvailabilityZone) (string, error)

func IsInstanceTypeOfferedByAZ

func IsInstanceTypeOfferedByAZ(region, instanceType, az string) (bool, error)

func IsInstanceTypeOfferedByRegion

func IsInstanceTypeOfferedByRegion(instanceType, region string) (bool, error)

func LokupRegionOfferingInstanceType

func LokupRegionOfferingInstanceType(instanceType string) (*string, error)

Check on all regions which offers the type of instance got one having it

func ValidateS3Path added in v0.8.0

func ValidateS3Path(p string) bool

Types

type AvailabilityZonesResult

type AvailabilityZonesResult struct {
	AvailabilityZones []ec2types.AvailabilityZone
	Err               error
}

type DedicatedHostResquest

type DedicatedHostResquest struct {
	HostID string
	Tags   map[string]string
}

type ImageInfo

type ImageInfo struct {
	Region *string
	Image  *ec2Types.Image
}

func FindAMI

func FindAMI(amiName, amiArch *string) (*ImageInfo, error)

This function check all regions to get the AMI filter by its name it will return the first region where the AMI is offered

func GetAMI

func GetAMI(r ImageRequest) (*ImageInfo, error)

GetAMI based on params defined by request In case multiple AMIs it will return the newest

func IsAMIOffered

func IsAMIOffered(r ImageRequest) (bool, *ImageInfo, error)

IsAMIOffered checks if an ami based on its Name is offered on a specific region

type ImageRequest

type ImageRequest struct {
	Name, Arch, Owner *string
	Region            *string
	BlockDeviceType   *string
}

type InstanceResquest

type InstanceResquest struct {
	Tags map[string]string
}

Jump to

Keyboard shortcuts

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