2018-04-12 09:04:22 +00:00
|
|
|
From 9104444a7bc874c18de2a57851356e60a776341c Mon Sep 17 00:00:00 2001
|
|
|
|
From: =?UTF-8?q?Lubom=C3=ADr=20Sedl=C3=A1=C5=99?= <lsedlar@redhat.com>
|
|
|
|
Date: Wed, 11 Apr 2018 16:05:08 +0200
|
2018-04-12 11:42:35 +00:00
|
|
|
Subject: [PATCH 8/9] Clone module defaults into work/ directory
|
2018-04-12 09:04:22 +00:00
|
|
|
MIME-Version: 1.0
|
|
|
|
Content-Type: text/plain; charset=UTF-8
|
|
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
|
|
|
|
We can not rely on config_dir being writable, and should not modify
|
|
|
|
anything in there anyway.
|
|
|
|
|
|
|
|
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
|
|
|
|
---
|
|
|
|
pungi/paths.py | 8 ++++++++
|
|
|
|
pungi/phases/createrepo.py | 2 +-
|
|
|
|
pungi/phases/init.py | 3 +--
|
|
|
|
3 files changed, 10 insertions(+), 3 deletions(-)
|
|
|
|
|
|
|
|
diff --git a/pungi/paths.py b/pungi/paths.py
|
|
|
|
index 0e506795..37c6da13 100644
|
|
|
|
--- a/pungi/paths.py
|
|
|
|
+++ b/pungi/paths.py
|
|
|
|
@@ -340,6 +340,14 @@ class WorkPaths(object):
|
|
|
|
path = "%s.cfg" % path
|
|
|
|
return path
|
|
|
|
|
|
|
|
+ def module_defaults_dir(self, create_dir=True):
|
|
|
|
+ """
|
|
|
|
+ """
|
|
|
|
+ path = os.path.join(self.topdir(create_dir=create_dir), 'module_defaults')
|
|
|
|
+ if create_dir:
|
|
|
|
+ makedirs(path)
|
|
|
|
+ return path
|
|
|
|
+
|
|
|
|
|
|
|
|
class ComposePaths(object):
|
|
|
|
def __init__(self, compose):
|
|
|
|
diff --git a/pungi/phases/createrepo.py b/pungi/phases/createrepo.py
|
|
|
|
index 49ff553a..f8e61387 100644
|
|
|
|
--- a/pungi/phases/createrepo.py
|
|
|
|
+++ b/pungi/phases/createrepo.py
|
|
|
|
@@ -219,7 +219,7 @@ def create_variant_repo(compose, arch, variant, pkg_type, modules_metadata=None)
|
|
|
|
modules.append(repo_mmd)
|
|
|
|
|
|
|
|
module_names = set([x.get_name() for x in modules])
|
|
|
|
- for mmddeffile in glob.glob(os.path.join(compose.config_dir, "module_defaults", "*.yaml")):
|
|
|
|
+ for mmddeffile in glob.glob(os.path.join(compose.paths.work.module_defaults_dir(), "*.yaml")):
|
|
|
|
for mmddef in Modulemd.objects_from_file(mmddeffile):
|
|
|
|
if isinstance(mmddef, Modulemd.Defaults) and mmddef.peek_module_name() in module_names:
|
|
|
|
modules.append(mmddef)
|
|
|
|
diff --git a/pungi/phases/init.py b/pungi/phases/init.py
|
|
|
|
index ef203568..9d9212e7 100644
|
|
|
|
--- a/pungi/phases/init.py
|
|
|
|
+++ b/pungi/phases/init.py
|
|
|
|
@@ -178,5 +178,4 @@ def write_module_defaults(compose):
|
|
|
|
with temp_dir(prefix="moduledefaults_") as tmp_dir:
|
|
|
|
get_dir_from_scm(scm_dict, tmp_dir, logger=compose._logger)
|
|
|
|
compose.log_debug("Writing module defaults")
|
|
|
|
- shutil.rmtree(os.path.join(compose.config_dir, "module_defaults"), ignore_errors=True)
|
|
|
|
- shutil.copytree(tmp_dir, os.path.join(compose.config_dir, "module_defaults"))
|
|
|
|
+ shutil.copytree(tmp_dir, compose.paths.work.module_defaults_dir())
|
|
|
|
--
|
|
|
|
2.13.6
|
|
|
|
|