From cbd42ca6e90cca2ff4b84f5e4e46224e6455e8b2 Mon Sep 17 00:00:00 2001 From: Sam Yaple Date: Fri, 28 Aug 2015 12:16:53 +0000 Subject: Move docker_templates to docker dir Updated build.py to reflect this change. Deprecate --template option and make it a noop. Change-Id: I7cd98d1ee684a4c64984a49597159868152683b2 Partially-Implements: blueprint remove-docker-dir --- docker/gnocchi/gnocchi-api/Dockerfile.j2 | 21 ++++++++++++++++++++ docker/gnocchi/gnocchi-api/config-external.sh | 10 ++++++++++ docker/gnocchi/gnocchi-api/start.sh | 21 ++++++++++++++++++++ docker/gnocchi/gnocchi-base/Dockerfile.j2 | 25 ++++++++++++++++++++++++ docker/gnocchi/gnocchi-statsd/Dockerfile.j2 | 18 +++++++++++++++++ docker/gnocchi/gnocchi-statsd/config-external.sh | 10 ++++++++++ docker/gnocchi/gnocchi-statsd/start.sh | 14 +++++++++++++ 7 files changed, 119 insertions(+) create mode 100644 docker/gnocchi/gnocchi-api/Dockerfile.j2 create mode 100644 docker/gnocchi/gnocchi-api/config-external.sh create mode 100755 docker/gnocchi/gnocchi-api/start.sh create mode 100644 docker/gnocchi/gnocchi-base/Dockerfile.j2 create mode 100644 docker/gnocchi/gnocchi-statsd/Dockerfile.j2 create mode 100644 docker/gnocchi/gnocchi-statsd/config-external.sh create mode 100755 docker/gnocchi/gnocchi-statsd/start.sh (limited to 'docker/gnocchi') diff --git a/docker/gnocchi/gnocchi-api/Dockerfile.j2 b/docker/gnocchi/gnocchi-api/Dockerfile.j2 new file mode 100644 index 000000000..9ca70113c --- /dev/null +++ b/docker/gnocchi/gnocchi-api/Dockerfile.j2 @@ -0,0 +1,21 @@ +FROM {{ namespace }}/{{ base_distro }}-{{ install_type }}-gnocchi-base:{{ tag }} +MAINTAINER Kolla Project (https://launchpad.net/kolla) + +{% if install_type == 'binary' %} + {% if base_distro in ['fedora', 'centos', 'oraclelinux'] %} + +RUN yum install -y \ + openstack-gnocchi-api \ + openstack-gnocchi-carbonara \ + openstack-gnocchi-indexer-sqlalchemy \ + && yum clean all + + {% endif %} +{% endif %} + +COPY start.sh / +COPY config-external.sh /opt/kolla/ + +CMD ["/start.sh"] + +{{ include_footer }} diff --git a/docker/gnocchi/gnocchi-api/config-external.sh b/docker/gnocchi/gnocchi-api/config-external.sh new file mode 100644 index 000000000..59639ba63 --- /dev/null +++ b/docker/gnocchi/gnocchi-api/config-external.sh @@ -0,0 +1,10 @@ +#!/bin/bash +SOURCE="/opt/kolla/gnocchi-api/gnocchi-api.conf" +TARGET="/etc/gnocchi/gnocchi-api.conf" +OWNER="gnocchi" + +if [[ -f "$SOURCE" ]]; then + cp $SOURCE $TARGET + chown ${OWNER}: $TARGET + chmod 0644 $TARGET +fi diff --git a/docker/gnocchi/gnocchi-api/start.sh b/docker/gnocchi/gnocchi-api/start.sh new file mode 100755 index 000000000..657368a27 --- /dev/null +++ b/docker/gnocchi/gnocchi-api/start.sh @@ -0,0 +1,21 @@ +#!/bin/bash +set -o errexit + +CMD="/usr/bin/gnocchi-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 "gnocchi-manage db_sync" gnocchi + exit 0 +fi + +exec $CMD $ARGS + diff --git a/docker/gnocchi/gnocchi-base/Dockerfile.j2 b/docker/gnocchi/gnocchi-base/Dockerfile.j2 new file mode 100644 index 000000000..be8840073 --- /dev/null +++ b/docker/gnocchi/gnocchi-base/Dockerfile.j2 @@ -0,0 +1,25 @@ +FROM {{ namespace }}/{{ base_distro }}-{{ install_type }}-base:{{ tag }} +MAINTAINER Kolla Project (https://launchpad.net/kolla) + +{% if install_type == 'binary' %} + +RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \ + && /bin/false + +{% elif install_type == 'source' %} + {% if base_distro in ['ubuntu', 'debian'] %} + +RUN apt-get install -y --no-install-recommends libpq-dev \ + && apt-get clean + + {% endif %} + +ADD gnocchi.tar / +RUN ln -s /gnocchi-* gnocchi \ + && useradd --user-group gnocchi \ + && pip --no-cache-dir install /gnocchi \ + && mkdir -p /etc/gnocchi /var/log/gnocchi /home/gnocchi \ + && cp -r /gnocchi/etc/* /etc/gnocchi/ \ + && chown -R gnocchi: /etc/gnocchi /var/log/gnocchi /home/gnocchi + +{% endif %} diff --git a/docker/gnocchi/gnocchi-statsd/Dockerfile.j2 b/docker/gnocchi/gnocchi-statsd/Dockerfile.j2 new file mode 100644 index 000000000..99f1374a2 --- /dev/null +++ b/docker/gnocchi/gnocchi-statsd/Dockerfile.j2 @@ -0,0 +1,18 @@ +FROM {{ namespace }}/{{ base_distro }}-{{ install_type }}-gnocchi-base:{{ tag }} +MAINTAINER Kolla Project (https://launchpad.net/kolla) + +{% if install_type == 'binary' %} + {% if base_distro in ['fedora', 'centos', 'oraclelinux'] %} + +RUN yum install -y openstack-gnocchi-statsd \ + && yum clean all + + {% endif %} +{% endif %} + +COPY start.sh / +COPY config-external.sh /opt/kolla/ + +CMD ["/start.sh"] + +{{ include_footer }} diff --git a/docker/gnocchi/gnocchi-statsd/config-external.sh b/docker/gnocchi/gnocchi-statsd/config-external.sh new file mode 100644 index 000000000..59639ba63 --- /dev/null +++ b/docker/gnocchi/gnocchi-statsd/config-external.sh @@ -0,0 +1,10 @@ +#!/bin/bash +SOURCE="/opt/kolla/gnocchi-api/gnocchi-api.conf" +TARGET="/etc/gnocchi/gnocchi-api.conf" +OWNER="gnocchi" + +if [[ -f "$SOURCE" ]]; then + cp $SOURCE $TARGET + chown ${OWNER}: $TARGET + chmod 0644 $TARGET +fi diff --git a/docker/gnocchi/gnocchi-statsd/start.sh b/docker/gnocchi/gnocchi-statsd/start.sh new file mode 100755 index 000000000..636e71323 --- /dev/null +++ b/docker/gnocchi/gnocchi-statsd/start.sh @@ -0,0 +1,14 @@ +#!/bin/bash +set -o errexit + +CMD="/usr/bin/gnocchi-statsd" +ARGS="" + +# Loading common functions. +source /opt/kolla/kolla-common.sh + +# Execute config strategy +set_configs + +exec $CMD $ARGS + -- cgit v1.2.3