u.move_to_queue(queue)
chg.in_queue_id = queue.policy_queue_id
session.add(chg)
+
+ # send to build queues
+ if queue.send_to_build_queues:
+ for suite_name in u.pkg.changes["distribution"].keys():
+ suite = get_suite(suite_name, session)
+ for q in suite.copy_queues:
+ q.add_changes_from_policy_queue(queue, chg)
+
session.commit()
# Check for override disparities
def is_unembargo(u):
session = DBConn().session()
- cnf = Config()
# If we dont have the disembargo queue we are not on security and so not interested
# in doing any security queue handling
- if not get_policy_queue("disembargo"):
+ disembargo_queue = get_policy_queue("unembargoed")
+ if not disembargo_queue:
return False
# If we already are in newstage, then it means this just got passed through and accepted
session.close()
return True
- oldcwd = os.getcwd()
- os.chdir(cnf["Dir::Queue::Disembargo"])
- disdir = os.getcwd()
- os.chdir(oldcwd)
+ # Ensure we don't have a / on the end or something
+ disdir = os.path.abspath(disembargo_queue.path)
ret = False
return ret
def do_unembargo(u, summary, short_summary, chg, session=None):
- polq=get_policy_queue('disembargo')
+ polq=get_policy_queue('unembargoed')
package_to_queue(u, summary, short_summary,
polq, chg, session,
announce=None)
- for suite_name in u.pkg.changes["distribution"].keys():
- suite = get_suite(suite_name, session)
- for q in suite.copy_queues:
- for f in u.pkg.files.keys():
- copyfile(os.path.join(polq.path, f), os.path.join(q.path, f))
#
#################################################################################
#
# last in line, so if that exists, return true
# Of course do not return true when we accept from out of newstage, as that means
# it just left embargo and we want it in the archive
- if get_policy_queue('embargo'):
+ if get_policy_queue('embargoed'):
session = DBConn().session()
dbc = get_dbchange(u.pkg.changes_file, session)
if dbc and dbc.in_queue.queue_name in [ 'newstage' ]:
return True
def do_embargo(u, summary, short_summary, chg, session=None):
- polq=get_policy_queue('embargo')
+ polq=get_policy_queue('embargoed')
package_to_queue(u, summary, short_summary,
polq, chg, session,
announce=None)
- for suite_name in u.pkg.changes["distribution"].keys():
- suite = get_suite(suite_name, session)
- for q in suite.copy_queues:
- for f in u.pkg.files.keys():
- copyfile(os.path.join(polq.path, f), os.path.join(q.path, f))
################################################################################
all_auto = 0
continue
- ABH = cnf.SubTree("AutomaticByHandPackages")
+ ABH = cnf.subtree("AutomaticByHandPackages")
if not ABH.has_key(pckg) or \
ABH["%s::Source" % (pckg)] != u.pkg.changes["source"]:
print "not match %s %s" % (pckg, u.pkg.changes["source"])