Replace NO_ARCHIVE block with single call to rsync
Also attempts to move the workaround for bug #1696283 to before the puppet apply call. Closes-Bug: #1696622 Change-Id: I3a195466a5039e7641e843c11e5436440bfc5a01
This commit is contained in:
parent
2dcad460b3
commit
f600d459f0
@ -190,37 +190,23 @@ def mp_puppet_config((config_volume, puppet_tags, manifest, config_image, volume
|
|||||||
if [ -n "$PUPPET_TAGS" ]; then
|
if [ -n "$PUPPET_TAGS" ]; then
|
||||||
TAGS="--tags \"$PUPPET_TAGS\""
|
TAGS="--tags \"$PUPPET_TAGS\""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# workaround LP1696283
|
||||||
|
mkdir -p /etc/ssh
|
||||||
|
touch /etc/ssh/ssh_known_hosts
|
||||||
|
|
||||||
FACTER_hostname=$HOSTNAME FACTER_uuid=docker /usr/bin/puppet apply --verbose $TAGS /etc/config.pp
|
FACTER_hostname=$HOSTNAME FACTER_uuid=docker /usr/bin/puppet apply --verbose $TAGS /etc/config.pp
|
||||||
|
|
||||||
# Disables archiving
|
# Disables archiving
|
||||||
if [ -z "$NO_ARCHIVE" ]; then
|
if [ -z "$NO_ARCHIVE" ]; then
|
||||||
rm -Rf /var/lib/config-data/${NAME}
|
archivedirs=("/etc" "/root" "/var/lib/ironic/tftpboot" "/var/lib/ironic/httpboot" "/var/www")
|
||||||
|
rsync_srcs=""
|
||||||
# copying etc should be enough for most services
|
for d in "${archivedirs[@]}"; do
|
||||||
mkdir -p /var/lib/config-data/${NAME}/etc
|
if [ -d "$d" ]; then
|
||||||
cp -a /etc/* /var/lib/config-data/${NAME}/etc/
|
rsync_srcs+=" $d"
|
||||||
|
|
||||||
# workaround LP1696283
|
|
||||||
mkdir -p /var/lib/config-data/${NAME}/etc/ssh
|
|
||||||
touch /var/lib/config-data/${NAME}/etc/ssh/ssh_known_hosts
|
|
||||||
|
|
||||||
if [ -d /root/ ]; then
|
|
||||||
cp -a /root/ /var/lib/config-data/${NAME}/root/
|
|
||||||
fi
|
|
||||||
if [ -d /var/lib/ironic/tftpboot/ ]; then
|
|
||||||
mkdir -p /var/lib/config-data/${NAME}/var/lib/ironic/
|
|
||||||
cp -a /var/lib/ironic/tftpboot/ /var/lib/config-data/${NAME}/var/lib/ironic/tftpboot/
|
|
||||||
fi
|
|
||||||
if [ -d /var/lib/ironic/httpboot/ ]; then
|
|
||||||
mkdir -p /var/lib/config-data/${NAME}/var/lib/ironic/
|
|
||||||
cp -a /var/lib/ironic/httpboot/ /var/lib/config-data/${NAME}/var/lib/ironic/httpboot/
|
|
||||||
fi
|
|
||||||
|
|
||||||
# apache services may files placed in /var/www/
|
|
||||||
if [ -d /var/www/ ]; then
|
|
||||||
mkdir -p /var/lib/config-data/${NAME}/var/www
|
|
||||||
cp -a /var/www/* /var/lib/config-data/${NAME}/var/www/
|
|
||||||
fi
|
fi
|
||||||
|
done
|
||||||
|
rsync -a -R --delay-updates --delete-after $rsync_srcs /var/lib/config-data/${NAME}
|
||||||
|
|
||||||
# Write a checksum of the config-data dir, this is used as a
|
# Write a checksum of the config-data dir, this is used as a
|
||||||
# salt to trigger container restart when the config changes
|
# salt to trigger container restart when the config changes
|
||||||
|
Loading…
Reference in New Issue
Block a user