diff options
Diffstat (limited to 'docker')
| -rw-r--r-- | docker/ironic/ironic-pxe/Dockerfile.j2 | 11 | ||||
| -rw-r--r-- | docker/ironic/ironic-pxe/extend_start.sh | 14 |
2 files changed, 18 insertions, 7 deletions
diff --git a/docker/ironic/ironic-pxe/Dockerfile.j2 b/docker/ironic/ironic-pxe/Dockerfile.j2 index da2adbe5e..bda9a9bdd 100644 --- a/docker/ironic/ironic-pxe/Dockerfile.j2 +++ b/docker/ironic/ironic-pxe/Dockerfile.j2 @@ -6,9 +6,7 @@ MAINTAINER {{ maintainer }} RUN yum -y install \ tftp-server \ syslinux-tftpboot \ - && yum clean all \ - && mkdir -p /tftpboot \ - && cp /var/lib/tftpboot/chain.c32 /tftpboot + && yum clean all {% elif base_distro in ['ubuntu', 'debian'] %} @@ -16,13 +14,12 @@ RUN apt-get install -y --no-install-recommends \ tftpd-hpa \ syslinux-common \ syslinux \ - && apt-get clean \ - && mkdir -p /tftpboot \ - && chown -R ironic: /tftpboot \ - && cp /usr/lib/syslinux/pxelinux.0 /usr/lib/syslinux/chain.c32 /tftpboot + && apt-get clean {% endif %} 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 {{ include_footer }} diff --git a/docker/ironic/ironic-pxe/extend_start.sh b/docker/ironic/ironic-pxe/extend_start.sh new file mode 100644 index 000000000..0f5fcd679 --- /dev/null +++ b/docker/ironic/ironic-pxe/extend_start.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +# Bootstrap and exit if KOLLA_BOOTSTRAP variable is set. This catches all cases +# of the KOLLA_BOOTSTRAP variable being set, including empty. +if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then + chown -R ironic: /tftpboot + for pxe_file in /var/lib/tftpboot/chain.c32 /usr/lib/syslinux/pxelinux.0 /usr/lib/syslinux/chain.c32; do + if [[ -e "$pxe_file" ]]; then + cp "$pxe_file" /tftpboot + fi + done + exit 0 +fi + |
