X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=dak%2Fprocess_unchecked.py;h=36b091f298ba42083407a12e713a972d0c54f403;hb=05aa3233f66dcdbb98c7546be843944206528b41;hp=01e95eedae6c61d39424da65cc541a1d0b62de89;hpb=f40df055fa0d4b37b6aac772e40747b8285c8c7c;p=dak.git diff --git a/dak/process_unchecked.py b/dak/process_unchecked.py index 01e95eed..36b091f2 100755 --- a/dak/process_unchecked.py +++ b/dak/process_unchecked.py @@ -246,7 +246,7 @@ def check_changes(): # Check there isn't already a changes file of the same name in one # of the queue directories. base_filename = os.path.basename(filename) - for dir in [ "Accepted", "Byhand", "Done", "New" ]: + for dir in [ "Accepted", "Byhand", "Done", "New", "ProposedUpdates" ]: if os.path.exists(Cnf["Dir::Queue::%s" % (dir) ]+'/'+base_filename): reject("%s: a file with this name already exists in the %s directory." % (base_filename, dir)) @@ -395,7 +395,7 @@ def check_files(): for file in file_keys: # Ensure the file does not already exist in one of the accepted directories - for dir in [ "Accepted", "Byhand", "New" ]: + for dir in [ "Accepted", "Byhand", "New", "ProposedUpdates" ]: if os.path.exists(Cnf["Dir::Queue::%s" % (dir) ]+'/'+file): reject("%s file already exists in the %s directory." % (file, dir)) if not daklib.utils.re_taint_free.match(file): @@ -529,8 +529,14 @@ def check_files(): files[file]["byhand"] = 1 elif os.path.exists(Cnf["Dir::Queue::New"] + '/' + dsc_filename): files[file]["new"] = 1 - elif not os.path.exists(Cnf["Dir::Queue::Accepted"] + '/' + dsc_filename): - reject("no source found for %s %s (%s)." % (source_package, source_version, file)) + else: + dsc_file_exists = 0 + for myq in ["Accepted", "Embargoed", "Unembargoed"]: + if os.path.exists(Cnf["Dir::Queue::"+myq] + '/' + dsc_filename): + dsc_file_exists = 1 + break + if not dsc_file_exists: + reject("no source found for %s %s (%s)." % (source_package, source_version, file)) # Check the version and for file overwrites reject(Upload.check_binary_against_db(file),"") @@ -1036,12 +1042,15 @@ def action (): queue_info = { "New": { "is": is_new, "process": acknowledge_new }, "Byhand" : { "is": is_byhand, "process": do_byhand }, + "StableUpdate" : { "is": is_stableupdate, "process": do_stableupdate }, "Unembargo" : { "is": is_unembargo, "process": queue_unembargo }, "Embargo" : { "is": is_embargo, "process": queue_embargo }, } queues = [ "New", "Byhand" ] if Cnf.FindB("Dinstall::SecurityQueueHandling"): queues += [ "Unembargo", "Embargo" ] + else: + queues += [ "StableUpdate" ] (prompt, answer) = ("", "XXX") if Options["No-Action"] or Options["Automatic"]: @@ -1131,7 +1140,12 @@ def is_unembargo (): if ql: return 1 - if pkg.directory == Cnf["Dir::Queue::Disembargo"].rstrip("/"): + oldcwd = os.getcwd() + os.chdir(Cnf["Dir::Queue::Disembargo"]) + disdir = os.getcwd() + os.chdir(oldcwd) + + if pkg.directory == disdir: if changes["architecture"].has_key("source"): if Options["No-Action"]: return 1 @@ -1173,6 +1187,24 @@ def queue_embargo (summary): ################################################################################ +def is_stableupdate (): + if changes["distribution"].has_key("proposed-updates"): + return 1 + return 0 + +def do_stableupdate (summary): + print "Moving to PROPOSED-UPDATES holding area." + Logger.log(["Moving to proposed-updates", pkg.changes_file]); + + Upload.dump_vars(Cnf["Dir::Queue::ProposedUpdates"]); + move_to_dir(Cnf["Dir::Queue::ProposedUpdates"]) + + # Check for override disparities + Upload.Subst["__SUMMARY__"] = summary; + Upload.check_override(); + +################################################################################ + def is_byhand (): for file in files.keys(): if files[file].has_key("byhand"): @@ -1318,7 +1350,7 @@ def main(): Logger = Upload.Logger = daklib.logging.Logger(Cnf, "process-unchecked") # debian-{devel-,}-changes@lists.debian.org toggles writes access based on this header - bcc = "X-DAK: dak process-unchecked\nX-Katie: this header is obsolete" + bcc = "X-DAK: dak process-unchecked\nX-Katie: $Revision: 1.65 $" if Cnf.has_key("Dinstall::Bcc"): Upload.Subst["__BCC__"] = bcc + "\nBcc: %s" % (Cnf["Dinstall::Bcc"]) else: