diff --git a/src/pylorax/__init__.py b/src/pylorax/__init__.py index 90224a4c..b3b06a33 100644 --- a/src/pylorax/__init__.py +++ b/src/pylorax/__init__.py @@ -188,13 +188,8 @@ class Lorax(BaseLoraxClass): buildstamp.write(joinpaths(self.inroot, ".buildstamp")) - dname = joinpaths(self.workdir, "pkglists") - if not os.path.isdir(dname): - os.makedirs(dname) - for pkgobj in ybo.doPackageLists(pkgnarrow='installed').installed: - with open(joinpaths(dname, pkgobj.name), "w") as fobj: - for fname in pkgobj.filelist + pkgobj.dirlist: - fobj.write("{0}\n".format(fname)) + if self.debug: + rb.writepkglists(joinpaths(self.workdir, "pkglists")) logger.info("doing post-install configuration") rb.postinstall() diff --git a/src/pylorax/treebuilder.py b/src/pylorax/treebuilder.py index 2aa70bfb..844d1de1 100644 --- a/src/pylorax/treebuilder.py +++ b/src/pylorax/treebuilder.py @@ -80,6 +80,15 @@ class RuntimeBuilder(object): '''Install packages and do initial setup with runtime-install.tmpl''' self._runner.run("runtime-install.tmpl") + def writepkglists(self, pkglistdir): + '''debugging data: write out lists of package contents''' + if not os.path.isdir(pkglistdir): + os.makedirs(pkglistdir) + for pkgobj in self.yum.doPackageLists(pkgnarrow='installed').installed: + with open(joinpaths(pkglistdir, pkgobj.name), "w") as fobj: + for fname in pkgobj.filelist + pkgobj.dirlist: + fobj.write("{0}\n".format(fname)) + def postinstall(self): '''Do some post-install setup work with runtime-postinstall.tmpl''' # copy configdir into runtime root beforehand