tripleo-heat-templates/firstboot/userdata_dev_rsync.yaml
Jiri Stransky 91e80992d4 Firstboot rsync for development purposes
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
2015-05-04 15:47:58 +02:00

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}