Skip to content

AWS

sky.AWS creates an account descriptor for the aws provider kind. Credentials are read from explicit arguments or the AWS environment/profile. Use name to keep multiple AWS accounts in one daemon.

The adapter needs skyward[aws], which brings aioboto3. Without it the daemon does not register the kind.

import skyward as sky

provider = sky.AWS(name="production", region="us-east-1")

skyward.AWS

Bases: Provider

Amazon EC2, through the fleet API.

Only static keys resolve from ~/.aws/credentials. SSO, assume-role and process credentials need botocore's full chain, which the SDK deliberately does not depend on.

kind = 'aws' class-attribute

access_key_id = None class-attribute instance-attribute

secret_access_key = None class-attribute instance-attribute

session_token = None class-attribute instance-attribute

region = 'us-east-1' class-attribute instance-attribute

ami = None class-attribute instance-attribute

ubuntu_version = '24.04' class-attribute instance-attribute

subnet_id = None class-attribute instance-attribute

security_group_id = None class-attribute instance-attribute

instance_profile_arn = None class-attribute instance-attribute

username = None class-attribute instance-attribute

disk_gb = 100 class-attribute instance-attribute

instance_timeout = 300 class-attribute instance-attribute

request_timeout = 30 class-attribute instance-attribute

allocation_strategy = 'price-capacity-optimized' class-attribute instance-attribute

exclude_burstable = False class-attribute instance-attribute

regions property