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)
|