aboutsummaryrefslogtreecommitdiff
path: root/kolla
diff options
context:
space:
mode:
authorZuul <zuul@review.openstack.org>2019-03-21 12:44:13 +0000
committerGerrit Code Review <review@openstack.org>2019-03-21 12:44:13 +0000
commita911010054ef514cdc28aad71f0a6869a830dd87 (patch)
treed83f247824c8bd5de92a9a3ab5d425d5f1807c36 /kolla
parent49cfe69875aade7884518e95e8df081dbddfb6cc (diff)
parentd1702568960bee8524204794c68085529c4b8b08 (diff)
downloadkolla-a911010054ef514cdc28aad71f0a6869a830dd87.tar.gz
kolla-a911010054ef514cdc28aad71f0a6869a830dd87.zip
Merge "Introduce clean_package_cache"
Diffstat (limited to 'kolla')
-rwxr-xr-xkolla/common/config.py4
-rwxr-xr-xkolla/image/build.py5
-rw-r--r--kolla/template/methods.py7
3 files changed, 11 insertions, 5 deletions
diff --git a/kolla/common/config.py b/kolla/common/config.py
index 22a991d61..4f2f250d6 100755
--- a/kolla/common/config.py
+++ b/kolla/common/config.py
@@ -283,7 +283,9 @@ _BASE_OPTS = [
cfg.BoolOpt('squash-cleanup', default=True,
help='Remove source image from Docker after squashing'),
cfg.StrOpt('squash-tmp-dir',
- help='Temporary directory to be used during squashing')
+ help='Temporary directory to be used during squashing'),
+ cfg.BoolOpt('clean_package_cache', default=True,
+ help='Clean all package cache.')
]
diff --git a/kolla/image/build.py b/kolla/image/build.py
index 373ba63e8..6fbe58408 100755
--- a/kolla/image/build.py
+++ b/kolla/image/build.py
@@ -715,6 +715,8 @@ class KollaWorker(object):
package_manager = 'apt'
self.distro_package_manager = package_manager
+ self.clean_package_cache = self.conf.clean_package_cache
+
# Determine base packaging type for use in Dockerfiles.
if self.conf.base_package_type:
self.base_package_type = self.conf.base_package_type
@@ -933,7 +935,8 @@ class KollaWorker(object):
'distro_python_version': self.distro_python_version,
'distro_package_manager': self.distro_package_manager,
'rpm_setup': self.rpm_setup,
- 'build_date': build_date}
+ 'build_date': build_date,
+ 'clean_package_cache': self.clean_package_cache}
env = jinja2.Environment( # nosec: not used to render HTML
loader=jinja2.FileSystemLoader(self.working_dir))
env.filters.update(self._get_filters())
diff --git a/kolla/template/methods.py b/kolla/template/methods.py
index e11fa61cc..017b219c7 100644
--- a/kolla/template/methods.py
+++ b/kolla/template/methods.py
@@ -13,7 +13,7 @@
# limitations under the License.
-def debian_package_install(packages):
+def debian_package_install(packages, clean_package_cache=True):
"""Jinja utility method for building debian-based package install command.
apt-get is not capable of installing .deb files from a URL and the
@@ -48,8 +48,9 @@ def debian_package_install(packages):
cmds.append('apt-get -y install --no-install-recommends {}'.format(
' '.join(reg_packages)
))
- cmds.append('apt-get clean')
- cmds.append('rm -rf /var/lib/apt/lists/*')
+ if clean_package_cache:
+ cmds.append('apt-get clean')
+ cmds.append('rm -rf /var/lib/apt/lists/*')
# handle URL packages
for url in url_packages: