From 8b38c4d5c9f62b7cb42d8e885cea56f188ab9110 Mon Sep 17 00:00:00 2001 From: Javier Pena Date: Fri, 17 Feb 2017 17:48:47 +0100 Subject: Add work-dir command-line option The working directory was previously generated as a temporary one, but there may be cases when we want to specify a directory, for example if we want to generate the Dockerfiles and then do some parsing on them. Change-Id: Ic332328913924bcb3d0dfa4d473e796050fc14b3 --- kolla/image/build.py | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'kolla/image') diff --git a/kolla/image/build.py b/kolla/image/build.py index 133063513..a6736172e 100755 --- a/kolla/image/build.py +++ b/kolla/image/build.py @@ -633,10 +633,14 @@ class KollaWorker(object): def setup_working_dir(self): """Creates a working directory for use while building""" - ts = time.time() - ts = datetime.datetime.fromtimestamp(ts).strftime('%Y-%m-%d_%H-%M-%S_') - self.temp_dir = tempfile.mkdtemp(prefix='kolla-' + ts) - self.working_dir = os.path.join(self.temp_dir, 'docker') + if self.conf.work_dir: + self.working_dir = os.path.join(self.conf.work_dir, 'docker') + else: + ts = time.time() + ts = datetime.datetime.fromtimestamp(ts).strftime( + '%Y-%m-%d_%H-%M-%S_') + self.temp_dir = tempfile.mkdtemp(prefix='kolla-' + ts) + self.working_dir = os.path.join(self.temp_dir, 'docker') shutil.copytree(self.images_dir, self.working_dir) self.copy_apt_files() LOG.debug('Created working dir: %s', self.working_dir) @@ -754,7 +758,8 @@ class KollaWorker(object): def cleanup(self): """Remove temp files""" - shutil.rmtree(self.temp_dir) + if not self.conf.work_dir: + shutil.rmtree(self.temp_dir) def filter_images(self): """Filter which images to build""" -- cgit v1.2.3