From juphoff at rpath.com Wed Jan 5 14:12:17 2011 From: juphoff at rpath.com (Jeff Uphoff) Date: Wed, 05 Jan 2011 19:12:17 +0000 Subject: mirrorball: disable checkMissingPackages for rhel Message-ID: <201101051912.p05JCHN5022349@scc.eng.rpath.com> changeset: a5c4f4a0cc62 user: Jeff Uphoff date: Wed, 05 Jan 2011 14:11:05 -0500 disable checkMissingPackages for rhel diff --git a/scripts/order_promote.py b/scripts/order_promote.py --- a/scripts/order_promote.py +++ b/scripts/order_promote.py @@ -50,6 +50,8 @@ bot = OrderedBot(cfg, errata) + checkMissingPackages = False + else: bot = OrderedBot(cfg, None) @@ -68,6 +70,8 @@ errata = Errata(bot._pkgSource) bot._errata._errata = errata -bot.promote(enforceAllExpected=True, checkMissingPackages=True) + checkMissingPackages = True + +bot.promote(enforceAllExpected=True, checkMissingPackages=checkMissingPackages) import epdb; epdb.st() diff --git a/scripts/order_update.py b/scripts/order_update.py --- a/scripts/order_update.py +++ b/scripts/order_update.py @@ -65,8 +65,9 @@ mcfg.read(confDir + '/erratarc') errata = rhnmirror.Errata(mcfg) + bot = ordered.Bot(cfg, errata) - bot = ordered.Bot(cfg, errata) + checkMissingPackages = False else: bot = ordered.Bot(cfg, None) @@ -86,7 +87,9 @@ errata = Errata(bot._pkgSource) bot._errata._errata = errata + checkMissingPackages = True + pkgMap = bot.update(fltr=fltr, restoreFile=restoreFile, - checkMissingPackages=True) + checkMissingPackages=checkMissingPackages) import epdb; epdb.st() From juphoff at rpath.com Wed Jan 5 14:12:18 2011 From: juphoff at rpath.com (Jeff Uphoff) Date: Wed, 05 Jan 2011 19:12:18 +0000 Subject: mirrorball: consolidate rhelorder.py functionality into platform-order.py Message-ID: <201101051912.p05JCIXY022380@scc.eng.rpath.com> changeset: 494191253b58 user: Jeff Uphoff date: Wed, 05 Jan 2011 14:11:06 -0500 consolidate rhelorder.py functionality into platform-order.py diff --git a/scripts/platform-order.py b/scripts/platform-order.py --- a/scripts/platform-order.py +++ b/scripts/platform-order.py @@ -23,18 +23,29 @@ cfg = UpdateBotConfig() cfg.read(os.path.join(confDir, 'updatebotrc')) -if cfg.platformName == 'sles': - from errata.sles import AdvisoryManager as Errata -elif cfg.platformName == 'sles11': - from errata.sles11 import AdvisoryManager11 as Errata -elif cfg.platformName == 'centos': - from errata.centos import AdvisoryManager as Errata +if cfg.platformName == 'rhel': + import rhnmirror + + mcfg = rhnmirror.MirrorConfig() + mcfg.read(confDir + '/erratarc') + + errata = rhnmirror.Errata(mcfg) + bot = Bot(cfg, errata) + else: - raise RuntimeError, 'unsupported platformName' + bot = Bot(cfg, None) -bot = Bot(cfg, None) -errata = Errata(bot._pkgSource) -bot._errata._errata = errata + if cfg.platformName == 'sles': + from errata.sles import AdvisoryManager as Errata + elif cfg.platformName == 'sles11': + from errata.sles11 import AdvisoryManager11 as Errata + elif cfg.platformName == 'centos': + from errata.centos import AdvisoryManager as Errata + else: + raise RuntimeError, 'unsupported platformName' + + errata = Errata(bot._pkgSource) + bot._errata._errata = errata errata.fetch() @@ -49,6 +60,7 @@ childPackages, parentPackages = bot._errata.sanityCheckOrder() -missingPackages, missingOrder = bot._checkMissingPackages() +if cfg.platformName != 'rhel': + missingPackages, missingOrder = bot._checkMissingPackages() import epdb; epdb.st() diff --git a/scripts/rhelorder.py b/scripts/rhelorder.py deleted file mode 100755 --- a/scripts/rhelorder.py +++ /dev/null @@ -1,63 +0,0 @@ -#!/usr/bin/python - -import os -import sys -import time -import tempfile - -sys.path.insert(0, os.environ['HOME'] + '/hg/conary') -sys.path.insert(0, os.environ['HOME'] + '/hg/rhnmirror') -sys.path.insert(0, os.environ['HOME'] + '/hg/rbuilder-5.5/rpath-xmllib') -sys.path.insert(0, os.environ['HOME'] + '/hg/rbuilder-5.5/rpath-capsule-indexer') - -from conary.lib import util -sys.excepthook = util.genExcepthook() - -mbdir = os.path.abspath('../') -sys.path.insert(0, mbdir) - -confDir = os.path.join(mbdir, 'config', sys.argv[1]) - -from updatebot import log -from updatebot.ordered import Bot -from updatebot import UpdateBotConfig - -import rhnmirror - -slog = log.addRootLogger() - -mcfg = rhnmirror.MirrorConfig() -mcfg.read(confDir + '/erratarc') -#mcfg.indexerDb += '5' -#mcfg.indexerDb = 'sqlite:///%s' % tempfile.mktemp(suffix='.db', prefix='order-') - -slog.info('db = %s' % mcfg.indexerDb) - -#mcfg.channels = [ -# 'rhel-x86_64-server-5', -# 'rhel-i386-server-5', -# 'rhel-x86_64-as-4', -# 'rhel-i386-as-4', -#] - -errata = rhnmirror.Errata(mcfg) -errata.fetch() - -cfg = UpdateBotConfig() -cfg.read(os.path.join(confDir, 'updatebotrc')) - -bot = Bot(cfg, errata) -bot._pkgSource.load() - -bot._errata._orderErrata() - -order = bot._errata._order -advMap = bot._errata._advMap -sorder = sorted(order) - -def tconv(tstamp): - return time.strftime('%m-%d-%Y %H:%M:%S', time.localtime(tstamp)) - -childPackages, parentPackages = bot._errata.sanityCheckOrder() - -import epdb; epdb.st() From agrimm at rpath.com Mon Jan 24 15:31:07 2011 From: agrimm at rpath.com (Andy Grimm) Date: Mon, 24 Jan 2011 20:31:07 +0000 Subject: mirrorball: add groupset for conary 2.2 Message-ID: <201101242031.p0OKV7or019003@scc.eng.rpath.com> changeset: e57ec4c5ca0b user: Andy Grimm date: Mon, 24 Jan 2011 15:13:20 -0500 add groupset for conary 2.2 diff --git a/scripts/buildautoloadrecipes b/scripts/buildautoloadrecipes --- a/scripts/buildautoloadrecipes +++ b/scripts/buildautoloadrecipes @@ -51,6 +51,7 @@ groupinfo redirect userinfo + groupset " for pkg in $autoLoadPackages ; do From agrimm at rpath.com Mon Jan 24 15:31:07 2011 From: agrimm at rpath.com (Andy Grimm) Date: Mon, 24 Jan 2011 20:31:07 +0000 Subject: mirrorball: fix an import in gengroupmodel Message-ID: <201101242031.p0OKV7Qx019034@scc.eng.rpath.com> changeset: 2b5d775e9706 user: Andy Grimm date: Mon, 24 Jan 2011 15:13:57 -0500 fix an import in gengroupmodel diff --git a/scripts/gengroupmodel b/scripts/gengroupmodel --- a/scripts/gengroupmodel +++ b/scripts/gengroupmodel @@ -25,6 +25,7 @@ import rmake import conary import updatebot +from updatebot import cmdline print >>sys.stderr, 'using conary from', os.path.dirname(conary.__file__) print >>sys.stderr, 'using rmake from', os.path.dirname(rmake.__file__) @@ -49,7 +50,7 @@ # load package source self._pkgSource.load() - ui = UserInterface() + ui = cmdline.UserInterface() mgr = groupmgr.GroupManager(self._cfg, ui, useMap=self._pkgSource.useMap) mgr.setReadOnly() From agrimm at rpath.com Mon Jan 24 15:31:08 2011 From: agrimm at rpath.com (Andy Grimm) Date: Mon, 24 Jan 2011 20:31:08 +0000 Subject: mirrorball: deal with cases where neither version nor epoch of a binary rpm match the source, intentionally Message-ID: <201101242031.p0OKV8tb019061@scc.eng.rpath.com> changeset: eddebebef238 user: Andy Grimm date: Mon, 24 Jan 2011 15:24:42 -0500 deal with cases where neither version nor epoch of a binary rpm match the source, intentionally diff --git a/updatebot/pkgsource/yumsource.py b/updatebot/pkgsource/yumsource.py --- a/updatebot/pkgsource/yumsource.py +++ b/updatebot/pkgsource/yumsource.py @@ -305,17 +305,23 @@ for srcTup in self._rpmMap.keys(): srcKey = list(srcTup) epoch = int(srcKey[1]) - while epoch >= 0: - srcKey[1] = str(epoch) + + # _createSrcMap has already tested this + sources = [ x for x in self._srcMap.iterkeys() + if (srcKey[0], srcKey[2], srcKey[3], srcKey[4]) == + (x[0], x[2], x[3], x[4]) ] + + if sources: + srcKey[1] = max([ x[1] for x in sources ]) key = tuple(srcKey) - if key in self._srcMap: - srcPkg = self._srcMap[key] - for binPkg in self._rpmMap[srcTup]: - self.srcPkgMap[srcPkg].add(binPkg) - self.binPkgMap[binPkg] = srcPkg - del self._rpmMap[srcTup] - break - epoch -= 1 + srcPkg = self._srcMap[key] + for binPkg in self._rpmMap[srcTup]: + self.srcPkgMap[srcPkg].add(binPkg) + self.binPkgMap[binPkg] = srcPkg + del self._rpmMap[srcTup] + else: + # raise something here + import epdb; epdb.st() if self._rpmMap: count = sum([ len(x) for x in self._rpmMap.itervalues() ]) From agrimm at rpath.com Mon Jan 24 15:31:08 2011 From: agrimm at rpath.com (Andy Grimm) Date: Mon, 24 Jan 2011 20:31:08 +0000 Subject: mirrorball: initialize _findTrovesCache to the appropriate type Message-ID: <201101242031.p0OKV8EE019088@scc.eng.rpath.com> changeset: 6ffd1f7f31e8 user: Andy Grimm date: Mon, 24 Jan 2011 15:30:47 -0500 initialize _findTrovesCache to the appropriate type diff --git a/updatebot/errata.py b/updatebot/errata.py --- a/updatebot/errata.py +++ b/updatebot/errata.py @@ -34,6 +34,9 @@ from updatebot.errors import UpdateRemovesPackageError from updatebot.errors import UpdateReusesPackageError +# Fix default type of _findTrovesCache +from updatebot.lib.findtroves import FindTrovesCache + log = logging.getLogger('updatebot.errata') def loadErrata(func): @@ -977,7 +980,7 @@ def __init__(self, cfg): conaryhelper.ConaryHelper.__init__(self, cfg) self._client = None - self._findTrovesCache = {} + self._findTrovesCache = FindTrovesCache(None) @staticmethod def _getCacheKey(nvf):