summaryrefslogtreecommitdiff
path: root/packages/models.py
diff options
context:
space:
mode:
authorDan McGee <dan@archlinux.org>2013-04-22 10:50:03 -0500
committerDan McGee <dan@archlinux.org>2013-04-22 10:50:03 -0500
commit6fa6a8db0787fa40fa1c88b725b0bce184903c4c (patch)
treeb2cf3c23035ba994c947086f6ae5eec869f3aec3 /packages/models.py
parent007b8d7573b64fd7f17023fa0288ba79e05683c4 (diff)
Use required_signoffs value when creating signoff specs
And respect it elsewhere when we create a fake default specification because a real one does not exist yet. Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'packages/models.py')
-rw-r--r--packages/models.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/packages/models.py b/packages/models.py
index f830aade..6477d412 100644
--- a/packages/models.py
+++ b/packages/models.py
@@ -60,7 +60,8 @@ class SignoffSpecificationManager(models.Manager):
pkgbase=pkg.pkgbase, pkgver=pkg.pkgver, pkgrel=pkg.pkgrel,
epoch=pkg.epoch, arch=pkg.arch, repo=pkg.repo)
except SignoffSpecification.DoesNotExist:
- return DEFAULT_SIGNOFF_SPEC
+ return fake_signoff_spec(pkg.arch)
+
class SignoffSpecification(models.Model):
'''
@@ -97,10 +98,15 @@ class SignoffSpecification(models.Model):
return u'%s-%s' % (self.pkgbase, self.full_version)
-# fake default signoff spec when we don't have a persisted one in the database
+# Fake signoff specs for when we don't have persisted ones in the database.
+# These have all necessary attributes of the real thing but are lighter weight
+# and have no chance of being persisted.
FakeSignoffSpecification = namedtuple('FakeSignoffSpecification',
('required', 'enabled', 'known_bad', 'comments'))
-DEFAULT_SIGNOFF_SPEC = FakeSignoffSpecification(2, True, False, u'')
+
+
+def fake_signoff_spec(arch):
+ return FakeSignoffSpecification(arch.required_signoffs, True, False, u'')
class SignoffManager(models.Manager):