kolla/docker/ironic/ironic-conductor/Dockerfile.j2
Mark Goddard 5244d7e21d Add e2fsprogs and xfsprogs to ironic-conductor
These are required for formatting ext and XFS ephemeral disk partitions
when using the iSCSI deployment drivers.

Change-Id: Icd187cdd1eb0cb36fbda6c04304bd25d31199bd7
Closes-Bug: #1701320
2017-06-29 17:44:04 +01:00

109 lines
3.2 KiB
Django/Jinja

FROM {{ namespace }}/{{ image_prefix }}ironic-base:{{ tag }}
LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
{% block ironic_conductor_header %}{% endblock %}
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
# TODO(Jeffrey4l): no python-scciclient, python-oneviewclient,
# python-seamicroclient, pyremotevbox package
{% set ironic_conductor_packages = [
'dosfstools',
'e2fsprogs',
'gdisk',
'ipmitool',
'openstack-ironic-conductor',
'openwsman-python',
'parted',
'psmisc',
'pysnmp',
'python2-ImcSdk',
'python-dracclient',
'python-ironic-inspector-client',
'python-proliantutils',
'python-pyghmi',
'python-UcsSdk',
'qemu-img',
'shellinabox',
'socat',
'util-linux',
'xfsprogs',
] %}
{% elif base_distro in ['debian', 'ubuntu'] %}
# TODO(jeffrey4l): no python-dracclient, python-oneviewclient, UcsSdk,
# pyremotevbox, ImcSdk package
{% set ironic_conductor_packages = [
'bsdmainutils',
'dosfstools',
'e2fsprogs',
'gdisk',
'ipmitool',
'ironic-conductor',
'parted',
'psmisc',
'python-ironic-inspector-client',
'python-openwsman',
'python-proliantutils',
'python-pyghmi',
'python-pysnmp4',
'python-scciclient',
'python-seamicroclient',
'qemu-utils',
'shellinabox',
'socat',
'xfsprogs',
] %}
{% endif %}
{% elif install_type == 'source' %}
{% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
{% set ironic_conductor_packages = [
'dosfstools',
'e2fsprogs',
'fuse',
'gdisk',
'ipmitool',
'parted',
'psmisc',
'qemu-img',
'shellinabox',
'socat',
'util-linux',
'xfsprogs',
] %}
{% elif base_distro in ['debian', 'ubuntu'] %}
{% set ironic_conductor_packages = [
'bsdmainutils',
'dosfstools',
'e2fsprogs',
'gdisk',
'ipmitool',
'parted',
'psmisc',
'qemu-utils',
'shellinabox',
'socat',
'xfsprogs',
] %}
{% endif %}
{% set ironic_conductor_pip_packages = [
'-r /ironic/driver-requirements.txt'
] %}
RUN {{ macros.install_pip(ironic_conductor_pip_packages | customizable("pip_packages")) }}
{% endif %}
{{ macros.install_packages(ironic_conductor_packages | customizable("packages")) }}
COPY extend_start.sh /usr/local/bin/kolla_ironic_extend_start
COPY iscsi_tcp_sudoers /etc/sudoers.d/kolla_iscsi_tcp_sudoers
RUN chmod 755 /usr/local/bin/kolla_ironic_extend_start \
&& chmod 440 /etc/sudoers.d/kolla_iscsi_tcp_sudoers
{% block ironic_conductor_footer %}{% endblock %}
{% block footer %}{% endblock %}
USER ironic