diff options
| author | Shaun Smekel <shaun.smekel@theorem.net.au> | 2016-08-12 08:24:11 +1000 |
|---|---|---|
| committer | Paul Bourke <paul.bourke@oracle.com> | 2016-08-19 10:49:03 +0000 |
| commit | a9d08726f5a48eef77c04ea1acefc00d93ce7076 (patch) | |
| tree | 73762d7fd4f9b95cba8fbefe273de9a9db8eabb7 /docker/macros.j2 | |
| parent | 0b7e853784c2c0db115b0e72a3f7fc58c86c7660 (diff) | |
| download | kolla-a9d08726f5a48eef77c04ea1acefc00d93ce7076.tar.gz kolla-a9d08726f5a48eef77c04ea1acefc00d93ce7076.zip | |
Handle empty package list for install_packages
Currently if the install_packages macro is run with an empty
package list, it will add a yum or apt-get command with no
packages listed.
This bug fix aims to omit this line when no packages have
been given, or, the operator wants to use the "_override" /
"_remove" functionality to disable all packages being
installed in a Dockerfile.
Co-Authored-By: Paul Bourke <paul.bourke@oracle.com>
Change-Id: Ifaaaebfccc3adb0f2f68a35ac08e59378bc87fdb
Closes-bug: 1612446
Diffstat (limited to 'docker/macros.j2')
| -rw-r--r-- | docker/macros.j2 | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/docker/macros.j2 b/docker/macros.j2 index 5cdb12b4c..494feb2f4 100644 --- a/docker/macros.j2 +++ b/docker/macros.j2 @@ -1,12 +1,14 @@ {% macro install_packages(packages) -%} -{% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] -%} - yum -y install {{ packages | join(' ') }} && yum clean all -{%- elif base_distro in ['ubuntu', 'debian'] -%} - {#- - debian_package_install is a utility method to build up an appropriate - set of commands to install packages in a debian-based environment that - may include URL links to a .deb package (e.g, heka) - -#} - {{ debian_package_install(packages) }} +{% if packages is defined and packages|length > 0 -%} + {% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] -%} + RUN yum -y install {{ packages | join(' ') }} && yum clean all + {%- elif base_distro in ['ubuntu', 'debian'] -%} + {#- + debian_package_install is a utility method to build up an appropriate + set of commands to install packages in a debian-based environment that + may include URL links to a .deb package (e.g, heka) + -#} + RUN {{ debian_package_install(packages) }} + {%- endif %} {%- endif %} {%- endmacro %} |
