tripleo-heat-templates/extraconfig/all_nodes/random_string.j2.yaml

52 lines
1.5 KiB
YAML

heat_template_version: ocata
description: >
Example extra config for cluster config
this example deploys a random string to all controller and compute
nodes, showing how data may be shared amongst nodes, vs the
other ExtraConfig interfaces which act only on individual nodes.
# Parameters passed from the parent template - note if you maintain
# out-of-tree templates they may require additional parameters if the
# in-tree templates add a new role.
parameters:
servers:
type: json
# Note extra parameters can be defined, then passed data via the
# environment parameter_defaults, without modifying the parent template
resources:
Random:
type: OS::Heat::RandomString
RandomConfig:
type: OS::Heat::SoftwareConfig
properties:
group: script
inputs:
- name: random_value
config: |
#!/bin/sh
echo $random_value > /root/random_value
RandomDeploymentsController:
type: OS::Heat::SoftwareDeployments
properties:
name: RandomDeploymentsController
servers: {get_param: [servers, Controller]}
config: {get_resource: RandomConfig}
actions: ['CREATE'] # Only do this on CREATE
input_values:
random_value: {get_attr: [Random, value]}
RandomDeploymentsCompute:
type: OS::Heat::SoftwareDeployments
properties:
name: RandomDeploymentsCompute
servers: {get_param: [servers, Compute]}
config: {get_resource: RandomConfig}
actions: ['CREATE'] # Only do this on CREATE
input_values:
random_value: {get_attr: [Random, value]}