fluxcloud.main.cloud.aws package¶
Submodules¶
fluxcloud.main.cloud.aws.client module¶
-
class
fluxcloud.main.cloud.aws.client.AmazonCloud(**kwargs)[source]¶ Bases:
fluxcloud.main.cloud.base.CloudProviderAn Amazon cloud provider wrapper
-
instances()[source]¶ Use the API to retrieve (and return) instances within a set of regions.
We do a little extra work to add the region attribute to make it accessible for filtering.
-
name= 'aws'¶
-
fluxcloud.main.cloud.aws.instance module¶
-
class
fluxcloud.main.cloud.aws.instance.AmazonInstance(items)[source]¶ Bases:
fluxcloud.main.cloud.base.Instance-
attr_description()[source]¶ Put together a description that looks like Google’s
“208 vCPUs, 5.75 TB RAM”
-
attr_price()[source]¶ Price of an instance, USD per hour.
This will only be populated - a single “Price” if prices are enabled and present for the region.
-
property
name¶
-
-
class
fluxcloud.main.cloud.aws.instance.AmazonInstanceGroup(items)[source]¶ Bases:
fluxcloud.main.cloud.base.InstanceGroupA Google Cloud instance group.
An instance group stores raw data, and allows for query or other interaction over instances.
-
Instance¶
-
add_instance_prices(prices)[source]¶ Add pricing information to instances
We currently are filtering to Linux, OnDemand, and USD per hour. https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/pricing.html
-
filter_region(region)[source]¶ A request to filter down to a specific region regular expression.
The solver cannot handle this.
-
iter_instances()[source]¶ Amazon provides regions together, so here we yield instance data with just one region.
-
name_attribute= 'InstanceType'¶
-
fluxcloud.main.cloud.aws.prices module¶
-
class
fluxcloud.main.cloud.aws.prices.AmazonPrices(items)[source]¶ Bases:
fluxcloud.main.cloud.base.PricesGoogle Compute Engine prices