d9ee847ec1
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
40 lines
1.0 KiB
Bash
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
|
|
|