Module aws¶
- License: Apache 2.0
- Version: 2.1.0
- Author: Inmanta <code@inmanta.com>
- This module requires compiler version 2017.2 or higher
- Upstream project: https://github.com/inmanta/aws.git
Typedefs¶
-
typedef
aws::direction¶ - Base type
string - Type constraint
((self == 'ingress') or (self == 'egress'))
- Base type
-
typedef
aws::instance_tenancy¶ - Base type
string - Type constraint
(self regex re.compile('^(default|dedicated|host)$'))
- Base type
Entities¶
-
entity
aws::AWSResource¶ Parents:
std::PurgeableResource,std::ManagedResource-
relation aws::Provider
provider[1]¶
-
relation aws::Provider
-
entity
aws::ELB¶ Parents:
aws::AWSResourceAn ELB load balancer
-
attribute number
listen_port=80¶
-
attribute number
dest_port=80¶
-
attribute string
name¶
-
attribute string
security_group='default'¶
-
attribute string
protocol='http'¶
-
relation aws::VirtualMachine
instances[0:*]¶
The following implements statements select implementations for this entity:
-
attribute number
-
entity
aws::GroupRule¶ Parents:
aws::SecurityRule-
relation aws::SecurityGroup
remote_group[1]¶
The following implements statements select implementations for this entity:
-
relation aws::SecurityGroup
-
entity
aws::Host¶ Parents:
aws::VMAttributes,ip::HostA subclass of ip::Host that creates a virtual machine on AWS.
-
relation ip::IP
public_ip[0:1]¶
-
relation aws::SecurityGroup
security_groups[0:*]¶
-
relation ssh::Key
public_key[1]¶
-
relation aws::VirtualMachine
vm[1]¶
-
relation aws::Provider
provider[1]¶
-
relation aws::Subnet
subnet[0:1]¶
-
relation ip::IP
private_ip[1]¶
The following implementations are defined for this entity:
The following implements statements select implementations for this entity:
-
relation ip::IP
-
entity
aws::IPrule¶ Parents:
aws::SecurityRule-
attribute ip::cidr
remote_prefix¶
The following implements statements select implementations for this entity:
-
attribute ip::cidr
-
entity
aws::InternetGateway¶ Parents:
aws::AWSResourceAn Internet gateway for use with a VPC.
-
attribute string
name¶
-
relation aws::VPC
vpc[0:1]¶ other end:
aws::VPC.internet_gateway [0:1]
The following implements statements select implementations for this entity:
-
attribute string
-
entity
aws::Provider¶ Parents:
std::EntityThe configuration to access Amazon Web Services
-
attribute string
availability_zone¶
-
attribute string
region¶
-
attribute bool
auto_agent=True¶
-
attribute string
name¶
-
attribute string
secret_key¶
-
attribute string
access_key¶
The following implementations are defined for this entity:
The following implements statements select implementations for this entity:
std::noneaws::agentConfigconstraintauto_agent
-
attribute string
-
entity
aws::SecurityGroup¶ Parents:
aws::AWSResource-
attribute string
description=''¶
-
attribute string
name¶
-
attribute bool
manage_all=True¶
-
attribute number
retries=10¶ A security group can only be deleted when it is no longer in use. The API confirms the delete of a virtual machine for example, but it might still be in progress. This results in a failure to delete the security group. To speed up deployments, the handler can retry this number of times before skipping the resource.
-
attribute number
wait=5¶ The number of seconds to wait between retries.
-
relation aws::VPC
vpc[1]¶
-
relation aws::SecurityRule
rules[0:*]¶ other end:
aws::SecurityRule.group [1]
The following implements statements select implementations for this entity:
-
attribute string
-
entity
aws::SecurityRule¶ Parents:
std::EntityA filter rule in the a security group
-
attribute ip::protocol
ip_protocol¶ The type of ip protocol to allow. Currently this support tcp/udp/icmp/sctp or all
-
attribute ip::port
port_max=0¶
-
attribute ip::port
port=0¶
-
attribute aws::direction
direction¶
-
attribute ip::port
port_min=0¶
-
relation aws::SecurityGroup
group[1]¶ other end:
aws::SecurityGroup.rules [0:*]
-
attribute ip::protocol
-
entity
aws::Subnet¶ Parents:
aws::AWSResourceA subnet in a vpc
-
string aws::Subnet.availability_zone=<inmanta.execute.util.NoneValue object at 0x7f49a9202320> The Availability Zone for the subnet.
-
attribute ip::cidr
cidr_block¶ The IPv4 network range for the VPC, in CIDR notation. For example, 10.0.0.0/24.
-
attribute string
name¶ The name of the subnet. Inmanta uses this name to idenfiy the subnet. It is set as the name tag on the subnet resource.
-
attribute bool
map_public_ip_on_launch=False¶ Specify true to indicate that network interfaces created in the specified subnet should be assigned a public IPv4 address. This includes a network interface that’s created when launching an instance into the subnet (the instance therefore receives a public IPv4 address).
-
relation aws::VPC
vpc[1]¶ The VPC the subnet is created in.
other end:
aws::VPC.subnets [0:*]
The following implements statements select implementations for this entity:
-
-
entity
aws::VMAttributes¶ Parents:
std::Entity-
attribute string
flavor¶
-
attribute string
user_data¶
-
attribute bool
source_dest_check=True¶
-
string aws::VMAttributes.subnet_id=<inmanta.execute.util.NoneValue object at 0x7f49a92a3cf8>
-
attribute string
image¶
-
attribute string
-
entity
aws::VPC¶ Parents:
aws::AWSResourceA VPC on Amazon
-
attribute ip::cidr
cidr_block¶ The IPv4 network range for the VPC, in CIDR notation. For example, 10.0.0.0/16.
-
attribute string
name¶ The name of the VPC. Inmanta uses this name to idenfiy the vpc. It is set as the name tag on the vpc resource.
-
attribute aws::instance_tenancy
instance_tenancy='default'¶ The tenancy options for instances launched into the VPC. For default , instances are launched with shared tenancy by default. You can launch instances with any tenancy into a shared tenancy VPC. For dedicated , instances are launched as dedicated tenancy instances by default. You can only launch instances with a tenancy of dedicated or host into a dedicated tenancy VPC.
-
attribute bool
enableDnsSupport=False¶
-
attribute bool
enableDnsHostnames=False¶
-
relation aws::InternetGateway
internet_gateway[0:1]¶ other end:
aws::InternetGateway.vpc [0:1]
-
relation aws::Subnet
subnets[0:*]¶ The VPC the subnet is created in.
other end:
aws::Subnet.vpc [1]
The following implements statements select implementations for this entity:
-
attribute ip::cidr
-
entity
aws::VirtualMachine¶ Parents:
aws::VMAttributes,aws::AWSResourceThis entity represents a virtual machine that is hosted on an IaaS
-
attribute string
name¶
-
relation aws::SecurityGroup
security_groups[0:*]¶ The security groups that apply to this vm. If no group is supplied the default security group will be applied by EC2
-
relation ssh::Key
public_key[1]¶
-
relation aws::Volume
volumes[0:*]¶ other end:
aws::Volume.vm [0:1]
-
relation aws::Subnet
subnet[0:1]¶ Boot the vm in this subnet. Either use this relation or provide a subnet id directly.
The following implementations are defined for this entity:
The following implements statements select implementations for this entity:
-
attribute string
-
entity
aws::Volume¶ Parents:
aws::AWSResource-
attribute string
availability_zone¶
-
attribute number
size=10¶
-
attribute string
attachmentpoint='/dev/sdb'¶
-
attribute string
name¶
-
attribute string
volume_type='gp2'¶
-
attribute bool
encrypted=False¶
-
relation aws::VirtualMachine
vm[0:1]¶ other end:
aws::VirtualMachine.volumes [0:*]
The following implements statements select implementations for this entity:
-
attribute string
Implementations¶
-
implementation
aws::agentConfig¶
-
implementation
aws::awsHost¶
-
implementation
aws::req¶
Plugins¶
-
aws.decrypt(key_data: string, cipher_text: string) → string¶
-
aws.elbid(name: string) → string¶
-
aws.get_api_id(provider: aws::Provider, api_name: string) → string¶
Resources¶
-
class
aws.ELB¶ - Amazon Elastic loadbalancer
- Resource for entity
aws::ELB - Id attribute
name - Agent name
provider.name - Handlers
aws.ELBHandler
- Resource for entity
-
class
aws.InternetGateway¶ - Resource for entity
aws::InternetGateway - Id attribute
name - Agent name
provider.name - Handlers
aws.InternetGatewayHandler
- Resource for entity
-
class
aws.SecurityGroup¶ - A security group in an OpenStack tenant
- Resource for entity
aws::SecurityGroup - Id attribute
name - Agent name
provider.name - Handlers
aws.SecurityGroupHandler
- Resource for entity
-
class
aws.Subnet¶ - Resource for entity
aws::Subnet - Id attribute
name - Agent name
provider.name - Handlers
aws.SubnetHandler
- Resource for entity
-
class
aws.VPC¶ - Resource for entity
aws::VPC - Id attribute
name - Agent name
provider.name - Handlers
aws.VPCHandler
- Resource for entity
-
class
aws.VirtualMachine¶ - Resource for entity
aws::VirtualMachine - Id attribute
name - Agent name
provider.name - Handlers
aws.VirtualMachineHandler
- Resource for entity
-
class
aws.Volume¶ - Resource for entity
aws::Volume - Id attribute
name - Agent name
provider.name - Handlers
aws.VolumeHandler
- Resource for entity
Handlers¶
-
class
aws.InternetGatewayHandler¶ - Handler name
ec2 - Handler for entity
aws::InternetGateway
- Handler name
-
class
aws.ELBHandler¶ - This class manages ELB instances on amazon ec2
- Handler name
ec2 - Handler for entity
aws::ELB
- Handler name
-
class
aws.VolumeHandler¶ - Handler name
volume - Handler for entity
aws::Volume
- Handler name
-
class
aws.VirtualMachineHandler¶ - Handler name
ec2 - Handler for entity
aws::VirtualMachine
- Handler name
-
class
aws.SubnetHandler¶ - Handler name
ec2 - Handler for entity
aws::Subnet
- Handler name
-
class
aws.SecurityGroupHandler¶ - Handler name
ec2 - Handler for entity
aws::SecurityGroup
- Handler name