diff options
Diffstat (limited to 'docker/nova/nova-api')
| -rw-r--r-- | docker/nova/nova-api/Dockerfile.j2 | 18 | ||||
| -rwxr-xr-x | docker/nova/nova-api/config-external.sh | 10 | ||||
| -rwxr-xr-x | docker/nova/nova-api/start.sh | 20 |
3 files changed, 48 insertions, 0 deletions
diff --git a/docker/nova/nova-api/Dockerfile.j2 b/docker/nova/nova-api/Dockerfile.j2 new file mode 100644 index 000000000..b906d1937 --- /dev/null +++ b/docker/nova/nova-api/Dockerfile.j2 @@ -0,0 +1,18 @@ +FROM {{ namespace }}/{{ base_distro }}-{{ install_type }}-nova-base:{{ tag }} +MAINTAINER Kolla Project (https://launchpad.net/kolla) + +{% if install_type == 'binary' %} + {% if base_distro in ['fedora', 'centos', 'oraclelinux'] %} + +RUN yum -y install openstack-nova-api \ + && yum clean all + + {% endif %} +{% endif %} + +COPY start.sh / +COPY config-external.sh /opt/kolla/ + +CMD ["/start.sh"] + +{{ include_footer }} diff --git a/docker/nova/nova-api/config-external.sh b/docker/nova/nova-api/config-external.sh new file mode 100755 index 000000000..d0859893d --- /dev/null +++ b/docker/nova/nova-api/config-external.sh @@ -0,0 +1,10 @@ +#!/bin/bash +SOURCE="/opt/kolla/nova-api/nova.conf" +TARGET="/etc/nova/nova.conf" +OWNER="nova" + +if [[ -f "$SOURCE" ]]; then + cp $SOURCE $TARGET + chown ${OWNER}: $TARGET + chmod 0644 $TARGET +fi diff --git a/docker/nova/nova-api/start.sh b/docker/nova/nova-api/start.sh new file mode 100755 index 000000000..ad25ba65c --- /dev/null +++ b/docker/nova/nova-api/start.sh @@ -0,0 +1,20 @@ +#!/bin/bash +set -o errexit + +CMD="/usr/bin/nova-api" +ARGS="" + +# Loading common functions. +source /opt/kolla/kolla-common.sh + +# Execute config strategy +set_configs + +# 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 + su -s /bin/sh -c "nova-manage db sync" nova + exit 0 +fi + +exec $CMD $ARGS |
