From 856748b0a8468b3e01531576b041ff4611cee450 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Mon, 26 Nov 2018 10:15:26 +0000 Subject: [PATCH] release: Iterate through all releases when searching for files Signed-off-by: Michael Tremer --- src/backend/releases.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/backend/releases.py b/src/backend/releases.py index 88635da4..9b2670de 100644 --- a/src/backend/releases.py +++ b/src/backend/releases.py @@ -4,6 +4,7 @@ import hashlib import logging import os import re +import tornado.gen import urllib.parse from . import database @@ -441,6 +442,12 @@ class Releases(Object): for row in res: yield Release(self.backend, row.id, data=row) + def __iter__(self): + releases = self._get_releases("SELECT * FROM releases \ + ORDER BY published DESC NULLS FIRST") + + return iter(releases) + def get_by_id(self, id): ret = self.db.get("SELECT * FROM releases WHERE id = %s", id) @@ -539,3 +546,9 @@ class Releases(Object): file = File(self.backend, release, file.id) return file + + @tornado.gen.coroutine + def scan_files(self, basepath="/pub/mirror"): + for release in self: + logging.info("Scanning %s..." % release) + release.scan_files(basepath=basepath) -- 2.47.3