--- gather.py-original	2007-05-03 18:35:02.000000000 +0200
+++ gather.py-JG	2007-05-04 17:25:21.000000000 +0200
@@ -16,6 +16,9 @@
 import os
 import shutil
 import sys
+import logging
+
+log = logging.getLogger("pungi")
 
 class Gather(yum.YumBase):
     def __init__(self, config, pkglist):
@@ -46,7 +49,6 @@
         #self.doSackSetup(arches)
         self.doSackSetup(archlist=arches) # work around temp break in yum api
         self.doSackFilelistPopulate()
-        self.logger = yum.logging.getLogger("yum.verbose.pungi")
         self.pkglist = pkglist
         self.polist = []
         self.srpmlist = []
@@ -56,15 +58,8 @@
         self.compsobj.add(self.config.get('default', 'comps'))
 
     def doLoggingSetup(self, debuglevel, errorlevel):
-        """Setup the logging facility."""
-
-
-        logdir = os.path.join(self.config.get('default', 'destdir'), 'logs')
-        if not os.path.exists(logdir):
-            os.makedirs(logdir)
-        logfile = os.path.join(logdir, '%s.%s.log' % (self.config.get('default', 'flavor'),
-                                                      self.config.get('default', 'arch')))
-        yum.logging.basicConfig(level=yum.logging.DEBUG, filename=logfile)
+        # We want to use our own logger.
+        pass
 
     def doFileLogSetup(self, uid, logfile):
         # This function overrides a yum function, allowing pungi to control
@@ -76,8 +71,7 @@
            transaction info"""
 
 
-        if not self.config.has_option('default', 'quiet'):
-            self.logger.info('Checking deps of %s.%s' % (po.name, po.arch))
+        log.info('Checking deps of %s.%s' % (po.name, po.arch))
 
         reqs = po.requires
         provs = po.provides
@@ -93,13 +87,12 @@
 
             deps = self.whatProvides(r, f, v).returnPackages()
             if deps is None:
-                self.logger.warning("Unresolvable dependency %s in %s.%s" % (r, po.name, po.arch))
+                log.warning("Unresolvable dependency %s in %s.%s" % (r, po.name, po.arch))
                 continue
 
             for dep in deps:
                 self.tsInfo.addInstall(dep)
-                if not self.config.has_option('default', 'quiet'):
-                    self.logger.info('Added %s.%s for %s.%s' % (dep.name, dep.arch, po.name, po.arch))
+                log.info('Added %s.%s for %s.%s' % (dep.name, dep.arch, po.name, po.arch))
            
             self.resolved_deps[req] = None
 
@@ -124,7 +117,7 @@
 
         # Check if we have the group
         if not self.compsobj.has_group(group):
-            self.logger.error("Group %s not found in comps!" % group)
+            log.error("Group %s not found in comps!" % group)
             return packages
 
         # Get the group object to work with
@@ -175,22 +168,18 @@
         for line in self.pkglist:
             line = line.strip()
             if line.startswith('#'):
-                if not self.config.has_option('default', 'quiet'):
-                    self.logger.info('Skipping comment: %s' % line)
+                log.info('Skipping comment: %s' % line)
                 continue
             if line.startswith('@'):
-                if not self.config.has_option('default', 'quiet'):
-                    self.logger.info('Adding group: %s' % line)
+                log.info('Adding group: %s' % line)
                 grouplist.append(line.strip('@'))
                 continue
             if line.startswith('-'):
-                if not self.config.has_option('default', 'quiet'):
-                    self.logger.info('Adding exclude: %s' % line)
+                log.info('Adding exclude: %s' % line)
                 excludelist.append(line.strip('-'))
                 continue
             else:
-                if not self.config.has_option('default', 'quiet'):
-                    self.logger.info('Adding package: %s' % line)
+                log.info('Adding package: %s' % line)
                 addlist.append(line)
 
         # First remove the excludes
@@ -219,12 +208,10 @@
         mysack = yum.packageSack.ListPackageSack(matches)
         for match in mysack.returnNewestByNameArch():
             self.tsInfo.addInstall(match)
-            if not self.config.has_option('default', 'quiet'):
-                self.logger.info('Found %s.%s' % (match.name, match.arch))
+            log.info('Found %s.%s' % (match.name, match.arch))
 
         for pkg in unmatched:
-            if not pkg in matchdict.keys():
-                self.logger.warn('Could not find a match for %s' % pkg)
+            log.warn('Could not find a match for %s' % pkg)
 
         if len(self.tsInfo) == 0:
             raise yum.Errors.MiscError, 'No packages found to download.'
@@ -262,7 +249,7 @@
             for pkg in self.polist:
                 downloads.append('%s.%s' % (pkg.name, pkg.arch))
                 downloads.sort()
-            self.logger.info("Download list: %s" % downloads)
+            log.info("Download list: %s" % downloads)
 
         # Package location within destdir, name subject to change/config
         pkgdir = os.path.join(self.config.get('default', 'destdir'), self.config.get('default', 'version'), 
@@ -282,8 +269,7 @@
             if (os.path.exists(local) and
                 str(os.path.getsize(local)) == pkg.packagesize):
 
-                if not self.config.has_option('default', 'quiet'):
-                    self.logger.info("%s already exists and appears to be complete" % local)
+                log.info("%s already exists and appears to be complete" % local)
                 target = os.path.join(pkgdir, os.path.basename(remote))
                 if os.path.exists(target):
                     os.remove(target) # avoid traceback after interrupted download
@@ -292,8 +278,7 @@
 
             # Disable cache otherwise things won't download
             repo.cache = 0
-            if not self.config.has_option('default', 'quiet'):
-                self.logger.info('Downloading %s' % os.path.basename(remote))
+            log.info('Downloading %s' % os.path.basename(remote))
             pkg.localpath = local # Hack: to set the localpath to what we want.
 
             # do a little dance for file:// repos...
@@ -348,19 +333,16 @@
             local = os.path.join(self.config.get('default', 'cachedir'), local)
             if os.path.exists(local) and str(os.path.getsize(local)) == pkg.packagesize:
 
-                if not self.config.has_option('default', 'quiet'):
-                    self.logger.info("%s already exists and appears to be complete" % local)
+                log.info("%s already exists and appears to be complete" % local)
                 if os.path.exists(os.path.join(pkgdir, os.path.basename(remote))) and str(os.path.getsize(os.path.join(pkgdir, os.path.basename(remote)))) == pkg.packagesize:
-                    if not self.config.has_option('default', 'quiet'):
-                        self.logger.info("%s already exists in tree and appears to be complete" % local)
+                    log.info("%s already exists in tree and appears to be complete" % local)
                 else:
                     os.link(local, os.path.join(pkgdir, os.path.basename(remote)))
                 continue
 
             # Disable cache otherwise things won't download
             repo.cache = 0
-            if not self.config.has_option('default', 'quiet'):
-                self.logger.info('Downloading %s' % os.path.basename(remote))
+            log.info('Downloading %s' % os.path.basename(remote))
             pkg.localpath = local # Hack: to set the localpath to what we want.
 
             # do a little dance for file:// repos...
