X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=dak%2Fprocess_new.py;h=6a66e32108a85600a2bf56b2abcebd3acd31eb09;hb=302210275ffbcab0b29c1d2af7433e8e28f40b93;hp=6b37d6993290aff234b7fca99155b9832cec8547;hpb=e07739afa4dcba75d0211de2d90f7146344d6a1b;p=dak.git diff --git a/dak/process_new.py b/dak/process_new.py index 6b37d699..6a66e321 100755 --- a/dak/process_new.py +++ b/dak/process_new.py @@ -821,7 +821,7 @@ def is_source_in_queue_dir(qdir): u = queue.Upload(Cnf) u.pkg.changes_file = entry u.update_vars() - if not changes["architecture"].has_key("source"): + if not Upload.pkg.changes["architecture"].has_key("source"): # another binary upload, ignore continue if Upload.pkg.changes["version"] != u.pkg.changes["version"]: @@ -833,35 +833,45 @@ def is_source_in_queue_dir(qdir): def move_to_holding(suite, queue_dir): print "Moving to %s holding area." % (suite.upper(),) + if Options["No-Action"]: + return Logger.log(["Moving to %s" % (suite,), Upload.pkg.changes_file]) Upload.dump_vars(queue_dir) move_to_dir(queue_dir) os.unlink(Upload.pkg.changes_file[:-8]+".dak") def do_accept_stableupdate(suite, q): + (summary, short_summary) = Upload.build_summaries() queue_dir = Cnf["Dir::Queue::%s" % (q,)] if not Upload.pkg.changes["architecture"].has_key("source"): # It is not a sourceful upload. So its source may be either in p-u # holding, in new, in accepted or already installed. - if is_source_in_qdir(queue_dir): + if is_source_in_queue_dir(queue_dir): # It's in p-u holding, so move it there. move_to_holding(suite, queue_dir) - if is_source_in_qdir(Cnf["Dir::Queue::New"]): + elif is_source_in_queue_dir(Cnf["Dir::Queue::New"]): # It's in NEW. We expect the source to land in p-u holding # pretty soon. move_to_holding(suite, queue_dir) - if is_source_in_qdir(Cnf["Dir::Queue::Accepted"]): + elif is_source_in_queue_dir(Cnf["Dir::Queue::Accepted"]): # The source is in accepted, the binary cleared NEW: accept it. Upload.accept(summary, short_summary) os.unlink(Upload.pkg.changes_file[:-8]+".dak") - if Upload.source_exists(Upload.pkg.changes["source"], + elif Upload.source_exists(Upload.pkg.changes["source"], Upload.pkg.changes["version"]): # dak tells us that there is source available. At time of # writing this means that it is installed, so put it into # accepted. Upload.accept(summary, short_summary) os.unlink(Upload.pkg.changes_file[:-8]+".dak") - move_to_holding(suite, queue_dir) + else: + # We are handling a sourceful upload. Move to accepted if currently + # in p-u holding and to p-u holding otherwise. + if is_source_in_queue_dir(queue_dir): + Upload.accept(summary, short_summary) + os.unlink(Upload.pkg.changes_file[:-8]+".dak") + else: + move_to_holding(suite, queue_dir) def do_accept(): print "ACCEPT" @@ -889,7 +899,8 @@ def do_accept(): Upload.accept(summary, short_summary) os.unlink(Upload.pkg.changes_file[:-8]+".dak") finally: - os.unlink(Cnf["Process-New::AcceptedLockFile"]) + if not Options["No-Action"]: + os.unlink(Cnf["Process-New::AcceptedLockFile"]) def check_status(files): new = byhand = 0