diff options
| author | Shaun Smekel <shaun.smekel@theorem.net.au> | 2016-08-12 08:16:11 +1000 |
|---|---|---|
| committer | Shaun Smekel <shaun.smekel@theorem.net.au> | 2016-08-25 20:22:04 +1000 |
| commit | b597c90827ff0be7d21d394829e3067b4bcca28d (patch) | |
| tree | 2a30124bfc6ab1e67fc65a5a7c43174b64e967b4 /docker | |
| parent | e4259f805b91ce0859e7190f97f8dbf34ee92e45 (diff) | |
| download | kolla-b597c90827ff0be7d21d394829e3067b4bcca28d.tar.gz kolla-b597c90827ff0be7d21d394829e3067b4bcca28d.zip | |
Customizations for Ironic
This patchset contains customization of Dockerfile of Ironic
containers.
Change-Id: If6ffb741111127886f754ddebd17059174387fc8
Partially-implements: blueprint third-party-plugin-support
Diffstat (limited to 'docker')
| -rw-r--r-- | docker/ironic/ironic-api/Dockerfile.j2 | 16 | ||||
| -rw-r--r-- | docker/ironic/ironic-base/Dockerfile.j2 | 17 | ||||
| -rw-r--r-- | docker/ironic/ironic-conductor/Dockerfile.j2 | 47 | ||||
| -rw-r--r-- | docker/ironic/ironic-inspector/Dockerfile.j2 | 10 | ||||
| -rw-r--r-- | docker/ironic/ironic-pxe/Dockerfile.j2 | 27 |
5 files changed, 57 insertions, 60 deletions
diff --git a/docker/ironic/ironic-api/Dockerfile.j2 b/docker/ironic/ironic-api/Dockerfile.j2 index 426e8674d..7325051a5 100644 --- a/docker/ironic/ironic-api/Dockerfile.j2 +++ b/docker/ironic/ironic-api/Dockerfile.j2 @@ -1,25 +1,23 @@ FROM {{ namespace }}/{{ image_prefix }}ironic-base:{{ tag }} MAINTAINER {{ maintainer }} +{% import "macros.j2" as macros with context %} + {% if install_type == 'binary' %} {% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %} - -RUN yum -y install \ - openstack-ironic-api \ - && yum clean all - + {% set ironic_api_packages = ['openstack-ironic-api'] %} {% elif base_distro in ['ubuntu'] %} + {% set ironic_api_packages = ['ironic-api'] %} + {% endif %} -RUN apt-get -y install --no-install-recommends \ - ironic-api \ - && apt-get clean +{{ macros.install_packages(ironic_api_packages | customizable("packages")) }} - {% endif %} {% endif %} COPY extend_start.sh /usr/local/bin/kolla_extend_start RUN chmod 755 /usr/local/bin/kolla_extend_start +{% block ironic_api_footer %}{% endblock %} {{ include_footer }} USER ironic diff --git a/docker/ironic/ironic-base/Dockerfile.j2 b/docker/ironic/ironic-base/Dockerfile.j2 index a732ca479..ca45f13a1 100644 --- a/docker/ironic/ironic-base/Dockerfile.j2 +++ b/docker/ironic/ironic-base/Dockerfile.j2 @@ -1,20 +1,17 @@ FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }} MAINTAINER {{ maintainer }} +{% import "macros.j2" as macros with context %} + {% if install_type == 'binary' %} {% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %} - -RUN yum -y install \ - openstack-ironic-common \ - && yum clean all - + {% set ironic_base_packages = ['openstack-ironic-common'] %} {% elif base_distro in ['ubuntu'] %} + {% set ironic_base_packages = ['ironic-common'] %} + {% endif %} -RUN apt-get -y install --no-install-recommends \ - ironic-common \ - && apt-get clean +{{ macros.install_packages(ironic_base_packages | customizable("packages")) }} - {% endif %} {% elif install_type == 'source' %} ADD ironic-base-archive /ironic-base-source @@ -30,3 +27,5 @@ RUN ln -s ironic-base-source/* ironic \ RUN usermod -a -G kolla ironic \ && chown -R ironic: /etc/ironic + +{% block ironic_base_footer %}{% endblock %} diff --git a/docker/ironic/ironic-conductor/Dockerfile.j2 b/docker/ironic/ironic-conductor/Dockerfile.j2 index ea26296e3..444826099 100644 --- a/docker/ironic/ironic-conductor/Dockerfile.j2 +++ b/docker/ironic/ironic-conductor/Dockerfile.j2 @@ -1,41 +1,38 @@ FROM {{ namespace }}/{{ image_prefix }}ironic-base:{{ tag }} MAINTAINER {{ maintainer }} +{% import "macros.j2" as macros with context %} + {% if install_type == 'binary' %} {% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %} - -RUN yum -y install \ - openstack-ironic-conductor \ - qemu-img \ - && yum clean all - + {% set ironic_conductor_packages = [ + 'openstack-ironic-conductor', + 'qemu-img' + ] %} {% elif base_distro in ['ubuntu'] %} - -RUN apt-get -y install --no-install-recommends \ - ironic-conductor \ - qemu-utils \ - ipmitool \ - && apt-get clean - + {% set ironic_conductor_packages = [ + 'ironic-conductor', + 'qemu-utils', + 'ipmitool' + ] %} {% endif %} {% elif install_type == 'source' %} {% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %} - -RUN yum -y install \ - qemu-img \ - ipmitool \ - && yum clean all - + {% set ironic_conductor_packages = [ + 'qemu-img', + 'ipmitool' + ] %} {% elif base_distro in ['ubuntu', 'debian'] %} - -RUN apt-get -y install --no-install-recommends \ - qemu-utils \ - ipmitool \ - && apt-get clean - + {% set ironic_conductor_packages = [ + 'qemu-utils', + 'ipmitool' + ] %} {% endif %} {% endif %} +{{ macros.install_packages(ironic_conductor_packages | customizable("packages")) }} + +{% block ironic_conductor_footer %}{% endblock %} {{ include_footer }} USER ironic diff --git a/docker/ironic/ironic-inspector/Dockerfile.j2 b/docker/ironic/ironic-inspector/Dockerfile.j2 index 217a73e06..d3ea30786 100644 --- a/docker/ironic/ironic-inspector/Dockerfile.j2 +++ b/docker/ironic/ironic-inspector/Dockerfile.j2 @@ -1,16 +1,18 @@ FROM {{ namespace }}/{{ image_prefix }}ironic-base:{{ tag }} MAINTAINER {{ maintainer }} +{% import "macros.j2" as macros with context %} + {% if install_type == 'binary' %} {% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %} + {% set ironic_inspector_packages = ['openstack-ironic-inspector'] %} + {% endif %} -RUN yum -y install \ - openstack-ironic-inspector \ - && yum clean all +{{ macros.install_packages(ironic_inspector_packages | customizable("packages")) }} - {% endif %} {% endif %} +{% block ironic_inspector_footer %}{% endblock %} {{ include_footer }} USER ironic diff --git a/docker/ironic/ironic-pxe/Dockerfile.j2 b/docker/ironic/ironic-pxe/Dockerfile.j2 index 317acc65e..6a4b13b9d 100644 --- a/docker/ironic/ironic-pxe/Dockerfile.j2 +++ b/docker/ironic/ironic-pxe/Dockerfile.j2 @@ -1,25 +1,26 @@ FROM {{ namespace }}/{{ image_prefix }}ironic-base:{{ tag }} MAINTAINER {{ maintainer }} -{% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %} - -RUN yum -y install \ - tftp-server \ - syslinux-tftpboot \ - && yum clean all +{% import "macros.j2" as macros with context %} +{% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %} + {% set ironic_pxe_packages = [ + 'tftp-server', + 'syslinux-tftpboot' + ] %} {% elif base_distro in ['ubuntu', 'debian'] %} - -RUN apt-get -y install --no-install-recommends \ - tftpd-hpa \ - syslinux-common \ - syslinux \ - && apt-get clean - + {% set ironic_pxe_packages = [ + 'tftpd-hpa', + 'syslinux-common', + 'syslinux' + ] %} {% endif %} +{{ macros.install_packages(ironic_pxe_packages | customizable("packages")) }} + COPY tftp-map-file /map-file COPY extend_start.sh /usr/local/bin/kolla_extend_start RUN chmod 755 /usr/local/bin/kolla_extend_start +{% block ironic_pxe_footer %}{% endblock %} {{ include_footer }} |
