1 heat_template_version: 2014-10-16
4 Example extra config for cluster config
5 this example deploys a random string to all controller and compute
6 nodes, showing how data may be shared amongst nodes, vs the
7 other ExtraConfig interfaces which act only on individual nodes.
9 # Parameters passed from the parent template - note if you maintain
10 # out-of-tree templates they may require additional parameters if the
11 # in-tree templates add a new role.
19 objectstorage_servers:
23 # Note extra parameters can be defined, then passed data via the
24 # environment parameter_defaults, without modifying the parent template
29 type: OS::Heat::RandomString
32 type: OS::Heat::SoftwareConfig
39 echo $random_value > /root/random_value
41 RandomDeploymentsController:
42 type: OS::Heat::SoftwareDeployments
44 servers: {get_param: controller_servers}
45 config: {get_resource: RandomConfig}
46 actions: ['CREATE'] # Only do this on CREATE
48 random_value: {get_attr: [Random, value]}
50 RandomDeploymentsCompute:
51 type: OS::Heat::SoftwareDeployments
53 servers: {get_param: compute_servers}
54 config: {get_resource: RandomConfig}
55 actions: ['CREATE'] # Only do this on CREATE
57 random_value: {get_attr: [Random, value]}
60 # This value should change if the configuration data has changed
61 # It is used to e.g re-apply puppet after hieradata values change.
63 value: {get_attr: [Random, value]}