price

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: Mar 19, 2020 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	URL         = "https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AmazonEC2/current/index.json"
	URL_VERSION = "https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AmazonEC2/index.json"

	HOURLY_TERM_CODE = "JRTCKXETXF"
	RATE_CODE        = "6YS6EN2CT7"

	REQUIRED_TERM           = "OnDemand"
	REQUIRED_TENANCY        = "Shared"
	REQUIRED_PRODUCT_FAMILY = "Compute Instance"
	REQUIRED_OS             = "Linux"
	REQUIRED_LICENSE_MODEL  = "No License required"
	REQUIRED_USAGE          = "BoxUsage:*"
	REQUIRED_PREINSTALLEDSW = "NA"

	CACHED_PRICING = CachedEc2Pricing{
					// contains filtered or unexported fields
	}
)
View Source
var (
	REGIONS = map[string]string{
		"us-east-1":      "US East (N. Virginia)",
		"us-east-2":      "US East (Ohio)",
		"us-west-1":      "US West (N. California)",
		"us-west-2":      "US West (Oregon)",
		"ca-central-1":   "Canada (Central)",
		"eu-west-1":      "EU (Ireland)",
		"eu-central-1":   "EU (Frankfurt)",
		"eu-west-2":      "EU (London)",
		"ap-northeast-1": "Asia Pacific (Tokyo)",
		"ap-northeast-2": "Asia Pacific (Seoul)",
		"ap-southeast-1": "Asia Pacific (Singapore)",
		"ap-southeast-2": "Asia Pacific (Sydney)",
		"ap-south-1":     "Asia Pacific (Mumbai)",
		"sa-east-1":      "South America",
	}
)

Functions

func NewPricing

func NewPricing(region string) (*ec2Pricing, error)

Types

type CachedEc2Pricing

type CachedEc2Pricing struct {
	// contains filtered or unexported fields
}

type Ec2Product

type Ec2Product struct {
	Sku           string `json:sku`
	ProductFamily string `json:productFamily`
	Attributes    struct {
		Location        string `json:location`
		InstanceType    string `json:instanceType`
		Tenancy         string `json:tenancy`
		OperatingSystem string `json:operatingSystem`
		LicenseModel    string `json:licenseModel`
		UsageType       string `json:usagetype`
		PreInstalledSw  string `json:preInstalledSw`
	}
}

func (*Ec2Product) InstanceType

func (ep *Ec2Product) InstanceType() string

type Instance

type Instance struct {
	Region string  `json:"region"`
	Type   string  `json:"type"`
	Price  float64 `json:"price"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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