createrepo/__init__.py
[email protected] (Seth Vidal)
| Newsgroups | gmane.linux.rpm.metadata |
|---|---|
| Message-ID | <[email protected]> |
createrepo/__init__.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) New commits: commit 2e6cff3a4672d6c885cc9ad120ac281ff3c90214 Author: Seth Vidal <[email protected]> Date: Tue Jan 8 10:59:47 2008 -0500 politely bounce over damaged rpms - output an error report new errorlog() method - can be easily replaced in subclass diff --git a/createrepo/__init__.py b/createrepo/__init__.py index c9c854e..082e937 100644 --- a/createrepo/__init__.py +++ b/createrepo/__init__.py @@ -115,7 +115,10 @@ class MetaDataGenerator: self._os_path_walk(startdir, extension_visitor, filelist) return filelist - + def errorlog(self, thing): + """subclass this if you want something different....""" + print >> sys.stderr, thing + def checkTimeStamps(self): """check the timestamp of our target dir. If it is not newer than the repodata return False, else True""" @@ -240,7 +243,12 @@ class MetaDataGenerator: # otherwise do it individually if not recycled: #scan rpm files - po = self.read_in_package(directory, pkg) + try: + po = self.read_in_package(directory, pkg) + except MDError, e: + # need to say something here + self.errorlog("\nError %s: %s\n" % (pkg, e)) + continue reldir = os.path.join(self.conf.basedir, directory) self.primaryfile.write(po.do_primary_xml_dump(reldir, baseurl=self.conf.baseurl)) self.flfile.write(po.do_filelists_xml_dump())