aboutsummaryrefslogtreecommitdiff
path: root/kolla/docker/nova/nova-api
diff options
context:
space:
mode:
Diffstat (limited to 'kolla/docker/nova/nova-api')
-rw-r--r--kolla/docker/nova/nova-api/Dockerfile.j220
-rw-r--r--kolla/docker/nova/nova-api/extend_start.sh30
2 files changed, 50 insertions, 0 deletions
diff --git a/kolla/docker/nova/nova-api/Dockerfile.j2 b/kolla/docker/nova/nova-api/Dockerfile.j2
new file mode 100644
index 000000000..57846af79
--- /dev/null
+++ b/kolla/docker/nova/nova-api/Dockerfile.j2
@@ -0,0 +1,20 @@
+FROM {{ namespace }}/{{ image_prefix }}nova-base:{{ tag }}
+{% block labels %}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}"
+{% endblock %}
+
+{% block nova_api_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% set nova_api_packages = [
+] %}
+{{ macros.install_packages(nova_api_packages | customizable("packages")) }}
+
+COPY extend_start.sh /usr/local/bin/kolla_nova_extend_start
+RUN chmod 644 /usr/local/bin/kolla_nova_extend_start
+
+{{ macros.kolla_patch_sources() }}
+
+{% block nova_api_footer %}{% endblock %}
+{% block footer %}{% endblock %}
diff --git a/kolla/docker/nova/nova-api/extend_start.sh b/kolla/docker/nova/nova-api/extend_start.sh
new file mode 100644
index 000000000..ead6c252b
--- /dev/null
+++ b/kolla/docker/nova/nova-api/extend_start.sh
@@ -0,0 +1,30 @@
+#!/bin/bash
+
+# TODO(dszumski): When Nova Conductor in Kolla Ansible supports triggering DB
+# operations, we should review this script and remove any duplicate
+# operations. This is probably anything that isn't to do with the API.
+
+# 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
+ nova-manage api_db sync
+ nova-manage db sync --local_cell
+ nova-manage db online_data_migrations
+ exit 0
+fi
+
+if [[ "${!KOLLA_UPGRADE[@]}" ]]; then
+ nova-manage api_db sync
+ nova-manage db sync --local_cell
+ exit 0
+fi
+
+if [[ "${!KOLLA_OSM[@]}" ]]; then
+ nova-manage db online_data_migrations
+ exit 0
+fi
+
+if [[ "${!KOLLA_UPGRADE_CHECK[@]}" ]]; then
+ nova-status upgrade check
+ exit $?
+fi