diff options
Diffstat (limited to 'kolla/docker/manila')
| -rw-r--r-- | kolla/docker/manila/manila-api/Dockerfile.j2 | 23 | ||||
| -rw-r--r-- | kolla/docker/manila/manila-api/extend_start.sh | 9 | ||||
| -rw-r--r-- | kolla/docker/manila/manila-base/Dockerfile.j2 | 48 | ||||
| -rw-r--r-- | kolla/docker/manila/manila-base/extend_start.sh | 10 | ||||
| -rw-r--r-- | kolla/docker/manila/manila-base/manila_sudoers | 1 | ||||
| -rw-r--r-- | kolla/docker/manila/manila-data/Dockerfile.j2 | 31 | ||||
| -rw-r--r-- | kolla/docker/manila/manila-scheduler/Dockerfile.j2 | 15 | ||||
| -rw-r--r-- | kolla/docker/manila/manila-share/Dockerfile.j2 | 34 |
8 files changed, 171 insertions, 0 deletions
diff --git a/kolla/docker/manila/manila-api/Dockerfile.j2 b/kolla/docker/manila/manila-api/Dockerfile.j2 new file mode 100644 index 000000000..d7b75d388 --- /dev/null +++ b/kolla/docker/manila/manila-api/Dockerfile.j2 @@ -0,0 +1,23 @@ +FROM {{ namespace }}/{{ image_prefix }}manila-base:{{ tag }} +{% block labels %} +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" +{% endblock %} + +{% block manila_api_header %}{% endblock %} + +{% import "macros.j2" as macros with context %} + +{% set manila_api_packages = [ +] %} +{{ macros.install_packages(manila_api_packages | customizable("packages")) }} + +COPY extend_start.sh /usr/local/bin/kolla_manila_extend_start + +RUN chmod 644 /usr/local/bin/kolla_manila_extend_start + +{{ macros.kolla_patch_sources() }} + +{% block manila_api_footer %}{% endblock %} +{% block footer %}{% endblock %} + +USER manila diff --git a/kolla/docker/manila/manila-api/extend_start.sh b/kolla/docker/manila/manila-api/extend_start.sh new file mode 100644 index 000000000..bea77dbba --- /dev/null +++ b/kolla/docker/manila/manila-api/extend_start.sh @@ -0,0 +1,9 @@ +#!/bin/bash +set -o errexit + +# 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 + manila-manage db sync + exit 0 +fi diff --git a/kolla/docker/manila/manila-base/Dockerfile.j2 b/kolla/docker/manila/manila-base/Dockerfile.j2 new file mode 100644 index 000000000..a236a20df --- /dev/null +++ b/kolla/docker/manila/manila-base/Dockerfile.j2 @@ -0,0 +1,48 @@ +FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }} +{% block labels %} +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" +{% endblock %} + +{% block manila_base_header %}{% endblock %} + +{% import "macros.j2" as macros with context %} + +{{ macros.configure_user(name='manila') }} + +{% if base_package_type == 'rpm' %} + +{{ macros.enable_extra_repos(['openvswitch']) }} + + {% set manila_base_packages = ['openvswitch${KOLLA_RPM_OVS_VERSION}'] %} + +{% elif base_package_type == 'deb' %} + + {% set manila_base_packages = ['openvswitch-switch'] %} + +{% endif %} + +{{ macros.install_packages(manila_base_packages | customizable("packages")) }} + +ADD manila-base-archive /manila-base-source + +{% set manila_base_pip_packages = [ + '/manila' +] %} + +COPY extend_start.sh /usr/local/bin/kolla_extend_start +COPY manila_sudoers /etc/sudoers.d/kolla_manila_sudoers + +RUN ln -s manila-base-source/* manila \ + && {{ macros.install_pip(manila_base_pip_packages | customizable("pip_packages")) }} \ + && mkdir -p /etc/manila /var/cache/manila \ + && cp -r /manila/etc/manila/* /etc/manila/ \ + && chown -R manila: /var/cache/manila \ + && sed -i 's|^exec_dirs.*|exec_dirs=/var/lib/kolla/venv/bin,/sbin,/usr/sbin,/bin,/usr/bin,/usr/local/bin,/usr/local/sbin|g' /etc/manila/rootwrap.conf \ + && chmod 750 /etc/sudoers.d \ + && chmod 440 /etc/sudoers.d/kolla_manila_sudoers \ + && touch /usr/local/bin/kolla_manila_extend_start \ + && chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_manila_extend_start + +{{ macros.kolla_patch_sources() }} + +{% block manila_base_footer %}{% endblock %} diff --git a/kolla/docker/manila/manila-base/extend_start.sh b/kolla/docker/manila/manila-base/extend_start.sh new file mode 100644 index 000000000..c018416a3 --- /dev/null +++ b/kolla/docker/manila/manila-base/extend_start.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +if [[ ! -d "/var/log/kolla/manila" ]]; then + mkdir -p /var/log/kolla/manila +fi +if [[ $(stat -c %a /var/log/kolla/manila) != "755" ]]; then + chmod 755 /var/log/kolla/manila +fi + +. /usr/local/bin/kolla_manila_extend_start diff --git a/kolla/docker/manila/manila-base/manila_sudoers b/kolla/docker/manila/manila-base/manila_sudoers new file mode 100644 index 000000000..623e6789b --- /dev/null +++ b/kolla/docker/manila/manila-base/manila_sudoers @@ -0,0 +1 @@ +manila ALL = (root) NOPASSWD: /var/lib/kolla/venv/bin/manila-rootwrap /etc/manila/rootwrap.conf * diff --git a/kolla/docker/manila/manila-data/Dockerfile.j2 b/kolla/docker/manila/manila-data/Dockerfile.j2 new file mode 100644 index 000000000..06e1d9dc9 --- /dev/null +++ b/kolla/docker/manila/manila-data/Dockerfile.j2 @@ -0,0 +1,31 @@ +FROM {{ namespace }}/{{ image_prefix }}manila-base:{{ tag }} +{% block labels %} +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" +{% endblock %} + +{% block manila_data_header %}{% endblock %} + +{% import "macros.j2" as macros with context %} + +{% if base_package_type == 'rpm' %} + + {% set manila_data_packages = [ + 'nfs-utils' + ] %} + +{% elif base_package_type == 'deb' %} + + {% set manila_data_packages = [ + 'nfs-common' + ] %} + +{% endif %} + +{{ macros.install_packages(manila_data_packages | customizable("packages")) }} + +{{ macros.kolla_patch_sources() }} + +{% block manila_data_footer %}{% endblock %} +{% block footer %}{% endblock %} + +USER manila diff --git a/kolla/docker/manila/manila-scheduler/Dockerfile.j2 b/kolla/docker/manila/manila-scheduler/Dockerfile.j2 new file mode 100644 index 000000000..12f7860f4 --- /dev/null +++ b/kolla/docker/manila/manila-scheduler/Dockerfile.j2 @@ -0,0 +1,15 @@ +FROM {{ namespace }}/{{ image_prefix }}manila-base:{{ tag }} +{% block labels %} +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" +{% endblock %} + +{% block manila_scheduler_header %}{% endblock %} + +{% import "macros.j2" as macros with context %} + +{{ macros.kolla_patch_sources() }} + +{% block manila_scheduler_footer %}{% endblock %} +{% block footer %}{% endblock %} + +USER manila diff --git a/kolla/docker/manila/manila-share/Dockerfile.j2 b/kolla/docker/manila/manila-share/Dockerfile.j2 new file mode 100644 index 000000000..161b6865a --- /dev/null +++ b/kolla/docker/manila/manila-share/Dockerfile.j2 @@ -0,0 +1,34 @@ +FROM {{ namespace }}/{{ image_prefix }}manila-base:{{ tag }} +{% block labels %} +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" +{% endblock %} + +{% block manila_share_header %}{% endblock %} + +{% import "macros.j2" as macros with context %} + +{% if base_package_type == 'rpm' %} + {% set manila_share_packages = [ + 'ceph-common', + 'sqlite', + ] %} +{% elif base_package_type == 'deb' %} + {% set manila_share_packages = [ + 'ceph-common', + 'glusterfs-client', + 'python3-cephfs', + 'python3-rados', + 'python3-rbd', + 'sqlite3' + ] %} + +{% endif %} + +{{ macros.install_packages(manila_share_packages | customizable("packages")) }} + +{{ macros.kolla_patch_sources() }} + +{% block manila_share_footer %}{% endblock %} +{% block footer %}{% endblock %} + +USER manila |
