kolla/docker/ironic/ironic-api/extend_start.sh
Duong Ha-Quang 93765f9ef0 Apply Ironic rolling upgrade logic
This patchset apply Ironic rolling upgrade logic [1][2]:
- Add ironic-dbsync online_data_migration to ironic-api image.

[1] https://docs.openstack.org/ironic/latest/contributor/rolling-upgrades.html
[2] https://docs.openstack.org/ironic/latest/admin/upgrade-guide.html#rolling-upgrades

Co-Authored-By: Ha Manh Dong <donghm@vn.fujitsu.com>
Change-Id: I14edf639e5120ea9c81252295161b76bc4514cbe
Implements: blueprint apply-service-upgrade-procedure
2018-07-10 08:28:15 +07:00

33 lines
944 B
Bash

#!/bin/bash
# Bootstrap and exit if KOLLA_BOOTSTRAP variable is set. This catches all cases
# of the KOLLA_BOOTSTRAP variable being set, including empty.
if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then
ironic-dbsync upgrade
ironic-dbsync online_data_migrations
exit 0
fi
if [[ "${!KOLLA_UPGRADE[@]}" ]]; then
ironic-dbsync upgrade
exit 0
fi
if [[ "${!KOLLA_OSM[@]}" ]]; then
ironic-dbsync online_data_migrations
exit 0
fi
# Assume the service runs on top of Apache when user is root
if [[ "$(whoami)" == 'root' ]]; then
# NOTE(pbourke): httpd will not clean up after itself in some cases which
# results in the container not being able to restart. (bug #1489676, 1557036)
if [[ "${KOLLA_BASE_DISTRO}" =~ debian|ubuntu ]]; then
# Loading Apache2 ENV variables
. /etc/apache2/envvars
rm -rf /var/run/apache2/*
else
rm -rf /var/run/httpd/* /run/httpd/* /tmp/httpd*
fi
fi