This change modifies the ironic base container to copy rootwarp filters from the virtual env rather than the source code directory. This is need because some required filters have been moved to ironic-lib and are not present in the /ironic dir. The rootwrap filters are not automitaclly installed in /etc/... due to kolla use of virtual envs and https://github.com/pypa/wheel/issues/92 Closes-Bug: #1886663 Change-Id: Idb0a675d92bab8b9a0cf5209f0a06e996e96033c
49 lines
1.6 KiB
Django/Jinja
49 lines
1.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 ironic_base_header %}{% endblock %}
|
|
|
|
{% import "macros.j2" as macros with context %}
|
|
|
|
{{ macros.configure_user(name='ironic') }}
|
|
|
|
{% if install_type == 'binary' %}
|
|
{% if base_package_type == 'rpm' %}
|
|
{% set ironic_base_packages = ['openstack-ironic-common'] %}
|
|
{% elif base_package_type == 'deb' %}
|
|
{% set ironic_base_packages = ['ironic-common'] %}
|
|
{% endif %}
|
|
|
|
{{ macros.install_packages(ironic_base_packages | customizable("packages")) }}
|
|
|
|
{% elif install_type == 'source' %}
|
|
|
|
ADD ironic-base-archive /ironic-base-source
|
|
|
|
{% set ironic_base_pip_packages = [
|
|
'/ironic'
|
|
] %}
|
|
|
|
RUN ln -s ironic-base-source/* ironic \
|
|
&& {{ macros.install_pip(ironic_base_pip_packages | customizable("pip_packages")) }} \
|
|
&& mkdir -p /etc/ironic \
|
|
&& cp -r /var/lib/kolla/venv/etc/ironic/* /etc/ironic/ \
|
|
&& chown -R ironic: /etc/ironic \
|
|
&& 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/ironic/rootwrap.conf
|
|
|
|
ADD ironic_sudoers /etc/sudoers.d/kolla_ironic_sudoers
|
|
RUN chmod 750 /etc/sudoers.d \
|
|
&& chmod 440 /etc/sudoers.d/kolla_ironic_sudoers
|
|
|
|
{% endif %}
|
|
|
|
COPY extend_start.sh /usr/local/bin/kolla_extend_start
|
|
|
|
RUN touch /usr/local/bin/kolla_ironic_extend_start \
|
|
&& chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_ironic_extend_start \
|
|
&& chown -R ironic: /etc/ironic
|
|
|
|
{% block ironic_base_footer %}{% endblock %}
|