Adds check for existing yum process during the legacy minor update

Checks for an existing /var/run/yum.pid and exit 1 with an error
message saying why.

Change-Id: I374eeb4164a8007ae67fea2796eac109fffdef97
Closes-Bug: 1704131
This commit is contained in:
marios 2017-07-13 16:11:13 +03:00
parent 156ed04010
commit 839c0b1116
2 changed files with 15 additions and 1 deletions

View File

@ -371,3 +371,15 @@ function fixup_wrong_ipv6_vip {
fi
)
}
# https://bugs.launchpad.net/tripleo/+bug/1704131 guard against yum update
# waiting for an existing process until the heat stack time out
function check_for_yum_lock {
if [[ -f /var/run/yum.pid ]] ; then
ERR="ERROR existing yum.pid detected - can't continue! Please ensure
there is no other package update process for the duration of the minor update
worfklow. Exiting."
echo $ERR
exit 1
fi
}

View File

@ -93,6 +93,7 @@ if [[ "$pacemaker_status" == "active" ]] ; then
fi
else
echo "Upgrading openstack-puppet-modules and its dependencies"
check_for_yum_lock
yum -q -y update openstack-puppet-modules
yum deplist openstack-puppet-modules | awk '/dependency/{print $2}' | xargs yum -q -y update
echo "Upgrading other packages is handled by config management tooling"
@ -102,8 +103,9 @@ fi
command=${command:-update}
full_command="yum -q -y $command $command_arguments"
echo "Running: $full_command"
echo "Running: $full_command"
check_for_yum_lock
result=$($full_command)
return_code=$?
echo "$result"