add rate limiting to build queues

This commit is contained in:
Jimmy Zelinskie 2016-12-05 16:07:00 -05:00
parent f0b19b26c9
commit 7877c6ab94
6 changed files with 36 additions and 8 deletions

View file

@ -77,6 +77,10 @@ class WorkQueue(object):
._available_jobs(now, name_match_query)
.where(~(QueueItem.queue_name << running_query)))
def num_available_jobs(self, prefix):
prefix = prefix.lstrip('/')
return self._available_jobs(datetime.utcnow(), self._name_match_query() + prefix).count()
def _name_match_query(self):
return '%s%%' % self._canonical_name([self._queue_name] + self._canonical_name_match_list)