kolla/docker/glance/glance-base/Dockerfile.j2
Maksim Malchuk 53b391d361 Add boto3 as s3 dependency for Glance container
boto3 library is needed [1] for glance_store and didn't installed yet
since [2] adds s3 support back. this change adds both binary and source
parts to install boto3 library.

1. 04e5ead7c0/setup.cfg (L76)
2. I203134837319080ead96da69048baf90086d2117

Closes-Bug: #1884259
Change-Id: I199185e24cedd2e282c53460a24aeffc83478a12
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2021-07-27 22:05:19 +00:00

84 lines
2.6 KiB
Django/Jinja

FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
{% block labels %}
LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
{% endblock %}
{% block glance_base_header %}{% endblock %}
{% import "macros.j2" as macros with context %}
{{ macros.configure_user(name='glance') }}
{{ macros.enable_extra_repos(['ceph']) }}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set glance_base_packages = [
'openstack-glance',
'python3-boto3',
'python3-oslo-vmware',
'python3-rados',
'python3-rbd'
] %}
{% elif base_package_type == 'deb' %}
{% set glance_base_packages = [
'glance',
'python3-boto3',
'python3-os-brick',
'python3-oslo.vmware',
'python3-rados',
'python3-rbd',
] %}
{% endif %}
{{ macros.install_packages(glance_base_packages | customizable("packages")) }}
{% if base_package_type == 'deb' %}
# fix up Ubuntu and Debian packaging of config (glance_store's rootwrap)
RUN ln -s /etc/glance/glance/* /etc/glance/
{% endif %}
{% elif install_type == 'source' %}
{% if base_package_type == 'rpm' %}
{% set glance_base_packages = [
'python3-rados',
'python3-rbd'
] %}
{% elif base_package_type == 'deb' %}
{% set glance_base_packages = [
'python3-rados',
'python3-rbd'
] %}
{% endif %}
{{ macros.install_packages(glance_base_packages | customizable("packages")) }}
ADD glance-base-archive /glance-base-source
{% set glance_base_pip_packages = [
'/glance',
'glance_store[cinder,vmware,swift,s3]'
] %}
# add missing rootwrap config present in glance_store repo
COPY etc/glance /etc/glance
RUN ln -s glance-base-source/* glance \
&& {{ macros.install_pip(glance_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/glance \
&& cp -r /glance/etc/* /etc/glance/ \
&& chown -R glance: /etc/glance \
&& 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/glance/rootwrap.conf
{% endif %}
COPY glance_sudoers /etc/sudoers.d/kolla_glance_sudoers
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 750 /etc/sudoers.d \
&& chmod 440 /etc/sudoers.d/kolla_glance_sudoers \
&& touch /usr/local/bin/kolla_glance_extend_start \
&& chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_glance_extend_start
{% block glance_base_footer %}{% endblock %}