aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal (inc0) Jastrzebski <inc007@gmail.com>2016-06-07 20:54:37 +0000
committerMichal (inc0) Jastrzebski <inc007@gmail.com>2016-06-15 19:42:02 +0000
commitf1c3422582ef3368647f3459b04c4c0b67f8e1ee (patch)
tree47358ab3685beeecd880ebf0a753ff87a3ee1551
parent2cb0f445bba72d5b085856deb57a5e48c5832ca9 (diff)
downloadkolla-f1c3422582ef3368647f3459b04c4c0b67f8e1ee.tar.gz
kolla-f1c3422582ef3368647f3459b04c4c0b67f8e1ee.zip
Macro install packages
Simplification of package installations Change-Id: I78c0a84c55e891dec7c9bd21bc61700dba244526 Partially-implements: blueprint third-party-plugin-support
-rw-r--r--docker/macros.j27
-rwxr-xr-xkolla/image/build.py8
2 files changed, 13 insertions, 2 deletions
diff --git a/docker/macros.j2 b/docker/macros.j2
new file mode 100644
index 000000000..c10973ef6
--- /dev/null
+++ b/docker/macros.j2
@@ -0,0 +1,7 @@
+{% 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'] -%}
+ apt-get -y install --no-install-recommends {{ packages | join(' ') }} && apt-get clean
+{%- endif %}
+{%- endmacro %}
diff --git a/kolla/image/build.py b/kolla/image/build.py
index 301dea0d1..74c05b69b 100755
--- a/kolla/image/build.py
+++ b/kolla/image/build.py
@@ -626,8 +626,12 @@ class KollaWorker(object):
'kolla_version': kolla_version,
'rpm_setup': self.rpm_setup}
env = jinja2.Environment( # nosec: not used to render HTML
- loader=jinja2.FileSystemLoader(path))
- template = env.get_template(template_name)
+ loader=jinja2.FileSystemLoader(self.working_dir))
+ tpl_path = os.path.join(
+ os.path.relpath(path, self.working_dir),
+ template_name)
+
+ template = env.get_template(tpl_path)
if self.conf.template_override:
template_path = os.path.dirname(self.conf.template_override)
template_name = os.path.basename(self.conf.template_override)