diff options
| author | Jenkins <jenkins@review.openstack.org> | 2016-11-09 16:14:34 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2016-11-09 16:14:34 +0000 |
| commit | 7d0403077e73289badbad85996fd360224a1e84e (patch) | |
| tree | c18747f1d4f07618493ddc40cd73f9bf5f76fe3f /docker | |
| parent | 54cc601eedd1d299b345c7e4912798f7a5c2256c (diff) | |
| parent | fabb22d50533b8c8ef09bbf22e9fe34637082aa0 (diff) | |
| download | kolla-7d0403077e73289badbad85996fd360224a1e84e.tar.gz kolla-7d0403077e73289badbad85996fd360224a1e84e.zip | |
Merge "add panko dockerfile"
Diffstat (limited to 'docker')
| -rw-r--r-- | docker/panko/panko-api/Dockerfile.j2 | 25 | ||||
| -rw-r--r-- | docker/panko/panko-api/extend_start.sh | 18 | ||||
| -rw-r--r-- | docker/panko/panko-base/Dockerfile.j2 | 69 | ||||
| -rw-r--r-- | docker/panko/panko-base/extend_start.sh | 10 |
4 files changed, 122 insertions, 0 deletions
diff --git a/docker/panko/panko-api/Dockerfile.j2 b/docker/panko/panko-api/Dockerfile.j2 new file mode 100644 index 000000000..0ef0de233 --- /dev/null +++ b/docker/panko/panko-api/Dockerfile.j2 @@ -0,0 +1,25 @@ +FROM {{ namespace }}/{{ image_prefix }}panko-base:{{ tag }} +MAINTAINER {{ maintainer }} + +{% block panko_api_header %}{% endblock %} + +{% import "macros.j2" as macros with context %} + +{% if install_type == 'binary' %} + {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %} + {% set panko_api_packages = ['openstack-panko-api'] %} + {% elif base_distro in ['ubuntu'] %} + +RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \ + && /bin/false + + {% endif %} +{{ macros.install_packages(panko_api_packages | customizable("packages")) }} +{% endif %} + +COPY extend_start.sh /usr/local/bin/kolla_panko_extend_start +RUN chmod 755 /usr/local/bin/kolla_panko_extend_start + +{% block panko_api_footer %}{% endblock %} +{% block footer %}{% endblock %} +{{ include_footer }} diff --git a/docker/panko/panko-api/extend_start.sh b/docker/panko/panko-api/extend_start.sh new file mode 100644 index 000000000..cf3cc3bd4 --- /dev/null +++ b/docker/panko/panko-api/extend_start.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +# NOTE(pbourke): httpd will not clean up after itself in some cases which +# results in the container not being able to restart. (bug #1489676, 1557036) +if [[ "${KOLLA_BASE_DISTRO}" =~ debian|ubuntu ]]; then + # Loading Apache2 ENV variables + source /etc/apache2/envvars + rm -rf /var/run/apache2/* +else + rm -rf /var/run/httpd/* /run/httpd/* /tmp/httpd* +fi + +# 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 + panko-dbsync + exit 0 +fi diff --git a/docker/panko/panko-base/Dockerfile.j2 b/docker/panko/panko-base/Dockerfile.j2 new file mode 100644 index 000000000..98c95fc74 --- /dev/null +++ b/docker/panko/panko-base/Dockerfile.j2 @@ -0,0 +1,69 @@ +FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }} +MAINTAINER {{ maintainer }} + +{% block panko_base_header %}{% endblock %} + +{% import "macros.j2" as macros with context %} + +{% if install_type == 'binary' %} + {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %} + + {% set panko_base_packages = [ + 'openstack-panko-common', + 'httpd', + 'mod_wsgi', + 'python-ldappool' + ] %} + +{{ macros.install_packages(panko_base_packages | customizable("packages")) }} +RUN sed -i -r 's,^(Listen 80),#\1,' /etc/httpd/conf/httpd.conf + {% elif base_distro in ['ubuntu', 'debian'] %} + +RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \ + && /bin/false + + {% endif %} +{% elif install_type == 'source' %} + {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %} + + {% set panko_base_packages = [ + 'httpd', + 'mod_wsgi', + 'python-ldappool' + ] %} +{{ macros.install_packages(panko_base_packages | customizable("packages")) }} +RUN sed -i -r 's,^(Listen 80),#\1,' /etc/httpd/conf/httpd.conf + + {% elif base_distro in ['ubuntu', 'debian'] %} + + {% set panko_base_packages = [ + 'apache2', + 'libapache2-mod-wsgi', + 'python-ldappool' + ] %} + +{{ macros.install_packages(panko_base_packages | customizable("packages")) }} +RUN truncate -s 0 /etc/apache2/ports.conf + + {% endif %} + +ADD panko-base-archive /panko-base-source + +RUN ln -s panko-base-source/* panko \ + && useradd --user-group panko \ + && /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade -c requirements/upper-constraints.txt \ + && mkdir -p /etc/panko /home/panko \ + && cp -r /panko/etc/panko/* /etc/panko/ \ + && chown -R panko: /etc/panko /home/panko + +{% endif %} + +COPY extend_start.sh /usr/local/bin/kolla_extend_start + +RUN usermod -a -G kolla panko \ + && mkdir -p /var/lib/panko \ + && chown -R panko: /var/lib/panko \ + && touch /usr/local/bin/kolla_panko_extend_start \ + && chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_panko_extend_start + +{% block panko_base_footer %}{% endblock %} diff --git a/docker/panko/panko-base/extend_start.sh b/docker/panko/panko-base/extend_start.sh new file mode 100644 index 000000000..6d8061ddc --- /dev/null +++ b/docker/panko/panko-base/extend_start.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +if [[ ! -d "/var/log/kolla/panko" ]]; then + mkdir -p /var/log/kolla/panko +fi +if [[ $(stat -c %a /var/log/kolla/panko) != "755" ]]; then + chmod 755 /var/log/kolla/panko +fi + +. /usr/local/bin/kolla_panko_extend_start |
