From e66630a2e5c74fce71a6235853e58e7e112ef72b Mon Sep 17 00:00:00 2001 From: Brian Dolbec Date: Mon, 7 Jan 2013 23:17:22 -0800 Subject: [PATCH] Add more configured defaults Use the new configured snapshot_name and portdir settings Use the portdir setting rather than hard-coded path --- catalyst | 18 +++++++++++++----- modules/generic_stage_target.py | 6 ++++-- modules/snapshot_target.py | 14 +++++++++----- modules/tinderbox_target.py | 4 ++-- 4 files changed, 28 insertions(+), 14 deletions(-) diff --git a/catalyst b/catalyst index c29c814f..0878ce4b 100755 --- a/catalyst +++ b/catalyst @@ -61,11 +61,19 @@ def parse_config(myconfig): myconf={} config_file="" - confdefaults={ "storedir":"/var/tmp/catalyst",\ - "sharedir":"/usr/share/catalyst","distdir":"/usr/portage/distfiles",\ - "portdir":"/usr/portage","options":"",\ - "snapshot_cache":"/var/tmp/catalyst/snapshot_cache",\ - "hash_function":"crc32"} + confdefaults={ + "storedir": "/var/tmp/catalyst", + "sharedir": "/usr/lib/catalyst", + "distdir": "/usr/portage/distfiles", + "repo_name": "portage", + "portdir": "/usr/portage", + "packagedir": "/usr/portage/packages", + "port_tmpdir": "/var/tmp/portage", + "options": "", + "snapshot_name": "portage-", + "snapshot_cache": "/var/tmp/catalyst/snapshot_cache", + "hash_function": "crc32", + } # first, try the one passed (presumably from the cmdline) if myconfig: diff --git a/modules/generic_stage_target.py b/modules/generic_stage_target.py index 31cb025e..c79f8ae0 100644 --- a/modules/generic_stage_target.py +++ b/modules/generic_stage_target.py @@ -410,7 +410,8 @@ class generic_stage_target(generic_target): def set_snapshot_path(self): self.settings["snapshot_path"]=normpath(self.settings["storedir"]+\ - "/snapshots/portage-"+self.settings["snapshot"]+".tar.xz") + "/snapshots/" + self.settings["snapshot_name"] + + self.settings["snapshot"]+".tar.xz") if os.path.exists(self.settings["snapshot_path"]): self.settings["snapshot_path_hash"]=\ @@ -418,7 +419,8 @@ class generic_stage_target(generic_target): hash_function=self.settings["hash_function"],verbose=False) else: self.settings["snapshot_path"]=normpath(self.settings["storedir"]+\ - "/snapshots/portage-"+self.settings["snapshot"]+".tar.bz2") + "/snapshots/" + self.settings["snapshot_name"] + + self.settings["snapshot"]+".tar.bz2") if os.path.exists(self.settings["snapshot_path"]): self.settings["snapshot_path_hash"]=\ diff --git a/modules/snapshot_target.py b/modules/snapshot_target.py index e93a86a5..79c1f03f 100644 --- a/modules/snapshot_target.py +++ b/modules/snapshot_target.py @@ -18,8 +18,9 @@ class snapshot_target(generic_stage_target): self.settings=myspec self.settings["target_subpath"]="portage" st=self.settings["storedir"] - self.settings["snapshot_path"]=normpath(st+"/snapshots/portage-"+self.settings["version_stamp"]\ - +".tar.bz2") + self.settings["snapshot_path"]=normpath(st + "/snapshots/" + + self.settings["snapshot_name"] + + self.settings["version_stamp"] + ".tar.bz2") self.settings["tmp_path"]=normpath(st+"/tmp/"+self.settings["target_subpath"]) def setup(self): @@ -46,11 +47,14 @@ class snapshot_target(generic_stage_target): if not os.path.exists(mytmp): os.makedirs(mytmp) - cmd("rsync -a --delete --exclude /packages/ --exclude /distfiles/ --exclude /local/ --exclude CVS/ --exclude .svn --filter=H_**/files/digest-* "+\ - self.settings["portdir"]+"/ "+mytmp+"/portage/","Snapshot failure",env=self.env) + cmd("rsync -a --delete --exclude /packages/ --exclude /distfiles/ " + \ + "--exclude /local/ --exclude CVS/ --exclude .svn --filter=H_**/files/digest-* "+\ + self.settings["portdir"] + "/ " + mytmp + "/%s/" % self.settings["repo_name"], + "Snapshot failure",env=self.env) print "Compressing Portage snapshot tarball..." - cmd("tar -I lbzip2 -cf "+self.settings["snapshot_path"]+" -C "+mytmp+" portage",\ + cmd("tar -I lbzip2 -cf " + self.settings["snapshot_path"] + " -C " + + mytmp + " %s" % self.settings["repo_name"], "Snapshot creation failure",env=self.env) self.gen_contents_file(self.settings["snapshot_path"]) diff --git a/modules/tinderbox_target.py b/modules/tinderbox_target.py index 46fe0829..d6d3ea30 100644 --- a/modules/tinderbox_target.py +++ b/modules/tinderbox_target.py @@ -29,8 +29,8 @@ class tinderbox_target(generic_stage_target): raise CatalystError,"Tinderbox aborting due to error." def set_cleanables(self): - self.settings["cleanables"]=["/etc/resolv.conf","/var/tmp/*","/root/*",\ - "/usr/portage"] + self.settings["cleanables"]=["/etc/resolv.conf","/var/tmp/*","/root/*", + self.settings['portdir']] def set_action_sequence(self): #Default action sequence for run method -- 2.26.2