aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docker/glance/glance-api/extend_start.sh18
-rw-r--r--releasenotes/notes/implement-glance-zero-downtime-upgrade-2825a2c76315d23d.yaml5
2 files changed, 23 insertions, 0 deletions
diff --git a/docker/glance/glance-api/extend_start.sh b/docker/glance/glance-api/extend_start.sh
index 3d8d7f512..3363539a5 100644
--- a/docker/glance/glance-api/extend_start.sh
+++ b/docker/glance/glance-api/extend_start.sh
@@ -7,3 +7,21 @@ if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then
glance-manage db_load_metadefs
exit 0
fi
+
+# Migrate database and exit if KOLLA_UPGRADE variable is set. This catches all cases
+# of the KOLLA_UPGRADE variable being set, including empty.
+if [[ "${!KOLLA_UPGRADE[@]}" ]]; then
+ if [[ "${!GLANCE_DB_EXPAND[@]}" ]]; then
+ echo "Expanding database"
+ glance-manage db expand
+ fi
+ if [[ "${!GLANCE_DB_MIGRATE[@]}" ]]; then
+ echo "Migrating database"
+ glance-manage db migrate
+ fi
+ if [[ "${!GLANCE_DB_CONTRACT[@]}" ]]; then
+ echo "Contracting database"
+ glance-manage db contract
+ fi
+ exit 0
+fi
diff --git a/releasenotes/notes/implement-glance-zero-downtime-upgrade-2825a2c76315d23d.yaml b/releasenotes/notes/implement-glance-zero-downtime-upgrade-2825a2c76315d23d.yaml
new file mode 100644
index 000000000..b1c7a7c11
--- /dev/null
+++ b/releasenotes/notes/implement-glance-zero-downtime-upgrade-2825a2c76315d23d.yaml
@@ -0,0 +1,5 @@
+---
+
+features:
+ - |
+ Implement Glance zero-downtime upgrade logic.