X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=daklib%2Fdbconn.py;h=26191ae273aa71a4f0ed09ca52044d438cedc451;hb=2e3bbd0053889a006a5b03c99f8cc2d2637d0d1e;hp=8d8e6af8ea4e43dc24845983bb5099eb8ef0f194;hpb=bf38dcbe75f32f221887eeda8fce0e81e64db115;p=dak.git diff --git a/daklib/dbconn.py b/daklib/dbconn.py index 8d8e6af8..26191ae2 100755 --- a/daklib/dbconn.py +++ b/daklib/dbconn.py @@ -448,30 +448,30 @@ class BuildQueue(object): for f in self.queuefiles: if f.fileid is not None and f.fileid == poolfile.file_id or \ f.poolfile.filename == poolfile_basename: - # In this case, update the QueueFile entry so we + # In this case, update the BuildQueueFile entry so we # don't remove it too early f.lastused = datetime.now() DBConn().session().object_session(pf).add(f) return f - # Prepare QueueFile object - qf = QueueFile() - qf.queue_id = self.queue_id + # Prepare BuildQueueFile object + qf = BuildQueueFile() + qf.build_queue_id = self.queue_id qf.lastused = datetime.now() qf.filename = poolfile_basename - targetpath = qf.fullpath + targetpath = poolfile.fullpath queuepath = os.path.join(self.path, poolfile_basename) try: - if self.copy_pool_files: + if self.copy_files: # We need to copy instead of symlink import utils - utils.copy(targetfile, queuepath) + utils.copy(targetpath, queuepath) # NULL in the fileid field implies a copy qf.fileid = None else: - os.symlink(targetfile, queuepath) + os.symlink(targetpath, queuepath) qf.fileid = poolfile.file_id except OSError: return None @@ -485,9 +485,9 @@ class BuildQueue(object): __all__.append('BuildQueue') @session_wrapper -def get_queue(queuename, session=None): +def get_build_queue(queuename, session=None): """ - Returns Queue object for given C{queue name}, creating it if it does not + Returns BuildQueue object for given C{queue name}, creating it if it does not exist. @type queuename: string @@ -497,18 +497,18 @@ def get_queue(queuename, session=None): @param session: Optional SQLA session object (a temporary one will be generated if not supplied) - @rtype: Queue - @return: Queue object for the given queue + @rtype: BuildQueue + @return: BuildQueue object for the given queue """ - q = session.query(Queue).filter_by(queue_name=queuename) + q = session.query(BuildQueue).filter_by(queue_name=queuename) try: return q.one() except NoResultFound: return None -__all__.append('get_queue') +__all__.append('get_build_queue') ################################################################################ @@ -1659,6 +1659,31 @@ class PolicyQueue(object): __all__.append('PolicyQueue') +@session_wrapper +def get_policy_queue(queuename, session=None): + """ + Returns PolicyQueue object for given C{queue name} + + @type queuename: string + @param queuename: The name of the queue + + @type session: Session + @param session: Optional SQLA session object (a temporary one will be + generated if not supplied) + + @rtype: PolicyQueue + @return: PolicyQueue object for the given queue + """ + + q = session.query(PolicyQueue).filter_by(queue_name=queuename) + + try: + return q.one() + except NoResultFound: + return None + +__all__.append('get_policy_queue') + ################################################################################ class Priority(object):