From 971c1652420ca6d6991332a4b745b6a8914462f8 Mon Sep 17 00:00:00 2001 From: JUN JIE NAN Date: Mon, 17 Jun 2013 15:23:34 +0800 Subject: [PATCH] Delete the temporary directory created by sources handler Register a hook to delete the temporary directory created by sources handler at program cfn-init exit. Change-Id: I821195cf510d35f94b1e7656dacc0dfe308ceeb1 Fixes: bug #1191674 --- heat_cfntools/cfntools/cfn_helper.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/heat_cfntools/cfntools/cfn_helper.py b/heat_cfntools/cfntools/cfn_helper.py index 99908bd..5589133 100644 --- a/heat_cfntools/cfntools/cfn_helper.py +++ b/heat_cfntools/cfntools/cfn_helper.py @@ -18,7 +18,7 @@ Not implemented yet: * command line args - placeholders are ignored """ - +import atexit import ConfigParser import errno import grp @@ -35,6 +35,7 @@ try: except ImportError: rpmutils_present = False import re +import shutil import subprocess import tempfile @@ -560,6 +561,7 @@ class SourcesHandler(object): def _url_to_tmp_filename(self, url): tempdir = tempfile.mkdtemp() + atexit.register(lambda: shutil.rmtree(tempdir, True)) sp = url.split('/') if 'https://github.com' in url: if 'zipball' == sp[-2]: