template中有三个formatversion,第一种是aws的格式,表示这是一个json文件;第二种是heat为了扩展aws并且更好的加入注释,引入的yaml格式文件;第三种是openstack的heat特有的hot格式的头部,也是基于yaml格式的。
- "AWSTemplateFormatVersion": "2010-09-09",
- HeatTemplateFormatVersion: ‘2012-12-12‘
- heat_template_version: 2013-05-23
‘
AWSTemplateFormatVersion‘ 支持的函数
- ‘Fn::FindInMap‘: FindInMap,
- ‘Fn::GetAZs‘: GetAZs,
- ‘Ref‘: Ref,
- ‘Fn::GetAtt‘: GetAtt,
- ‘Fn::Select‘: Select,
- ‘Fn::Join‘: Join,
- ‘Fn::Base64‘: Base64,
‘
HeatTemplateFormatVersion‘ 支持的函数
- ‘Fn::FindInMap‘: FindInMap,
- ‘Fn::GetAZs‘: GetAZs,
- ‘Ref‘: Ref,
- ‘Fn::GetAtt‘: GetAtt,
- ‘Fn::Select‘: Select,
- ‘Fn::Join‘: Join,
- ‘Fn::Split‘: Split,
- ‘Fn::Replace‘: Replace,
- ‘Fn::Base64‘: Base64,
- ‘Fn::MemberListToMap‘: MemberListToMap,
- ‘Fn::ResourceFacade‘: ResourceFacade,
‘heat_template_version‘ 支持的函数
- ‘Fn::GetAZs‘: cfn_funcs.GetAZs,
- ‘get_param‘: GetParam,
- ‘get_resource‘: cfn_funcs.ResourceRef,
- ‘Ref‘: cfn_funcs.Ref,
- ‘get_attr‘: GetAtt,
- ‘Fn::Select‘: cfn_funcs.Select,
- ‘Fn::Join‘: cfn_funcs.Join,
- ‘Fn::Split‘: cfn_funcs.Split,
- ‘str_replace‘: Replace,
- ‘Fn::Replace‘: cfn_funcs.Replace,
- ‘Fn::Base64‘: cfn_funcs.Base64,
- ‘Fn::MemberListToMap‘: cfn_funcs.MemberListToMap,
- ‘resource_facade‘: ResourceFacade,
- ‘Fn::ResourceFacade‘: cfn_funcs.ResourceFacade,
- ‘get_file‘: GetFile,
不同的部分用红色标注出来了。
AWSTemplateFormatVersion和HeatTemplateFormatVersion支持的字段
- ‘AWSTemplateFormatVersion‘,
- ‘HeatTemplateFormatVersion‘,
- ‘Description‘,
- ‘Mappings‘,
- ‘Parameters‘,
- ‘Resources‘,
- ‘Outputs‘
heat_template_version支持的字段:
- ‘heat_template_version‘,
- ‘description‘,
- ‘parameter_groups‘,
- ‘parameters‘,
- ‘resources‘,
- ‘outputs‘,