Add ExtraConfig example that always runs on update

Some user feedback indicates we need better examples showing how
we can run an extraconfig template, e.g on post-deploy so that it
runs every update, regardless of if a change to the config has
occurred.  We can leverage DeployIdentifier for this, just like with
the puppet deployments.

This can be tested with an example like this:

resource_registry:
  OS::TripleO::NodeExtraConfigPost: tripleo-heat-templates/extraconfig/post_deploy/example_run_on_update.yaml

Change-Id: I45d8f8093ab45c03238ec56651c437128661cb95
This commit is contained in:
Steven Hardy 2016-03-23 14:29:50 +00:00
parent 1dd6de571c
commit 8c0ba4c09e

View File

@ -0,0 +1,39 @@
heat_template_version: 2014-10-16
description: >
Example extra config for post-deployment, this re-runs every update
# Note extra parameters can be defined, then passed data via the
# environment parameter_defaults, without modifying the parent template
parameters:
servers:
type: json
# This is provided via parameter_defaults from tripleoclient
# it changes to a new timestamp every update, so we can use it to
# trigger the deployment to run even though it and the config are
# otherwise unchanged
DeployIdentifier:
type: string
resources:
ExtraConfig:
type: OS::Heat::SoftwareConfig
properties:
group: script
inputs:
- name: deploy_identifier
config: |
#!/bin/sh
echo "extra_update $deploy_identifier" >> /root/extra_update
ExtraDeployments:
type: OS::Heat::SoftwareDeployments
properties:
name: ExtraDeployments
servers: {get_param: servers}
config: {get_resource: ExtraConfig}
# Do this on CREATE/UPDATE (which is actually the default)
actions: ['CREATE', 'UPDATE']
input_values:
deploy_identifier: {get_param: DeployIdentifier}