def failed_job(request, retry=False): failed_job_ = request.POST['failed_job'] job = b64decode(failed_job_) if retry: # post /failed/retry decoded = ResQ.decode(job) failure.retry(get_pyres(), decoded['queue'], job) else: # post /failed/delete failure.delete(get_pyres(), job) return redirect('resweb-failed')
def retry_failed(request, number=5000): # get /failed/retry_all resq = get_pyres() failures = failure.all(resq, 0, number) for f in failures: j = b64decode(f['redis_value']) failure.retry(resq, f['queue'], j) return redirect('resweb-failed')
def dispatch(self, request, *args, **kwargs): self.resq = get_pyres() if getattr(self, '_paginated', False): start = request.GET.get('start', 0) try: start = int(start) except ValueError: start = 0 self._start = start self._end = self._start + self._items_per_page return super(ReswebView, self).dispatch(request, *args, **kwargs)
def delete_queue(request, queue_id): get_pyres().remove_queue(queue_id) return redirect('resweb-queues')
def delete_all_failed(request): # get /failed/delete_all resq = get_pyres() resq.redis.rename('resque:failed', 'resque:failed-staging') resq.redis.delete('resque:failed-staging') return redirect('resweb-failed')