提交 b4f65178 编写于 作者: J Joerg Jaspert

Merge commit 'stew/master' into merge

* commit 'stew/master':
  i think i fixed sort_changes
  fix the way we move files
  it at least gets to examine_package now
  attempt to fix process_new
Signed-off-by: NJoerg Jaspert <joerg@debian.org>
......@@ -77,7 +77,7 @@ Sections = None
################################################################################
def recheck(upload, session):
upload.recheck()
# STU: I'm not sure, but I don't thin kthis is necessary any longer: upload.recheck(session)
if len(upload.rejects) > 0:
answer = "XXX"
if Options["No-Action"] or Options["Automatic"] or Options["Trainee"]:
......@@ -159,7 +159,8 @@ def sort_changes(changes_files, session):
for filename in changes_files:
u = Upload()
try:
u.pkg.load_dot_dak(filename)
u.pkg.changes_file = filename
u.load_changes(filename)
u.update_subst()
cache[filename] = copy.copy(u.pkg.changes)
cache[filename]["filename"] = filename
......@@ -599,6 +600,7 @@ def prod_maintainer (note, upload):
def do_new(upload, session):
print "NEW\n"
files = upload.pkg.files
upload.check_files(not Options["No-Action"])
changes = upload.pkg.changes
cnf = Config()
......@@ -817,12 +819,34 @@ def lock_package(package):
finally:
os.unlink(path)
def move_file_to_queue(to_q, f, session):
"""mark a file as being in the unchecked queue"""
# update the queue_file entry for the existing queue
qf = session.query(QueueFile).filter_by(queueid=to_q.queueid,
filename=f.filename)
qf.queue = to_q
# update the changes_pending_files row
f.queue = to_q
def changes_to_unchecked(changes, session):
"""move a changes file to unchecked"""
unchecked = get_policy_queue('unchecked', session );
changes.in_queue = unchecked
for f in changes.pkg.files:
move_file_to_queue(unchecked, f)
# actually move files
changes.move_to_queue(unchecked)
def _accept(upload):
if Options["No-Action"]:
return
(summary, short_summary) = upload.build_summaries()
upload.accept(summary, short_summary, targetqueue)
os.unlink(upload.pkg.changes_file[:-8]+".dak")
# upload.accept(summary, short_summary, targetqueue)
# os.unlink(upload.pkg.changes_file[:-8]+".dak")
changes_to_unchecked(upload)
def do_accept(upload):
print "ACCEPT"
......@@ -841,9 +865,13 @@ def do_accept(upload):
_accept(upload)
def do_pkg(changes_file, session):
new_queue = get_policy_queue('new', session );
u = Upload()
u.pkg.load_dot_dak(changes_file)
u.update_subst()
u.pkg.changes_file = changes_file
u.load_changes(changes_file)
u.pkg.directory = new_queue.path
u.logger = Logger
origchanges = os.path.abspath(u.pkg.changes_file)
cnf = Config()
bcc = "X-DAK: dak process-new"
......@@ -859,21 +887,23 @@ def do_pkg(changes_file, session):
if not recheck(u, session):
return
(new, byhand) = check_status(files)
if new or byhand:
if new:
do_new(u, session)
if byhand:
do_byhand(u, session)
(new, byhand) = check_status(files)
if not new and not byhand:
try:
check_daily_lock()
do_accept(u)
except CantGetLockError:
print "Hello? Operator! Give me the number for 911!"
print "Dinstall in the locked area, cant process packages, come back later"
do_new(u,session)
# (new, byhand) = check_status(files)
# if new or byhand:
# if new:
# do_new(u, session)
# if byhand:
# do_byhand(u, session)
# (new, byhand) = check_status(files)
# if not new and not byhand:
# try:
# check_daily_lock()
# do_accept(u)
# except CantGetLockError:
# print "Hello? Operator! Give me the number for 911!"
# print "Dinstall in the locked area, cant process packages, come back later"
except AlreadyLockedError, e:
print "Seems to be locked by %s already, skipping..." % (e)
......@@ -898,10 +928,6 @@ def end():
def main():
global Options, Logger, Sections, Priorities
print "NO NEW PROCESSING CURRENTLY AVAILABLE"
print "(Go and do something more interesting)"
sys.exit(0)
cnf = Config()
session = DBConn().session()
......@@ -917,7 +943,8 @@ def main():
changes_files = apt_pkg.ParseCommandLine(cnf.Cnf,Arguments,sys.argv)
if len(changes_files) == 0:
changes_files = utils.get_changes_files(cnf["Dir::Queue::New"])
new_queue = get_policy_queue('new', session );
changes_files = utils.get_changes_files(new_queue.path)
Options = cnf.SubTree("Process-New::Options")
......
......@@ -115,8 +115,8 @@ def determine_new(changes, files, warn=1):
# Build up a list of potentially new things
for name, f in files.items():
# Skip byhand elements
if f["type"] == "byhand":
continue
# if f["type"] == "byhand":
# continue
pkg = f["package"]
priority = f["priority"]
section = f["section"]
......@@ -218,7 +218,7 @@ def check_valid(new):
def check_status(files):
new = byhand = 0
for f in files.keys():
if files[f]["type"] == "byhand":
if files[f].has_key("byhand"):
byhand = 1
elif files[f].has_key("new"):
new = 1
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册