[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[dak/master 2/2] Be more robust to missing suites



Signed-off-by: Mark Hymers <mhy@debian.org>
---
 daklib/dbconn.py |    4 +++-
 daklib/queue.py  |    6 ++++++
 2 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/daklib/dbconn.py b/daklib/dbconn.py
index c6612b7..482ec47 100755
--- a/daklib/dbconn.py
+++ b/daklib/dbconn.py
@@ -3147,7 +3147,9 @@ __all__.append('VersionCheck')
 def get_version_checks(suite_name, check = None, session = None):
     suite = get_suite(suite_name, session)
     if not suite:
-        return None
+        # Make sure that what we return is iterable so that list comprehensions
+        # involving this don't cause a traceback
+        return []
     q = session.query(VersionCheck).filter_by(suite=suite)
     if check:
         q = q.filter_by(check=check)
diff --git a/daklib/queue.py b/daklib/queue.py
index ef781f1..42fd624 100755
--- a/daklib/queue.py
+++ b/daklib/queue.py
@@ -2547,6 +2547,12 @@ distribution."""
 
         # Check versions for each target suite
         for target_suite in self.pkg.changes["distribution"].keys():
+            # Check we can find the target suite
+            ts = get_suite(target_suite)
+            if ts is None:
+                self.rejects.append("Cannot find target suite %s to perform version checks" % target_suite)
+                continue
+
             must_be_newer_than = [ vc.reference.suite_name for vc in get_version_checks(target_suite, "MustBeNewerThan") ]
             must_be_older_than = [ vc.reference.suite_name for vc in get_version_checks(target_suite, "MustBeOlderThan") ]
 
-- 
1.7.2.5


Reply to: