[buildinfo.debian.net] 33/35: Actually allow non-deb artefacts. (Closes: #8)
Chris Lamb
chris at chris-lamb.co.uk
Thu Nov 3 19:02:27 UTC 2016
This is an automated email from the git hooks/post-receive script.
lamby pushed a commit to branch master
in repository buildinfo.debian.net.
commit 0fa0ac30f5960fa8c2882d94ccd764548d713d13
Author: Chris Lamb <lamby at debian.org>
Date: Wed Nov 2 10:14:02 2016 +0000
Actually allow non-deb artefacts. (Closes: #8)
Signed-off-by: Chris Lamb <lamby at debian.org>
---
bidb/api/utils.py | 15 ++++++---------
1 file changed, 6 insertions(+), 9 deletions(-)
diff --git a/bidb/api/utils.py b/bidb/api/utils.py
index a8db6da..186bfd5 100644
--- a/bidb/api/utils.py
+++ b/bidb/api/utils.py
@@ -8,7 +8,7 @@ from django.db import transaction
from bidb.packages.models import Source, Architecture, Binary
from bidb.buildinfo.models import Buildinfo
-re_filename = re.compile(
+re_binary = re.compile(
r'^(?P<name>[^_]+)_(?P<version>[^_]+)_(?P<architecture>[^\.]+)\.u?deb$',
)
re_installed_build_depends = re.compile(
@@ -107,10 +107,6 @@ def parse_submission(request):
for y in data['Checksums-%s' % x].strip().splitlines():
checksum, size, filename = y.strip().split()
- # Check filename
- if re_filename.match(filename) is None:
- raise InvalidSubmission("Invalid filename: {}".format(filename))
-
# Check size
try:
size = int(size)
@@ -123,6 +119,7 @@ def parse_submission(request):
checksums.setdefault(filename, {
'size': size,
+ 'binary': None,
})['checksum_{}'.format(x.lower())] = checksum
existing = checksums[filename]['size']
@@ -133,10 +130,10 @@ def parse_submission(request):
## Create Checksum instances ##############################################
for k, v in sorted(checksums.items()):
- try:
- v['binary'] = binaries[re_filename.match(k).group('name')]
- except KeyError:
- v['binary'] = None
+ # Match with Binary instances if possible
+ m = re_binary.match(k)
+ if m is not None:
+ v['binary'] = binaries.get(m.group('name'))
buildinfo.checksums.create(filename=k, **v)
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/reproducible/buildinfo.debian.net.git
More information about the Reproducible-commits
mailing list