def get_object(self): try: version = Version.objects.get( pk=self.request.parser_context['kwargs']['pk']) except Version.DoesNotExist: raise Http404 return models.InstallerRevision(version)
def auto_process_installers(): """Auto deletes or accepts some submissions""" revisions = Revision.objects.all() for revision in revisions: version = revision.version_set.first() if not version: continue try: submission = models.InstallerRevision(version) except Exception: # pylint: disable=broad-except LOGGER.error("Deleting corrupt submission %s", version) submission.delete() continue original = version.object if not original: LOGGER.warning("Could not find original, deleting %s", submission) submission.delete() continue if submission.content.strip() != original.content.strip(): # Content change needs manual review continue if submission.runner != original.runner: if submission.runner.slug == "steam" and original.runner.slug == "winesteam": LOGGER.info("Accepting %s (%s > %s)", submission, original.runner, submission.runner) submission.accept() continue LOGGER.info("Rejecting %s (%s > %s)", submission, original.runner, submission.runner) submission.delete() continue if not submission.description: submission.description = "" if not original.description: original.description = "" if (submission.description.strip() == original.description.strip() and submission.notes.strip() == original.notes.strip()): LOGGER.info("No change in submission, deleting %s", submission) submission.delete() continue if "[draft]" in revision.comment: LOGGER.info("Deleting draft with only meta changes %s", submission) submission.delete() continue if original.version == "Change Me": LOGGER.info("Deleting garbage fork %s", submission) submission.delete() continue
def get_object(self): try: revision = Revision.objects.get( pk=self.request.parser_context['kwargs']['pk']) except Revision.DoesNotExist: LOGGER.warning("No Revision with ID %s", self.request.parser_context['kwargs']['pk']) raise Http404 try: version = revision.version_set.all()[0] except IndexError: LOGGER.warning("Revision ID %s has no versions", self.request.parser_context['kwargs']['pk']) raise Http404 return models.InstallerRevision(version)
def get_object(self): version = Version.objects.get(pk=self.request.parser_context['kwargs']['pk']) return models.InstallerRevision(version)