CloudFormation Compatible Resource Types

AWS::AutoScaling::AutoScalingGroup

Properties

AvailabilityZones : List

Not Implemented.

Required property.

Cooldown : String

Cooldown period, in seconds.

Optional property.

DesiredCapacity : Number

Desired initial number of instances.

Optional property.

HealthCheckGracePeriod : Integer

Note

Not implemented.
HealthCheckType : String

Note

Not implemented.
LaunchConfigurationName : String

Name of LaunchConfiguration resource.

Required property.

LoadBalancerNames : List

List of LoadBalancer resources.

Optional property.

MaxSize : String

Maximum number of instances in the group.

Required property.

MinSize : String

Minimum number of instances in the group.

Required property.

Tags : List

Tags to attach to this group.

Optional property.

List contents:
* : Map

Optional property.

Map properties:
Key : String
Required property.
Value : String
Required property.
VPCZoneIdentifier : List

List of VPC subnet identifiers.

Optional property.

Attributes

InstanceList
A comma-delimited list of server ip addresses. (Heat extension).

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::AutoScaling::AutoScalingGroup
    properties:
      AvailabilityZones: [Value, Value, ...]
      Cooldown: String
      DesiredCapacity: Number
      LaunchConfigurationName: String
      LoadBalancerNames: [Value, Value, ...]
      MaxSize: String
      MinSize: String
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      VPCZoneIdentifier: [Value, Value, ...]

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::AutoScaling::AutoScalingGroup
    Properties:
      AvailabilityZones: [Value, Value, ...]
      Cooldown: String
      DesiredCapacity: Number
      LaunchConfigurationName: String
      LoadBalancerNames: [Value, Value, ...]
      MaxSize: String
      MinSize: String
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      VPCZoneIdentifier: [Value, Value, ...]

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::AutoScaling::AutoScalingGroup",
      "Properties": {
        "AvailabilityZones": [Value, Value, ...],
        "Cooldown": String,
        "DesiredCapacity": Number,
        "LaunchConfigurationName": String,
        "LoadBalancerNames": [Value, Value, ...],
        "MaxSize": String,
        "MinSize": String,
        "Tags": [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...],
        "VPCZoneIdentifier": [Value, Value, ...]
      }
    }
  }
}

AWS::AutoScaling::LaunchConfiguration

Properties

BlockDeviceMappings : String

Note

Not implemented.
ImageId : String

Glance image ID or name.

Required property.

InstanceType : String

Nova instance type (flavor).

Required property.

KernelId : String

Note

Not implemented.
KeyName : String

Optional Nova keypair name.

Optional property.

NovaSchedulerHints : List

Scheduler hints to pass to Nova (Heat extension).

Optional property.

List contents:
* : Map

Optional property.

Map properties:
Key : String
Required property.
Value : String
Required property.
RamDiskId : String

Note

Not implemented.
SecurityGroups : List

Security group names to assign.

Optional property.

UserData : String

User data to pass to instance.

Optional property.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::AutoScaling::LaunchConfiguration
    properties:
      ImageId: String
      InstanceType: String
      KeyName: String
      NovaSchedulerHints: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      SecurityGroups: [Value, Value, ...]
      UserData: String

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::AutoScaling::LaunchConfiguration
    Properties:
      ImageId: String
      InstanceType: String
      KeyName: String
      NovaSchedulerHints: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      SecurityGroups: [Value, Value, ...]
      UserData: String

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::AutoScaling::LaunchConfiguration",
      "Properties": {
        "ImageId": String,
        "InstanceType": String,
        "KeyName": String,
        "NovaSchedulerHints": [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...],
        "SecurityGroups": [Value, Value, ...],
        "UserData": String
      }
    }
  }
}

AWS::AutoScaling::ScalingPolicy

Properties

AdjustmentType : String

Type of adjustment (absolute or percentage).

Required property.

Allowed values: ChangeInCapacity, ExactCapacity, PercentChangeInCapacity

AutoScalingGroupName : String

AutoScaling group name to apply policy to.

Required property.

Cooldown : Number

Cooldown period, in seconds.

Optional property.

ScalingAdjustment : Number

Size of adjustment.

Required property.

Attributes

AlarmUrl
A signed url to handle the alarm. (Heat extension).

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::AutoScaling::ScalingPolicy
    properties:
      AdjustmentType: String
      AutoScalingGroupName: String
      Cooldown: Number
      ScalingAdjustment: Number

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::AutoScaling::ScalingPolicy
    Properties:
      AdjustmentType: String
      AutoScalingGroupName: String
      Cooldown: Number
      ScalingAdjustment: Number

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::AutoScaling::ScalingPolicy",
      "Properties": {
        "AdjustmentType": String,
        "AutoScalingGroupName": String,
        "Cooldown": Number,
        "ScalingAdjustment": Number
      }
    }
  }
}

AWS::CloudFormation::Stack

A Resource representing a child stack to allow composition of templates.

Properties

Parameters : Map

The set of parameters passed to this nested stack.

Optional property.

TemplateURL : String

The URL of a template that specifies the stack to be created as a resource.

Required property.

TimeoutInMinutes : Number

The length of time, in minutes, to wait for the nested stack creation.

Optional property.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::CloudFormation::Stack
    properties:
      Parameters: {...}
      TemplateURL: String
      TimeoutInMinutes: Number

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::CloudFormation::Stack
    Properties:
      Parameters: {...}
      TemplateURL: String
      TimeoutInMinutes: Number

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::CloudFormation::Stack",
      "Properties": {
        "Parameters": {...},
        "TemplateURL": String,
        "TimeoutInMinutes": Number
      }
    }
  }
}

AWS::CloudFormation::WaitCondition

Properties

Count : Number

Optional property.

The value must be at least 1.

Handle : String
Required property.
Timeout : Number

Required property.

The value must be at least 1.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::CloudFormation::WaitCondition
    properties:
      Count: Number
      Handle: String
      Timeout: Number

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::CloudFormation::WaitCondition
    Properties:
      Count: Number
      Handle: String
      Timeout: Number

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::CloudFormation::WaitCondition",
      "Properties": {
        "Count": Number,
        "Handle": String,
        "Timeout": Number
      }
    }
  }
}

AWS::CloudFormation::WaitConditionHandle

the main point of this class is to : have no dependancies (so the instance can reference it) generate a unique url (to be returned in the refernce) then the cfn-signal will use this url to post to and WaitCondition will poll it to see if has been written to.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::CloudFormation::WaitConditionHandle
    properties:
      

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::CloudFormation::WaitConditionHandle
    Properties:
      

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::CloudFormation::WaitConditionHandle",
      "Properties": {
        
      }
    }
  }
}

AWS::EC2::EIP

Properties

Domain : String

Set to “vpc” to have IP address allocation associated to your VPC.

Optional property.

Allowed values: vpc

InstanceId : String

Instance ID to associate with EIP.

Optional property.

Attributes

AllocationId
ID that AWS assigns to represent the allocation of the address for use with Amazon VPC. Returned only for VPC elastic IP addresses.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::EC2::EIP
    properties:
      Domain: String
      InstanceId: String

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::EC2::EIP
    Properties:
      Domain: String
      InstanceId: String

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::EC2::EIP",
      "Properties": {
        "Domain": String,
        "InstanceId": String
      }
    }
  }
}

AWS::EC2::EIPAssociation

Properties

AllocationId : String

Allocation ID for VPC EIP address.

Optional property.

EIP : String

EIP address to associate with instance.

Optional property.

InstanceId : String

Instance ID to associate with EIP specified by EIP property.

Optional property.

NetworkInterfaceId : String

Network interface ID to associate with EIP.

Optional property.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::EC2::EIPAssociation
    properties:
      AllocationId: String
      EIP: String
      InstanceId: String
      NetworkInterfaceId: String

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::EC2::EIPAssociation
    Properties:
      AllocationId: String
      EIP: String
      InstanceId: String
      NetworkInterfaceId: String

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::EC2::EIPAssociation",
      "Properties": {
        "AllocationId": String,
        "EIP": String,
        "InstanceId": String,
        "NetworkInterfaceId": String
      }
    }
  }
}

AWS::EC2::Instance

Properties

AvailabilityZone : String

Availability zone to launch the instance in.

Optional property.

DisableApiTermination : String

Note

Not implemented.
ImageId : String

Glance image ID or name.

Required property.

InstanceType : String

Nova instance type (flavor).

Required property.

KernelId : String

Note

Not implemented.
KeyName : String

Optional Nova keypair name.

Optional property.

Monitoring : Boolean

Note

Not implemented.
NetworkInterfaces : List

Network interfaces to associate with instance.

Optional property.

NovaSchedulerHints : List

Scheduler hints to pass to Nova (Heat extension).

Optional property.

List contents:
* : Map

Optional property.

Map properties:
Key : String
Required property.
Value : String
Required property.
PlacementGroupName : String

Note

Not implemented.
PrivateIpAddress : String

Note

Not implemented.
RamDiskId : String

Note

Not implemented.
SecurityGroupIds : List

Security group IDs to assign.

Optional property.

SecurityGroups : List

Security group names to assign.

Optional property.

SourceDestCheck : Boolean

Note

Not implemented.
SubnetId : String

Subnet ID to launch instance in.

Optional property.

Tags : List

Tags to attach to instance.

Optional property.

List contents:
* : Map

Optional property.

Map properties:
Key : String
Required property.
Value : String
Required property.
Tenancy : String

Note

Not implemented.
UserData : String

User data to pass to instance.

Optional property.

Volumes : List

Volumes to attach to instance.

Optional property.

Attributes

AvailabilityZone
The Availability Zone where the specified instance is launched.
PrivateDnsName
Private DNS name of the specified instance.
PrivateIp
Private IP address of the specified instance.
PublicDnsName
Public DNS name of the specified instance.
PublicIp
Public IP address of the specified instance.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::EC2::Instance
    properties:
      AvailabilityZone: String
      ImageId: String
      InstanceType: String
      KeyName: String
      NetworkInterfaces: [Value, Value, ...]
      NovaSchedulerHints: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      SecurityGroupIds: [Value, Value, ...]
      SecurityGroups: [Value, Value, ...]
      SubnetId: String
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      UserData: String
      Volumes: [Value, Value, ...]

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::EC2::Instance
    Properties:
      AvailabilityZone: String
      ImageId: String
      InstanceType: String
      KeyName: String
      NetworkInterfaces: [Value, Value, ...]
      NovaSchedulerHints: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      SecurityGroupIds: [Value, Value, ...]
      SecurityGroups: [Value, Value, ...]
      SubnetId: String
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      UserData: String
      Volumes: [Value, Value, ...]

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::EC2::Instance",
      "Properties": {
        "AvailabilityZone": String,
        "ImageId": String,
        "InstanceType": String,
        "KeyName": String,
        "NetworkInterfaces": [Value, Value, ...],
        "NovaSchedulerHints": [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...],
        "SecurityGroupIds": [Value, Value, ...],
        "SecurityGroups": [Value, Value, ...],
        "SubnetId": String,
        "Tags": [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...],
        "UserData": String,
        "Volumes": [Value, Value, ...]
      }
    }
  }
}

AWS::EC2::InternetGateway

Properties

Tags : List

Optional property.

List contents:
* : Map

Note

Not implemented.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::EC2::InternetGateway
    properties:
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::EC2::InternetGateway
    Properties:
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::EC2::InternetGateway",
      "Properties": {
        "Tags": [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      }
    }
  }
}

AWS::EC2::NetworkInterface

Properties

Description : String
Optional property.
GroupSet : List
Optional property.
PrivateIpAddress : String
Optional property.
SourceDestCheck : Boolean

Note

Not implemented.
SubnetId : String
Required property.
Tags : List

Optional property.

List contents:
* : Map

Note

Not implemented.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::EC2::NetworkInterface
    properties:
      Description: String
      GroupSet: [Value, Value, ...]
      PrivateIpAddress: String
      SubnetId: String
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::EC2::NetworkInterface
    Properties:
      Description: String
      GroupSet: [Value, Value, ...]
      PrivateIpAddress: String
      SubnetId: String
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::EC2::NetworkInterface",
      "Properties": {
        "Description": String,
        "GroupSet": [Value, Value, ...],
        "PrivateIpAddress": String,
        "SubnetId": String,
        "Tags": [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      }
    }
  }
}

AWS::EC2::RouteTable

Properties

Tags : List

Optional property.

List contents:
* : Map

Note

Not implemented.
VpcId : String
Required property.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::EC2::RouteTable
    properties:
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      VpcId: String

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::EC2::RouteTable
    Properties:
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      VpcId: String

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::EC2::RouteTable",
      "Properties": {
        "Tags": [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...],
        "VpcId": String
      }
    }
  }
}

AWS::EC2::SecurityGroup

Properties

GroupDescription : String
Required property.
SecurityGroupEgress : List

Optional property.

List contents:
* : Map

Optional property.

Map properties:
CidrIp : String
Optional property.
FromPort : String
Optional property.
IpProtocol : String
Optional property.
SourceSecurityGroupId : String
Optional property.
SourceSecurityGroupName : String
Optional property.
SourceSecurityGroupOwnerId : String

Note

Not implemented.
ToPort : String
Optional property.
SecurityGroupIngress : List

Optional property.

List contents:
* : Map

Optional property.

Map properties:
CidrIp : String
Optional property.
FromPort : String
Optional property.
IpProtocol : String
Optional property.
SourceSecurityGroupId : String
Optional property.
SourceSecurityGroupName : String
Optional property.
SourceSecurityGroupOwnerId : String

Note

Not implemented.
ToPort : String
Optional property.
VpcId : String
Optional property.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::EC2::SecurityGroup
    properties:
      GroupDescription: String
      SecurityGroupEgress: [{"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, {"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, ...]
      SecurityGroupIngress: [{"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, {"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, ...]
      VpcId: String

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::EC2::SecurityGroup
    Properties:
      GroupDescription: String
      SecurityGroupEgress: [{"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, {"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, ...]
      SecurityGroupIngress: [{"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, {"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, ...]
      VpcId: String

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::EC2::SecurityGroup",
      "Properties": {
        "GroupDescription": String,
        "SecurityGroupEgress": [{"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, {"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, ...],
        "SecurityGroupIngress": [{"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, {"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, ...],
        "VpcId": String
      }
    }
  }
}

AWS::EC2::Subnet

Properties

AvailabilityZone : String
Optional property.
CidrBlock : String
Required property.
Tags : List

Optional property.

List contents:
* : Map

Note

Not implemented.
VpcId : String
Required property.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::EC2::Subnet
    properties:
      AvailabilityZone: String
      CidrBlock: String
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      VpcId: String

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::EC2::Subnet
    Properties:
      AvailabilityZone: String
      CidrBlock: String
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      VpcId: String

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::EC2::Subnet",
      "Properties": {
        "AvailabilityZone": String,
        "CidrBlock": String,
        "Tags": [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...],
        "VpcId": String
      }
    }
  }
}

AWS::EC2::SubnetRouteTableAssocation

Properties

RouteTableId : String
Required property.
SubnetId : String
Required property.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::EC2::SubnetRouteTableAssocation
    properties:
      RouteTableId: String
      SubnetId: String

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::EC2::SubnetRouteTableAssocation
    Properties:
      RouteTableId: String
      SubnetId: String

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::EC2::SubnetRouteTableAssocation",
      "Properties": {
        "RouteTableId": String,
        "SubnetId": String
      }
    }
  }
}

AWS::EC2::VPC

Properties

CidrBlock : String
Optional property.
InstanceTenancy : String

Note

Not implemented.
Tags : List

Optional property.

List contents:
* : Map

Note

Not implemented.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::EC2::VPC
    properties:
      CidrBlock: String
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::EC2::VPC
    Properties:
      CidrBlock: String
      Tags: [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::EC2::VPC",
      "Properties": {
        "CidrBlock": String,
        "Tags": [{"Key": String, "Value": String}, {"Key": String, "Value": String}, ...]
      }
    }
  }
}

AWS::EC2::VPCGatewayAttachment

Properties

InternetGatewayId : String

ID of the InternetGateway.

Optional property.

VpcId : String

VPC ID for this gateway association.

Required property.

VpnGatewayId : String

Note

Not implemented.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::EC2::VPCGatewayAttachment
    properties:
      InternetGatewayId: String
      VpcId: String

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::EC2::VPCGatewayAttachment
    Properties:
      InternetGatewayId: String
      VpcId: String

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::EC2::VPCGatewayAttachment",
      "Properties": {
        "InternetGatewayId": String,
        "VpcId": String
      }
    }
  }
}

AWS::EC2::Volume

Properties

AvailabilityZone : String

The availability zone in which the volume will be created.

Required property.

Size : Number

The size of the volume in GB.

Optional property.

SnapshotId : String

If specified, the backup used as the source to create the volume.

Optional property.

Tags : List

The list of tags to associate with the volume (ignored).

Optional property.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::EC2::Volume
    properties:
      AvailabilityZone: String
      Size: Number
      SnapshotId: String
      Tags: [Value, Value, ...]

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::EC2::Volume
    Properties:
      AvailabilityZone: String
      Size: Number
      SnapshotId: String
      Tags: [Value, Value, ...]

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::EC2::Volume",
      "Properties": {
        "AvailabilityZone": String,
        "Size": Number,
        "SnapshotId": String,
        "Tags": [Value, Value, ...]
      }
    }
  }
}

AWS::EC2::VolumeAttachment

Properties

Device : String

The device where the volume is exposed on the instance.

Required property.

Value must match pattern: /dev/vd[b-z]

InstanceId : String

The ID of the instance to which the volume attaches.

Required property.

VolumeId : String

The ID of the volume to be attached.

Required property.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::EC2::VolumeAttachment
    properties:
      Device: String
      InstanceId: String
      VolumeId: String

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::EC2::VolumeAttachment
    Properties:
      Device: String
      InstanceId: String
      VolumeId: String

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::EC2::VolumeAttachment",
      "Properties": {
        "Device": String,
        "InstanceId": String,
        "VolumeId": String
      }
    }
  }
}

AWS::ElasticLoadBalancing::LoadBalancer

Properties

AppCookieStickinessPolicy : String

Note

Not implemented.
AvailabilityZones : List

The Availability Zones in which to create the load balancer.

Required property.

HealthCheck : Map

An application health check for the instances.

Optional property.

Map properties:
HealthyThreshold : Number

The number of consecutive health probe successes required before moving the instance to the healthy state.

Required property.

Interval : Number

The approximate interval, in seconds, between health checks of an individual instance.

Required property.

Target : String

The port being checked.

Required property.

Timeout : Number

Health probe timeout, in seconds.

Required property.

UnhealthyThreshold : Number

The number of consecutive health probe failures required before moving the instance to the unhealthy state

Required property.

Instances : List

The list of instance IDs load balanced.

Optional property.

LBCookieStickinessPolicy : String

Note

Not implemented.
Listeners : List

One or more listeners for this load balancer.

Required property.

List contents:
* : Map

Optional property.

Map properties:
InstancePort : Number

TCP port on which the instance server is listening.

Required property.

LoadBalancerPort : Number

The external load balancer port number.

Required property.

PolicyNames : List

Note

Not implemented.
Protocol : String

The load balancer transport protocol to use.

Required property.

Allowed values: TCP, HTTP

SSLCertificateId : String

Note

Not implemented.
SecurityGroups : String

Note

Not implemented.
Subnets : List

Note

Not implemented.

Attributes

CanonicalHostedZoneName
The name of the hosted zone that is associated with the LoadBalancer.
CanonicalHostedZoneNameID
The ID of the hosted zone name that is associated with the LoadBalancer.
DNSName
The DNS name for the LoadBalancer.
SourceSecurityGroup.GroupName
The security group that you can use as part of your inbound rules for your LoadBalancer’s back-end instances.
SourceSecurityGroup.OwnerAlias
Owner of the source security group.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::ElasticLoadBalancing::LoadBalancer
    properties:
      AvailabilityZones: [Value, Value, ...]
      HealthCheck: {"HealthyThreshold": Number, "Interval": Number, "Target": String, "Timeout": Number, "UnhealthyThreshold": Number}
      Instances: [Value, Value, ...]
      Listeners: [{"InstancePort": Number, "Protocol": String, "LoadBalancerPort": Number}, {"InstancePort": Number, "Protocol": String, "LoadBalancerPort": Number}, ...]

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::ElasticLoadBalancing::LoadBalancer
    Properties:
      AvailabilityZones: [Value, Value, ...]
      HealthCheck: {"HealthyThreshold": Number, "Interval": Number, "Target": String, "Timeout": Number, "UnhealthyThreshold": Number}
      Instances: [Value, Value, ...]
      Listeners: [{"InstancePort": Number, "Protocol": String, "LoadBalancerPort": Number}, {"InstancePort": Number, "Protocol": String, "LoadBalancerPort": Number}, ...]

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::ElasticLoadBalancing::LoadBalancer",
      "Properties": {
        "AvailabilityZones": [Value, Value, ...],
        "HealthCheck": {"HealthyThreshold": Number, "Interval": Number, "Target": String, "Timeout": Number, "UnhealthyThreshold": Number},
        "Instances": [Value, Value, ...],
        "Listeners": [{"InstancePort": Number, "Protocol": String, "LoadBalancerPort": Number}, {"InstancePort": Number, "Protocol": String, "LoadBalancerPort": Number}, ...]
      }
    }
  }
}

AWS::IAM::AccessKey

Properties

Serial : Integer

Note

Not implemented.
Status : String

Note

Not implemented.
UserName : String

The name of the user that the new key will belong to.

Required property.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::IAM::AccessKey
    properties:
      UserName: String

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::IAM::AccessKey
    Properties:
      UserName: String

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::IAM::AccessKey",
      "Properties": {
        "UserName": String
      }
    }
  }
}

AWS::IAM::User

Properties

Groups : List

Not Implemented.

Optional property.

LoginProfile : Map

A login profile for the user.

Optional property.

Map properties:
Password : String
Optional property.
Path : String

Not Implemented.

Optional property.

Policies : List

Access policies to apply to the user.

Optional property.

HOT Syntax

heat_template_version: 2013-05-23
...
resources:
  ...
  the_resource:
    type: AWS::IAM::User
    properties:
      Groups: [Value, Value, ...]
      LoginProfile: {"Password": String}
      Path: String
      Policies: [Value, Value, ...]

YAML Syntax

HeatTemplateFormatVersion: '2012-12-12'
...
Resources:
  ...
  TheResource:
    Type: AWS::IAM::User
    Properties:
      Groups: [Value, Value, ...]
      LoginProfile: {"Password": String}
      Path: String
      Policies: [Value, Value, ...]

JSON Syntax

{
  "AWSTemplateFormatVersion" : "2010-09-09",
  ...
  "Resources" : {
    "TheResource": {
      "Type": "AWS::IAM::User",
      "Properties": {
        "Groups": [Value, Value, ...],
        "LoginProfile": {"Password": String},
        "Path": String,
        "Policies": [Value, Value, ...]
      }
    }
  }
}

Table Of Contents

Previous topic

OpenStack Resource Types

Next topic

Rackspace Cloud Resource Types

This Page