91e80992d4
Could be used to e.g. make changes to the puppet modules on the fly without the need to rebuild images. Documented in the template description. Change-Id: I6a1fef20d4f4afa4bedac5ea520949697793f0ed
50 lines
1.3 KiB
YAML
50 lines
1.3 KiB
YAML
heat_template_version: 2014-10-16
|
|
|
|
description: >
|
|
This is first boot configuration for development purposes. It allows
|
|
overriding contents of the deployed images via rsync before
|
|
configuration (e.g. Puppet) starts, speeding up the feedback loop
|
|
between making a change and seeing it applied.
|
|
|
|
To prepare the host, put something like this to /etc/rsyncd.conf:
|
|
|
|
[overcloudsync]
|
|
path = /root/overcloudsync
|
|
comment = overcloud pre-puppet customizations
|
|
|
|
Then run `rsync --daemon`.
|
|
|
|
parameters:
|
|
dev_rsync_host:
|
|
type: string
|
|
default: 192.168.122.1
|
|
description: Host to sync contents from via rsync
|
|
dev_rsync_module:
|
|
type: string
|
|
default: overcloudsync
|
|
description: Name of the module defined in rsyncd.conf on rsync_host
|
|
|
|
resources:
|
|
userdata:
|
|
type: OS::Heat::MultipartMime
|
|
properties:
|
|
parts:
|
|
- config: {get_resource: rsync_config}
|
|
subtype: 'x-shellscript'
|
|
|
|
rsync_config:
|
|
type: OS::Heat::SoftwareConfig
|
|
properties:
|
|
config:
|
|
str_replace:
|
|
template: |
|
|
#!/bin/bash
|
|
rsync -avr rsync://RSYNC_HOST/RSYNC_MODULE /
|
|
params:
|
|
RSYNC_HOST: {get_param: dev_rsync_host}
|
|
RSYNC_MODULE: {get_param: dev_rsync_module}
|
|
|
|
outputs:
|
|
OS::stack_id:
|
|
value: {get_resource: userdata}
|