diff options
Diffstat (limited to 'kolla')
| -rwxr-xr-x | kolla/common/config.py | 4 | ||||
| -rwxr-xr-x | kolla/image/build.py | 5 | ||||
| -rw-r--r-- | kolla/template/methods.py | 7 |
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: |
