cloud-init/add-variable-to-forbid-tmp-dir.patch

60 lines
2.0 KiB
Diff
Raw Normal View History

2020-07-31 15:06:51 +08:00
From 224da46b2331b582577b86c3eb707f67d57800fb Mon Sep 17 00:00:00 2001
From: chengquan <chengquan3@huawei.com>
Date: Thu, 8 Aug 2019 16:15:31 +0800
Subject: [PATCH] cloud-init: add variable to forbid tmp dir
reason: add variable to forbid temporary directory
Signed-off-by: chengquan <chengquan3@huawei.com>
---
cloud-init-19.4/setup.py | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff -Nur a/setup.py b/setup.py
--- a/setup.py 2019-04-12 19:00:20.782000000 +0800
+++ b/setup.py 2019-04-12 19:48:04.246000000 +0800
@@ -91,6 +91,8 @@
(deps, _e) = tiny_p(cmd)
return str(deps).splitlines()
+# add variable to forbid tmp dir
+num = 0
def render_tmpl(template, mode=None):
"""render template into a tmpdir under same dir as setup.py
@@ -112,7 +114,10 @@
return template
topdir = os.path.dirname(sys.argv[0])
- tmpd = tempfile.mkdtemp(dir=topdir, prefix=RENDERED_TMPD_PREFIX)
+ global num
+ os.mkdir(topdir + str(num))
+ tmpd = os.path.abspath(topdir + str(num))
+ num = num + 1
atexit.register(shutil.rmtree, tmpd)
bname = os.path.basename(template).rstrip(tmpl_ext)
fpath = os.path.join(tmpd, bname)
@@ -126,6 +131,10 @@
# return path relative to setup.py
return os.path.join(os.path.basename(tmpd), bname)
+def sort_files(file_list):
+ file_list.sort()
+ return file_list
+
# User can set the variant for template rendering
if '--distro' in sys.argv:
idx = sys.argv.index('--distro')
@@ -140,9 +149,9 @@
'sysvinit_openrc': [f for f in glob('sysvinit/gentoo/*') if is_f(f)],
'sysvinit_suse': [f for f in glob('sysvinit/suse/*') if is_f(f)],
'systemd': [render_tmpl(f)
- for f in (glob('systemd/*.tmpl') +
+ for f in sort_files((glob('systemd/*.tmpl') +
glob('systemd/*.service') +
- glob('systemd/*.target'))
+ glob('systemd/*.target')))
if (is_f(f) and not is_generator(f))],
'systemd.generators': [
render_tmpl(f, mode=0o755)