Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-g2.git;a=commitdiff;h=db03aa9c09d1d8939ce4b936f196e3029ec1e589
commit db03aa9c09d1d8939ce4b936f196e3029ec1e589 Author: Miklos Vajna <vmik...@frugalware.org> Date: Sun Jun 19 16:47:50 2011 +0200 pactest: fix gensync Inspired by pacman.git's commit fa933df65b9e024ec3291fcc1f995be3dc000e0c, by Xavier Chantry <chantry.xav...@gmail.com>. diff --git a/pactest/pmdb.py b/pactest/pmdb.py index 19e3832..0b8b815 100644 --- a/pactest/pmdb.py +++ b/pactest/pmdb.py @@ -82,10 +82,12 @@ class pmdb: """Database object """ - def __init__(self, treename, dbdir): + def __init__(self, treename, root): self.treename = treename - self.dbdir = dbdir self.pkgs = [] + self.dbdir = os.path.join(root, PM_DBPATH, treename) + if self.treename != "local": + self.dbfile = os.path.join(root, PM_DBPATH, treename + ".fdb") def __str__(self): return "%s" % self.treename @@ -101,7 +103,7 @@ class pmdb: """ """ - path = os.path.join(self.dbdir, self.treename) + path = self.dbdir if not os.path.isdir(path): return None @@ -223,7 +225,7 @@ class pmdb: """ """ - path = os.path.join(self.dbdir, self.treename, pkg.dbname()) + path = os.path.join(self.dbdir, pkg.dbname()) if not os.path.isdir(path): os.makedirs(path); @@ -322,24 +324,19 @@ class pmdb: pkg.checksum["install"] = getsha1sum(filename) pkg.mtime["install"] = getmtime(filename) - def gensync(self, path): + def gensync(self): """ """ + if not self.dbfile: + return curdir = os.getcwd() - tmpdir = tempfile.mkdtemp() - os.chdir(tmpdir) - - for pkg in self.pkgs: - mkdescfile(pkg.fullname(), pkg) + os.chdir(self.dbdir) # Generate database archive - os.makedirs(path, 0755) - archive = os.path.join(path, "%s%s" % (self.treename, PM_EXT_DB)) - os.system("tar zcf %s *" % archive) + os.system("tar zcf %s *" % self.dbfile) os.chdir(curdir) - shutil.rmtree(tmpdir) def ispkgmodified(self, pkg): """ diff --git a/pactest/pmtest.py b/pactest/pmtest.py index a380004..334dbda 100644 --- a/pactest/pmtest.py +++ b/pactest/pmtest.py @@ -45,7 +45,7 @@ class pmtest: """ """ if not treename in self.db: - self.db[treename] = pmdb.pmdb(treename, os.path.join(self.root, PM_DBPATH)) + self.db[treename] = pmdb.pmdb(treename, self.root) self.db[treename].pkgs.append(pkg) def addpkg(self, pkg): @@ -71,7 +71,7 @@ class pmtest: self.args = "" self.retcode = 0 self.db = { - "local": pmdb.pmdb("local", os.path.join(self.root, PM_DBPATH)) + "local": pmdb.pmdb("local", self.root) } self.localpkgs = [] self.filesystem = [] @@ -150,9 +150,11 @@ class pmtest: for key, value in self.db.iteritems(): if key == "local": continue - archive = value.treename + PM_EXT_DB - vprint("\t" + os.path.join(SYNCREPO, archive)) - value.gensync(os.path.join(syncdir, value.treename)) + vprint("\t" + value.treename) + value.gensync() + serverpath = os.path.join(syncdir, value.treename) + os.mkdir(serverpath) + shutil.copy(value.dbfile, serverpath) # Filesystem vprint(" Populating file system") _______________________________________________ Frugalware-git mailing list Frugalware-git@frugalware.org http://frugalware.org/mailman/listinfo/frugalware-git