aboutsummaryrefslogtreecommitdiff
path: root/kolla/docker/ironic/ironic-conductor/Dockerfile.j2
blob: bce981fb09722d5823314dcfd67966fe49407b75 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
FROM {{ namespace }}/{{ image_prefix }}ironic-base:{{ tag }}
{% block labels %}
LABEL maintainer="{{ maintainer }}" name="{{ image_name }}"
{% endblock %}

{% block ironic_conductor_header %}{% endblock %}

{% import "macros.j2" as macros with context %}

{% if base_package_type == 'rpm' %}
    {% set ironic_conductor_packages = [
        'dosfstools',
        'e2fsprogs',
        'fuse',
        'gdisk',
        'ipmitool',
        'mtools',
        'openssh-clients',
        'parted',
        'psmisc',
        'python3-systemd',
        'qemu-img',
        'systemd-udev',
        'util-linux',
        'xfsprogs',
        'xorriso'
    ] %}
    {% if base_arch in ['x86_64'] %}
        {% set ironic_conductor_packages = ironic_conductor_packages + [
            'syslinux'
        ] %}
    {% endif %}
{% elif base_package_type == 'deb' %}
    {% set ironic_conductor_packages = [
        'bsdmainutils',
        'dosfstools',
        'e2fsprogs',
        'gdisk',
        'genisoimage',
        'ipmitool',
        'isolinux',
        'mtools',
        'openssh-client',
        'parted',
        'psmisc',
        'python3-systemd',
        'qemu-utils',
        'shellinabox',
        'udev',
        'xfsprogs',
    ] %}
{% endif %}

{% set ironic_conductor_pip_packages = [
    '-r /ironic/driver-requirements.txt',
    'ironic-staging-drivers',
] %}

{% set ironic_conductor_plugins_pip_packages = [
'/plugins/*'
] %}

ADD plugins-archive /
RUN {{ macros.install_pip(ironic_conductor_pip_packages | customizable("pip_packages")) }} \
    && if [ "$(ls /plugins)" ]; then \
        {{ macros.install_pip(ironic_conductor_plugins_pip_packages) }}; \
    fi

{{ macros.install_packages(ironic_conductor_packages | customizable("packages")) }}

{{ macros.kolla_patch_sources() }}

{% block ironic_conductor_footer %}{% endblock %}
{% block footer %}{% endblock %}

USER ironic