From ed62fdf8c9a5262659da261e29453c695878c824 Mon Sep 17 00:00:00 2001 From: Mark Duggan Date: Thu, 23 Jul 2015 14:21:14 +0000 Subject: [PATCH] Adding cinder source image Change-Id: I2ec195bc1ed0504244df00de6d7273ac702222c5 Co-authored by: Paul Bourke Partially-Implements: blueprint install-from-source --- docker/centos/source/base/Dockerfile | 11 ++++++++--- .../source/cinder-app/cinder-api/Dockerfile | 9 +++++++++ .../centos/source/cinder-app/cinder-api/build | 1 + .../source/cinder-app/cinder-api/check.sh | 1 + .../cinder-app/cinder-api/config-external.sh | 1 + .../cinder-app/cinder-api/config-internal.sh | 1 + .../source/cinder-app/cinder-api/start.sh | 1 + .../cinder-app/cinder-backup/Dockerfile | 7 +++++++ .../source/cinder-app/cinder-backup/build | 1 + .../cinder-backup/config-external.sh | 1 + .../cinder-backup/config-internal.sh | 1 + .../source/cinder-app/cinder-backup/start.sh | 1 + .../source/cinder-app/cinder-base/.buildinfo | 11 +++++++++++ .../source/cinder-app/cinder-base/Dockerfile | 19 +++++++++++++++++++ .../source/cinder-app/cinder-base/build | 1 + .../cinder-app/cinder-base/config-cinder.sh | 1 + .../source/cinder-app/cinder-data/Dockerfile | 9 +++++++++ .../source/cinder-app/cinder-data/build | 1 + .../cinder-app/cinder-scheduler/Dockerfile | 7 +++++++ .../source/cinder-app/cinder-scheduler/build | 1 + .../cinder-scheduler/config-external.sh | 1 + .../cinder-scheduler/config-internal.sh | 1 + .../cinder-app/cinder-scheduler/start.sh | 1 + .../cinder-app/cinder-volume/Dockerfile | 14 ++++++++++++++ .../source/cinder-app/cinder-volume/build | 1 + .../cinder-volume/config-external.sh | 1 + .../cinder-volume/config-internal.sh | 1 + .../source/cinder-app/cinder-volume/start.sh | 1 + .../source/cinder-app/cinder-volume/tgtd.sh | 1 + .../cinder-volume/volume-group-create.sh | 1 + 30 files changed, 106 insertions(+), 3 deletions(-) create mode 100644 docker/centos/source/cinder-app/cinder-api/Dockerfile create mode 120000 docker/centos/source/cinder-app/cinder-api/build create mode 120000 docker/centos/source/cinder-app/cinder-api/check.sh create mode 120000 docker/centos/source/cinder-app/cinder-api/config-external.sh create mode 120000 docker/centos/source/cinder-app/cinder-api/config-internal.sh create mode 120000 docker/centos/source/cinder-app/cinder-api/start.sh create mode 100644 docker/centos/source/cinder-app/cinder-backup/Dockerfile create mode 120000 docker/centos/source/cinder-app/cinder-backup/build create mode 120000 docker/centos/source/cinder-app/cinder-backup/config-external.sh create mode 120000 docker/centos/source/cinder-app/cinder-backup/config-internal.sh create mode 120000 docker/centos/source/cinder-app/cinder-backup/start.sh create mode 100644 docker/centos/source/cinder-app/cinder-base/.buildinfo create mode 100644 docker/centos/source/cinder-app/cinder-base/Dockerfile create mode 120000 docker/centos/source/cinder-app/cinder-base/build create mode 120000 docker/centos/source/cinder-app/cinder-base/config-cinder.sh create mode 100644 docker/centos/source/cinder-app/cinder-data/Dockerfile create mode 120000 docker/centos/source/cinder-app/cinder-data/build create mode 100644 docker/centos/source/cinder-app/cinder-scheduler/Dockerfile create mode 120000 docker/centos/source/cinder-app/cinder-scheduler/build create mode 120000 docker/centos/source/cinder-app/cinder-scheduler/config-external.sh create mode 120000 docker/centos/source/cinder-app/cinder-scheduler/config-internal.sh create mode 120000 docker/centos/source/cinder-app/cinder-scheduler/start.sh create mode 100644 docker/centos/source/cinder-app/cinder-volume/Dockerfile create mode 120000 docker/centos/source/cinder-app/cinder-volume/build create mode 120000 docker/centos/source/cinder-app/cinder-volume/config-external.sh create mode 120000 docker/centos/source/cinder-app/cinder-volume/config-internal.sh create mode 120000 docker/centos/source/cinder-app/cinder-volume/start.sh create mode 120000 docker/centos/source/cinder-app/cinder-volume/tgtd.sh create mode 120000 docker/centos/source/cinder-app/cinder-volume/volume-group-create.sh diff --git a/docker/centos/source/base/Dockerfile b/docker/centos/source/base/Dockerfile index 781827652b..49078c81e4 100644 --- a/docker/centos/source/base/Dockerfile +++ b/docker/centos/source/base/Dockerfile @@ -3,17 +3,21 @@ MAINTAINER Kolla Project (https://launchpad.net/kolla) # Dependencies required for building/installing source components RUN yum install -y \ + epel-release \ gcc \ git \ libffi-devel \ + libxml2-devel \ + libxslt-devel \ mariadb \ + mysql-devel \ MySQL-python \ openssl \ openssl-devel \ + postgresql-devel \ python-devel \ + python-oslo-policy \ tar \ - libxml2-devel \ - libxslt-devel \ && yum clean all RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py \ @@ -24,7 +28,8 @@ RUN pip install --upgrade \ cachetools \ crudini \ crux \ - pip + pip \ + tox RUN mkdir -p /opt/kolla COPY service_hosts.sh kolla-common.sh /opt/kolla/ diff --git a/docker/centos/source/cinder-app/cinder-api/Dockerfile b/docker/centos/source/cinder-app/cinder-api/Dockerfile new file mode 100644 index 0000000000..8ac5053de7 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-api/Dockerfile @@ -0,0 +1,9 @@ +FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%cinder-base:%%KOLLA_TAG%% +MAINTAINER Kolla Project (https://launchpad.net/kolla) + +RUN pip install python-keystoneclient + +COPY config-internal.sh config-external.sh /opt/kolla/ +COPY ./start.sh ./check.sh / + +CMD ["/start.sh"] diff --git a/docker/centos/source/cinder-app/cinder-api/build b/docker/centos/source/cinder-app/cinder-api/build new file mode 120000 index 0000000000..ec19138031 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-api/build @@ -0,0 +1 @@ +../../../../../tools/build-docker-image \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-api/check.sh b/docker/centos/source/cinder-app/cinder-api/check.sh new file mode 120000 index 0000000000..829110b458 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-api/check.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-api/check.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-api/config-external.sh b/docker/centos/source/cinder-app/cinder-api/config-external.sh new file mode 120000 index 0000000000..5b577f2903 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-api/config-external.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-api/config-external.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-api/config-internal.sh b/docker/centos/source/cinder-app/cinder-api/config-internal.sh new file mode 120000 index 0000000000..d929c89b20 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-api/config-internal.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-api/config-internal.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-api/start.sh b/docker/centos/source/cinder-app/cinder-api/start.sh new file mode 120000 index 0000000000..33182c78cf --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-api/start.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-api/start.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-backup/Dockerfile b/docker/centos/source/cinder-app/cinder-backup/Dockerfile new file mode 100644 index 0000000000..43994f1238 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-backup/Dockerfile @@ -0,0 +1,7 @@ +FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%cinder-base:%%KOLLA_TAG%% +MAINTAINER Kolla Project (https://launchpad.net/kolla) + +COPY ./start.sh /start.sh +COPY config-internal.sh config-external.sh /opt/kolla/ + +CMD ["/start.sh"] diff --git a/docker/centos/source/cinder-app/cinder-backup/build b/docker/centos/source/cinder-app/cinder-backup/build new file mode 120000 index 0000000000..ec19138031 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-backup/build @@ -0,0 +1 @@ +../../../../../tools/build-docker-image \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-backup/config-external.sh b/docker/centos/source/cinder-app/cinder-backup/config-external.sh new file mode 120000 index 0000000000..c80c21a204 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-backup/config-external.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-backup/config-external.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-backup/config-internal.sh b/docker/centos/source/cinder-app/cinder-backup/config-internal.sh new file mode 120000 index 0000000000..5f135c63bb --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-backup/config-internal.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-backup/config-internal.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-backup/start.sh b/docker/centos/source/cinder-app/cinder-backup/start.sh new file mode 120000 index 0000000000..c21a17f09a --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-backup/start.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-backup/start.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-base/.buildinfo b/docker/centos/source/cinder-app/cinder-base/.buildinfo new file mode 100644 index 0000000000..af451be2b2 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-base/.buildinfo @@ -0,0 +1,11 @@ +# Build info specific to this image. All values can be overridden in .buildconf + +COMPONENT=cinder +SOURCE_INSTALL_AVAILABLE=1 +SOURCE_INSTALL_METHOD=curl + +# Used for git install method +: ${CLONE_FROM:=https://github.com/openstack/cinder} + +# Used for curl install method +: ${TARBALL_URI:=http://tarballs.openstack.org/cinder/cinder-master.tar.gz} diff --git a/docker/centos/source/cinder-app/cinder-base/Dockerfile b/docker/centos/source/cinder-app/cinder-base/Dockerfile new file mode 100644 index 0000000000..2c1d33977a --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-base/Dockerfile @@ -0,0 +1,19 @@ +FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%base:%%KOLLA_TAG%% +MAINTAINER Kolla Project (https://launchpad.net/kolla) + +ADD ./cinder.tar / +RUN ln -s /cinder-* /cinder + +RUN cd /cinder \ + && useradd --user-group cinder \ + && pip install -r requirements.txt \ + && pip install /cinder \ + && tox -egenconfig \ + && mkdir /etc/cinder /var/log/cinder \ + && cp -r /cinder/etc/cinder/* /etc/cinder/ \ + && cp /etc/cinder/cinder.conf.sample /etc/cinder/cinder.conf \ + && chown -R cinder: /etc/cinder /var/log/cinder \ + && rm -rf /root/.cache + +COPY config-cinder.sh /opt/kolla/config-cinder.sh + diff --git a/docker/centos/source/cinder-app/cinder-base/build b/docker/centos/source/cinder-app/cinder-base/build new file mode 120000 index 0000000000..ec19138031 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-base/build @@ -0,0 +1 @@ +../../../../../tools/build-docker-image \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-base/config-cinder.sh b/docker/centos/source/cinder-app/cinder-base/config-cinder.sh new file mode 120000 index 0000000000..22722c185b --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-base/config-cinder.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-base/config-cinder.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-data/Dockerfile b/docker/centos/source/cinder-app/cinder-data/Dockerfile new file mode 100644 index 0000000000..117e74da1f --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-data/Dockerfile @@ -0,0 +1,9 @@ +FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%base:%%KOLLA_TAG%% +MAINTAINER Kolla Project (https://launchpad.net/kolla) + +RUN mkdir -p /opt/data +VOLUME [ "/opt/data" ] + +# Command needed to start the data container. +# Note: data containers do not need to be persistent. +CMD ["/bin/true"] diff --git a/docker/centos/source/cinder-app/cinder-data/build b/docker/centos/source/cinder-app/cinder-data/build new file mode 120000 index 0000000000..ec19138031 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-data/build @@ -0,0 +1 @@ +../../../../../tools/build-docker-image \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-scheduler/Dockerfile b/docker/centos/source/cinder-app/cinder-scheduler/Dockerfile new file mode 100644 index 0000000000..43994f1238 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-scheduler/Dockerfile @@ -0,0 +1,7 @@ +FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%cinder-base:%%KOLLA_TAG%% +MAINTAINER Kolla Project (https://launchpad.net/kolla) + +COPY ./start.sh /start.sh +COPY config-internal.sh config-external.sh /opt/kolla/ + +CMD ["/start.sh"] diff --git a/docker/centos/source/cinder-app/cinder-scheduler/build b/docker/centos/source/cinder-app/cinder-scheduler/build new file mode 120000 index 0000000000..ec19138031 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-scheduler/build @@ -0,0 +1 @@ +../../../../../tools/build-docker-image \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-scheduler/config-external.sh b/docker/centos/source/cinder-app/cinder-scheduler/config-external.sh new file mode 120000 index 0000000000..9762490029 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-scheduler/config-external.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-scheduler/config-external.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-scheduler/config-internal.sh b/docker/centos/source/cinder-app/cinder-scheduler/config-internal.sh new file mode 120000 index 0000000000..f3792cd9c4 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-scheduler/config-internal.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-scheduler/config-internal.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-scheduler/start.sh b/docker/centos/source/cinder-app/cinder-scheduler/start.sh new file mode 120000 index 0000000000..a91c95ebda --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-scheduler/start.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-scheduler/start.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-volume/Dockerfile b/docker/centos/source/cinder-app/cinder-volume/Dockerfile new file mode 100644 index 0000000000..83ce3f604e --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-volume/Dockerfile @@ -0,0 +1,14 @@ +FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%cinder-base:%%KOLLA_TAG%% +MAINTAINER Kolla Project (https://launchpad.net/kolla) + +# Install required packages +RUN yum install -y \ + lvm2 \ + scsi-target-utils \ + && yum clean all + +# Add start scripts +COPY tgtd.sh volume-group-create.sh config-internal.sh config-external.sh /opt/kolla/ +COPY start.sh /start.sh + +CMD ["/start.sh"] diff --git a/docker/centos/source/cinder-app/cinder-volume/build b/docker/centos/source/cinder-app/cinder-volume/build new file mode 120000 index 0000000000..ec19138031 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-volume/build @@ -0,0 +1 @@ +../../../../../tools/build-docker-image \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-volume/config-external.sh b/docker/centos/source/cinder-app/cinder-volume/config-external.sh new file mode 120000 index 0000000000..1f6476f2eb --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-volume/config-external.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-volume/config-external.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-volume/config-internal.sh b/docker/centos/source/cinder-app/cinder-volume/config-internal.sh new file mode 120000 index 0000000000..4739be2fc5 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-volume/config-internal.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-volume/config-internal.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-volume/start.sh b/docker/centos/source/cinder-app/cinder-volume/start.sh new file mode 120000 index 0000000000..f79df7c470 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-volume/start.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-volume/start.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-volume/tgtd.sh b/docker/centos/source/cinder-app/cinder-volume/tgtd.sh new file mode 120000 index 0000000000..f0c8855777 --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-volume/tgtd.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-volume/tgtd.sh \ No newline at end of file diff --git a/docker/centos/source/cinder-app/cinder-volume/volume-group-create.sh b/docker/centos/source/cinder-app/cinder-volume/volume-group-create.sh new file mode 120000 index 0000000000..eeeca7063e --- /dev/null +++ b/docker/centos/source/cinder-app/cinder-volume/volume-group-create.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-volume/volume-group-create.sh \ No newline at end of file