tripleo-heat-templates/extraconfig/tasks/major_upgrade_object_storage.sh
Jiri Stransky d9ee847ec1 Upgrades: object storage node upgrade fix
The variables in the heredoc should be escaped because they should
evaluate only when the inner script runs, not when the outer "writer"
script runs.

Python-zaqarclient is installed for os-collect-config to work, as we do
on the other node types.

Swift-proxy is removed from list of services to stop/start, as
swift-proxy isn't supposed to run on the swift storage nodes.

Change-Id: I8426b859d11378ebdc3da94dcc090133dab0c628
2016-03-09 15:05:10 +01:00

40 lines
1.0 KiB
Bash

#!/bin/bash
#
# This delivers the swift-storage upgrade script to be invoked as part of the tripleo
# major upgrade workflow.
#
set -eu
UPGRADE_SCRIPT=/root/tripleo_upgrade_node.sh
cat > $UPGRADE_SCRIPT << ENDOFCAT
### DO NOT MODIFY THIS FILE
### This file is automatically delivered to the swift-storage nodes as part of the
### tripleo upgrades workflow
function systemctl_swift {
action=\$1
for S in openstack-swift-account-auditor openstack-swift-account-reaper openstack-swift-account-replicator openstack-swift-account \
openstack-swift-container-auditor openstack-swift-container-replicator openstack-swift-container-updater openstack-swift-container \
openstack-swift-object-auditor openstack-swift-object-replicator openstack-swift-object-updater openstack-swift-object; do
systemctl \$action \$S
done
}
systemctl_swift stop
yum -y install python-zaqarclient # needed for os-collect-config
yum -y update
systemctl_swift start
ENDOFCAT
# ensure the permissions are OK
chmod 0755 $UPGRADE_SCRIPT