X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=daklib%2Fqueue.py;h=d5314c97a04bd2ce56ca595369779c4ddcc6c608;hb=3bb635cd8b8d524e808d537f469031125dba86fc;hp=3169e7a2122e1cdfbb846d77a200b5b0cbb58108;hpb=b21637628cd8a4b4ac060efc6396ff966ddfe8a8;p=dak.git diff --git a/daklib/queue.py b/daklib/queue.py index 3169e7a2..d5314c97 100755 --- a/daklib/queue.py +++ b/daklib/queue.py @@ -106,12 +106,12 @@ def get_type(f): elif f["type"] in [ "orig.tar.gz", "orig.tar.bz2", "tar.gz", "tar.bz2", "diff.gz", "diff.bz2", "dsc" ]: type = "dsc" else: - fubar("invalid type (%s) for new. Dazed, confused and sure as heck not continuing." % (type)) + utils.fubar("invalid type (%s) for new. Dazed, confused and sure as heck not continuing." % (type)) # Validate the override type type_id = database.get_override_type_id(type) if type_id == -1: - fubar("invalid type (%s) for new. Say wha?" % (type)) + utils.fubar("invalid type (%s) for new. Say wha?" % (type)) return type @@ -134,72 +134,6 @@ def check_valid(new): (priority != "source" and type == "dsc"): new[pkg]["priority id"] = -1 -################################################################################ - -# We reject packages if the release team defined a transition for them -def check_transition(sourcepkg, cleanup=0): - to_dump = 0 - - # Only check if there is a file defined (and existant) with checks. It's a little bit - # specific to Debian, not much use for others, so return early there. - if not Cnf.has_key("Dinstall::Reject::ReleaseTransitions") and - not os.path.exists("%s" % (Cnf["Dinstall::Reject::ReleaseTransitions"])): - return - - # Parse the yaml file - sourcefile = file(Cnf["Dinstall::Reject::ReleaseTransitions"], 'r') - try: - transitions = load(sourcefile) - except error, msg: - utils.warn("Not checking transitions, the transitions file is broken: %s." % (msg)) - return - - # Now look through all defined transitions - for trans in transition: - t = transition[trans] - # We check if the transition is still valid - # If not we remove the whole setting from the dictionary and later dump it, - # so we don't process it again. - source = t["source"] - new_vers = t["new"] - q = Upload.projectB.query(""" - SELECT s.version FROM source s, suite su, src_associations sa - WHERE sa.source=s.id - AND sa.suite=su.id - AND su.suite_name='testing' - AND s.source='%s'""" - % (source)) - ql = q.getresult() - if ql and apt_pkg.VersionCompare(new_vers, ql[0][0]) == 1: - # This is still valid, the current version in database is older than - # the new version we wait for - - # Check if the source we look at is affected by this. - if sourcepkg in t['packages']: - # The source is affected, lets reject it. - reject("""%s: part of the %s transition. - - Your package is part of a testing transition to get %s migrated. - - Transition description: %s - - This transition will finish when %s, version %s, reaches testing. - This transition is managed by the Release Team and %s - is the Release-Team member responsible for it. - Please contact them or debian-release@lists.debian.org if you - need further assistance. - """ - % (sourcepkg, trans, source, t["reason"], source, new_vers, t["rm"])) - return 0 - else: - # We either have the wanted or a newer version in testing, or the package got - # removed completly. In that case we don't need to keep the transition blocker - del transition[trans] - to_dump = 1 - - if cleanup and to_dump: - destfile = file(Cnf["Dinstall::Reject::ReleaseTransitions"], 'w') - dump(transition, destfile) ############################################################################### @@ -298,7 +232,8 @@ class Upload: "closes", "changes" ]: d_changes[i] = changes[i] # Optional changes fields - for i in [ "changed-by", "filecontents", "format", "process-new note", "adv id", "distribution-version" ]: + for i in [ "changed-by", "filecontents", "format", "process-new note", "adv id", "distribution-version", + "sponsoremail" ]: if changes.has_key(i): d_changes[i] = changes[i] ## dsc @@ -345,10 +280,14 @@ class Upload: Subst["__MAINTAINER_FROM__"] = changes["changedby2047"] Subst["__MAINTAINER_TO__"] = "%s, %s" % (changes["changedby2047"], changes["maintainer2047"]) + if "sponsoremail" in changes: + Subst["__MAINTAINER_TO__"] += ", %s"%changes["sponsoremail"] Subst["__MAINTAINER__"] = changes.get("changed-by", "Unknown") else: Subst["__MAINTAINER_FROM__"] = changes["maintainer2047"] Subst["__MAINTAINER_TO__"] = changes["maintainer2047"] + if "sponsoremail" in changes: + Subst["__MAINTAINER_TO__"] += ", %s"%changes["sponsoremail"] Subst["__MAINTAINER__"] = changes.get("maintainer", "Unknown") if self.Cnf.has_key("Dinstall::TrackingServer") and changes.has_key("source"): Subst["__MAINTAINER_TO__"] += "\nBcc: %s@%s" % (changes["source"], self.Cnf["Dinstall::TrackingServer"])