Heat/AWS-to-OpenStack-resource-mapping-in-templates
< Heat
We want to have non-amazon identifiers for the Heat resource types. These terms would be interchangeable in the template files, e.g. having `AWS::EC2::Instance` or `OS::Nova::Server` would produce the same result.
The original identifiers are in the form of `AWS::<product>::<resource>`. The list tries to use the OpenStack project and resource names where available.
This is the list of proposed names:
AWS::CloudFormation::Stack => OS::Heat::Stack
AWS::CloudFormation::WaitCondition => OS::Heat::WaitCondition
AWS::CloudFormation::WaitConditionHandle => OS::Heat::WaitConditionHandle
AWS::CloudWatch::Alarm => OS::CloudWatch::Alarm
AWS::EC2::EIP => OS::Nova::FloatingIP
AWS::EC2::EIPAssociation => OS::Nova::FloatingIPAssociation
AWS::EC2::Instance => OS::Nova::Server
AWS::EC2::SecurityGroup => OS::Nova::SecurityGroup
AWS::EC2::Volume => OS::Nova::Volume
AWS::EC2::VolumeAttachment => OS::Nova::VolumeAttachment
AWS::ElasticLoadBalancing::LoadBalancer => OS::ElasticLoadBalancing::LoadBalancer
AWS::S3::Bucket => OS::Swift::Container
AWS::IAM::User => OS::Keystone::User
AWS::IAM::AccessKey => OS::Keystone::AccessKey
HEAT::HA::Restarter => OS::Heat::Restarter
AWS::AutoScaling::LaunchConfiguration => OS::AutoScaling::LaunchConfiguration
AWS::AutoScaling::AutoScalingGroup => OS::AutoScaling::AutoScalingGroup
AWS::AutoScaling::ScalingPolicy => OS::AutoScaling::ScalingPolicy
AWS::RDS::DBInstance => OS::RDS::DBInstance
The mapping of resource types and Heat classes is in:
https://github.com/openstack/heat/blob/master/heat/engine/resources/register.py
Once we settle on the final names, we can just add the new entries into the `_resource_classes` dictionary.