Jump to: navigation, search

Heat/bp-inputs

Currently, to capture setting values provided at deploy-time, the current CFN complient template format supports the Parameters section for defining the what these values are and some basic constraints around them. In order to move toward a native template format, it is proposed that Heat also support an inputs section that serves a similar purpose but is symmetrical with the Outputs section and in-line with proposed DSL changes. This section would be initially synonymous with the current Parameters and be processed exactly the same.

The following two template snippets would be equivalent (yaml syntax):

Existing template
Parameters:
  KeyName:
    Description: Name of an existing EC2 KeyPair to enable SSH access to the instances
    Type: String
With inputs substituted
inputs:
  KeyName:
    Description: Name of an existing EC2 KeyPair to enable SSH access to the instances
    Type: String

This change is a small increment towards a native, open DSL and should have minimal impact on:

heat.api
heat.engine
heat.common

It is the intent to have current tests pass (no regression) with this change and add new tests to verify that the alternative syntax works.