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::AWSResource
An ELB load balancer
-
attribute number
listen_port
=80¶
-
attribute string
protocol
='http'¶
-
attribute number
dest_port
=80¶
-
attribute string
security_group
='default'¶
-
attribute string
name
¶
-
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::Host
A subclass of ip::Host that creates a virtual machine on AWS.
-
relation aws::VirtualMachine
vm
[1]¶
-
relation ip::IP
public_ip
[0:1]¶
-
relation aws::Provider
provider
[1]¶
-
relation aws::Subnet
subnet
[0:1]¶
-
relation aws::SecurityGroup
security_groups
[0:*]¶
-
relation ip::IP
private_ip
[1]¶
-
relation ssh::Key
public_key
[1]¶
The following implementations are defined for this entity:
The following implements statements select implementations for this entity:
-
relation aws::VirtualMachine
-
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::AWSResource
An 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::Entity
The configuration to access Amazon Web Services
-
attribute bool
auto_agent
=True¶
-
attribute string
availability_zone
¶
-
attribute string
name
¶
-
attribute string
region
¶
-
attribute string
access_key
¶
-
attribute string
secret_key
¶
The following implementations are defined for this entity:
The following implements statements select implementations for this entity:
std::none
aws::agentConfig
constraintauto_agent
-
attribute bool
-
entity
aws::SecurityGroup
¶ Parents:
aws::AWSResource
-
attribute string
description
=''¶
-
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 bool
manage_all
=True¶
-
attribute number
wait
=5¶ The number of seconds to wait between retries.
-
attribute string
name
¶
-
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::Entity
A filter rule in the a security group
-
attribute ip::port
port
=0¶
-
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 aws::direction
direction
¶
-
attribute ip::port
port_min
=0¶
-
relation aws::SecurityGroup
group
[1]¶ other end:
aws::SecurityGroup.rules [0:*]
-
attribute ip::port
-
entity
aws::Subnet
¶ Parents:
aws::AWSResource
A subnet in a vpc
-
attribute ip::cidr
cidr_block
¶ The IPv4 network range for the VPC, in CIDR notation. For example, 10.0.0.0/24.
-
string aws::Subnet.availability_zone=<inmanta.execute.util.NoneValue object at 0x7fa196106630>
The Availability Zone for the subnet.
-
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).
-
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.
-
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:
-
attribute ip::cidr
-
entity
aws::VMAttributes
¶ Parents:
std::Entity
-
attribute string
flavor
¶
-
attribute bool
source_dest_check
=True¶
-
attribute string
image
¶
-
string aws::VMAttributes.subnet_id=<inmanta.execute.util.NoneValue object at 0x7fa1961627b8>
-
attribute string
user_data
¶
-
attribute string
-
entity
aws::VPC
¶ Parents:
aws::AWSResource
A VPC on Amazon
-
attribute bool
enableDnsHostnames
=False¶
-
attribute bool
enableDnsSupport
=False¶
-
attribute ip::cidr
cidr_block
¶ The IPv4 network range for the VPC, in CIDR notation. For example, 10.0.0.0/16.
-
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 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.
-
relation aws::Subnet
subnets
[0:*]¶ The VPC the subnet is created in.
other end:
aws::Subnet.vpc [1]
-
relation aws::InternetGateway
internet_gateway
[0:1]¶ other end:
aws::InternetGateway.vpc [0:1]
The following implements statements select implementations for this entity:
-
attribute bool
-
entity
aws::VirtualMachine
¶ Parents:
aws::VMAttributes
,aws::AWSResource
This entity represents a virtual machine that is hosted on an IaaS
-
attribute string
name
¶
-
relation aws::Subnet
subnet
[0:1]¶ Boot the vm in this subnet. Either use this relation or provide a subnet id directly.
-
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]
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 bool
encrypted
=False¶
-
attribute string
volume_type
='gp2'¶
-
attribute string
availability_zone
¶
-
attribute string
attachmentpoint
='/dev/sdb'¶
-
attribute number
size
=10¶
-
attribute string
name
¶
-
relation aws::VirtualMachine
vm
[0:1]¶ other end:
aws::VirtualMachine.volumes [0:*]
The following implements statements select implementations for this entity:
-
attribute bool
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.
SubnetHandler
¶ - Handler name
ec2
- Handler for entity
aws::Subnet
- Handler name
-
class
aws.
InternetGatewayHandler
¶ - Handler name
ec2
- Handler for entity
aws::InternetGateway
- Handler name
-
class
aws.
VirtualMachineHandler
¶ - Handler name
ec2
- Handler for entity
aws::VirtualMachine
- Handler name
-
class
aws.
VolumeHandler
¶ - Handler name
volume
- Handler for entity
aws::Volume
- Handler name
-
class
aws.
SecurityGroupHandler
¶ - Handler name
ec2
- Handler for entity
aws::SecurityGroup
- Handler name