Author: dcbw
Update of /cvs/fedora/extras-buildsys/server
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv6285/server
Modified Files:
PackageJob.py
Log Message:
2006-10-31 Dan Williams <dcbw(a)redhat.com>
* server/PackageJob.py
- Fixes for older python versions that don't have yum.Errors.* but
yum-utils' repomd module instead
- Fixes for Yum 3.x logging changes
Index: PackageJob.py
===================================================================
RCS file: /cvs/fedora/extras-buildsys/server/PackageJob.py,v
retrieving revision 1.55
retrieving revision 1.56
diff -u -r1.55 -r1.56
--- PackageJob.py 31 Oct 2006 16:46:21 -0000 1.55
+++ PackageJob.py 31 Oct 2006 17:57:36 -0000 1.56
@@ -32,12 +32,19 @@
from plague import DebugUtils
import yum
+use_repomd = False
try:
import repomd.mdErrors
+ use_repomd = True
except ImportError:
pass
-from yum.logger import Logger
+use_yum_logger = False
+try:
+ from yum.logger import Logger
+ use_yum_logger = True
+except ImportError:
+ pass
CVS_CMD = "/usr/bin/cvs"
MAKE_CMD = "/usr/bin/make"
@@ -497,10 +504,17 @@
depsolve_root = os.path.dirname(yum_config) + '/'
base.doConfigSetup(fn=yum_config, root=depsolve_root)
+
threshold = 0
if DEBUG:
threshold = 5
- base.log = Logger(threshold=threshold, file_object=sys.stdout)
+ if use_yum_logger == True:
+ # For yum 2.x and earlier
+ base.log = logger.Logger(threshold=threshold, file_object=sys.stdout)
+ else:
+ # Use python logging module (yum 3.x and later)
+ base.doLoggingSetup(threshold, 1)
+
try:
base.doRepoSetup()
except yum.Errors.RepoError, exc:
@@ -528,14 +542,18 @@
for dep in srpm.requiresList():
if dep.startswith("rpmlib("):
continue
- try:
- pkg = base.returnPackageByDep(dep)
- except repomd.mdErrors.PackageSackError, exc:
- raise DepError(str(exc))
- except yum.Errors.PackageSackError, exc:
- raise DepError(str(exc))
- except yum.Errors.YumBaseError, exc:
- raise DepError(str(exc))
+ if use_repomd:
+ try:
+ pkg = base.returnPackageByDep(dep)
+ except repomd.mdErrors.PackageSackError, exc:
+ raise DepError(str(exc))
+ else:
+ try:
+ pkg = base.returnPackageByDep(dep)
+ except yum.Errors.PackageSackError, exc:
+ raise DepError(str(exc))
+ except yum.Errors.YumBaseError, exc:
+ raise DepError(str(exc))
except DepError, exc:
self._last_depsolve_error = str(exc)
print "%s (%s/%s): Depsolve Error: %s" % (self.uid, self.package,
arch, str(exc))