[buildinfo.debian.net] 09/35: Avoid DRY violatioin in creating a Submission
Chris Lamb
chris at chris-lamb.co.uk
Thu Nov 3 19:02:24 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 9c1165628d0da6e20a267736a9c71cc64558587f
Author: Chris Lamb <lamby at debian.org>
Date: Sun Oct 23 09:45:08 2016 +0200
Avoid DRY violatioin in creating a Submission
Signed-off-by: Chris Lamb <lamby at debian.org>
---
bidb/api/utils.py | 16 +++++++---------
1 file changed, 7 insertions(+), 9 deletions(-)
diff --git a/bidb/api/utils.py b/bidb/api/utils.py
index 1160af6..5aa8f3d 100644
--- a/bidb/api/utils.py
+++ b/bidb/api/utils.py
@@ -36,15 +36,17 @@ def parse_submission(request):
except (KeyError, IndexError):
raise InvalidSubmission("Could not determine GPG uid")
- sha1 = hashlib.sha1(raw_text_gpg_stripped.encode('utf-8')).hexdigest()
- try:
- submission = Buildinfo.objects.get(sha1=sha1).submissions.create(
+ def create_submission(buildinfo):
+ return buildinfo.submissions.create(
uid=uid,
node=request.GET.get('node', ''),
raw_text=raw_text,
)
- return submission, False
+ # If this .buildinfo already exists, attach a new Submission instance
+ sha1 = hashlib.sha1(raw_text_gpg_stripped.encode('utf-8')).hexdigest()
+ try:
+ return create_submission(Buildinfo.objects.get(sha1=sha1)), False
except Buildinfo.DoesNotExist:
pass
@@ -140,8 +142,4 @@ def parse_submission(request):
version=m.group('version'),
)
- return buildinfo.submissions.create(
- uid=uid,
- node=request.GET.get('node', ''),
- raw_text=raw_text,
- ), True
+ return create_submission(buildinfo), True
--
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