diff options
| author | Doug Szumski <doug@stackhpc.com> | 2019-07-26 12:20:50 +0000 |
|---|---|---|
| committer | Doug Szumski <doug@stackhpc.com> | 2019-08-20 17:22:40 +0100 |
| commit | b087f058c96be252aa32842f208f766295a2b5ca (patch) | |
| tree | 5b87dfd2ecccae43435dfb4cb1d3b8dd3aa234a1 /docker | |
| parent | 9d80b285594768ac151a8e04c2217a46ece63a2e (diff) | |
| download | kolla-b087f058c96be252aa32842f208f766295a2b5ca.tar.gz kolla-b087f058c96be252aa32842f208f766295a2b5ca.zip | |
Support DB bootstrap from Nova Conductor container
Currently the Nova API container does all the database bootstrapping
for Nova. In a deployment with more than one active cell, it makes
more sense for the conductors to bootstrap their own databases, rather
than have the Nova API container do it. This change adds support for
that. Until the support is actually used, we leave Nova API as-is.
Partially Implements: blueprint support-nova-cells
Change-Id: Id3a78b6838a3aae04f5dd5bd6ec928359297cfd3
Diffstat (limited to 'docker')
| -rw-r--r-- | docker/nova/nova-api/extend_start.sh | 4 | ||||
| -rw-r--r-- | docker/nova/nova-conductor/Dockerfile.j2 | 3 | ||||
| -rw-r--r-- | docker/nova/nova-conductor/extend_start.sh | 17 |
3 files changed, 24 insertions, 0 deletions
diff --git a/docker/nova/nova-api/extend_start.sh b/docker/nova/nova-api/extend_start.sh index 3d958253e..815b62255 100644 --- a/docker/nova/nova-api/extend_start.sh +++ b/docker/nova/nova-api/extend_start.sh @@ -1,5 +1,9 @@ #!/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 diff --git a/docker/nova/nova-conductor/Dockerfile.j2 b/docker/nova/nova-conductor/Dockerfile.j2 index 3f0dd9d76..01cb2f4b8 100644 --- a/docker/nova/nova-conductor/Dockerfile.j2 +++ b/docker/nova/nova-conductor/Dockerfile.j2 @@ -24,6 +24,9 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {% endif %} +COPY extend_start.sh /usr/local/bin/kolla_nova_extend_start +RUN chmod 755 /usr/local/bin/kolla_nova_extend_start + {% block nova_conductor_footer %}{% endblock %} {% block footer %}{% endblock %} diff --git a/docker/nova/nova-conductor/extend_start.sh b/docker/nova/nova-conductor/extend_start.sh new file mode 100644 index 000000000..04cf1411a --- /dev/null +++ b/docker/nova/nova-conductor/extend_start.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then + nova-manage db sync + nova-manage db online_data_migrations + exit 0 +fi + +if [[ "${!KOLLA_UPGRADE[@]}" ]]; then + nova-manage db sync + exit 0 +fi + +if [[ "${!KOLLA_OSM[@]}" ]]; then + nova-manage db online_data_migrations + exit 0 +fi |
