diff options
author | jelle van der Waa <jelle@vdwaa.nl> | 2018-02-17 18:55:13 +0100 |
---|---|---|
committer | Angel Velásquez <angvp@archlinux.org> | 2018-02-17 12:55:13 -0500 |
commit | 875d50d8f23069515b865b28044fb572a14049ed (patch) | |
tree | 496de6fd9b257ac3a1d3bf20b8fcd66e789d6b1b /releng | |
parent | 15e4f75321f5c43198cc5a2a3709c817f885a08c (diff) | |
download | archweb-875d50d8f23069515b865b28044fb572a14049ed.tar.gz archweb-875d50d8f23069515b865b28044fb572a14049ed.zip |
Remove unused Iso Model (#82)
The ISO model was used for the releng feedback form which was removed
earlier. All this code is therefore now unused.
Diffstat (limited to 'releng')
-rw-r--r-- | releng/admin.py | 13 | ||||
-rw-r--r-- | releng/management/commands/syncisos.py | 71 | ||||
-rw-r--r-- | releng/models.py | 20 | ||||
-rw-r--r-- | releng/views.py | 23 |
4 files changed, 3 insertions, 124 deletions
diff --git a/releng/admin.py b/releng/admin.py index 09af9171..251cc90a 100644 --- a/releng/admin.py +++ b/releng/admin.py @@ -1,16 +1,6 @@ from django.contrib import admin -from .models import (Iso, Release) - -class IsoAdmin(admin.ModelAdmin): - list_display = ('name', 'created', 'active', 'removed') - list_filter = ('active', 'created') - date_hierarchy = 'created' - -class TestAdmin(admin.ModelAdmin): - list_display = ('user_name', 'user_email', 'created', 'ip_address', - 'iso', 'success') - list_filter = ('success', 'iso') +from .models import Release class ReleaseAdmin(admin.ModelAdmin): list_display = ('version', 'release_date', 'kernel_version', 'available', @@ -19,7 +9,6 @@ class ReleaseAdmin(admin.ModelAdmin): readonly_fields = ('created', 'last_modified') -admin.site.register(Iso, IsoAdmin) admin.site.register(Release, ReleaseAdmin) # vim: set ts=4 sw=4 et: diff --git a/releng/management/commands/syncisos.py b/releng/management/commands/syncisos.py deleted file mode 100644 index 0a082911..00000000 --- a/releng/management/commands/syncisos.py +++ /dev/null @@ -1,71 +0,0 @@ -import re -import urllib -from HTMLParser import HTMLParser, HTMLParseError - -from django.conf import settings -from django.core.management.base import BaseCommand, CommandError -from django.utils.timezone import now - -from releng.models import Iso - - -class IsoListParser(HTMLParser): - def __init__(self): - HTMLParser.__init__(self) - - self.hyperlinks = [] - self.url_re = re.compile('(?!\.{2})/$') - - def handle_starttag(self, tag, attrs): - if tag != 'a': - return - - for name, value in attrs: - if name != "href": - continue - - if value != '../' and self.url_re.search(value) is not None: - self.hyperlinks.append(value[:-1]) - - def parse(self, url): - try: - remote_file = urllib.urlopen(url) - data = remote_file.read() - remote_file.close() - self.feed(data) - self.close() - return self.hyperlinks - except HTMLParseError: - raise CommandError('Couldn\'t parse "%s"' % url) - -class Command(BaseCommand): - help = 'Gets new ISOs from %s' % settings.ISO_LIST_URL - - def handle(self, *args, **options): - parser = IsoListParser() - isonames = Iso.objects.values_list('name', flat=True) - try: - active_isos = parser.parse(settings.ISO_LIST_URL) - except IOError as e: - print('Unable to fetch active isos from {}'.format(settings.ISO_LIST_URL)) - if options.get('verbosity') > 1: - print(e) - return - - for iso in active_isos: - # create any names that don't already exist - if iso not in isonames: - new = Iso(name=iso, active=True) - new.save() - # update those that do if they were marked inactive - else: - existing = Iso.objects.get(name=iso) - if not existing.active: - existing.active = True - existing.removed = None - existing.save(update_fields=('active', 'removed')) - # and then mark all other names as no longer active - Iso.objects.filter(active=True).exclude(name__in=active_isos).update( - active=False, removed=now()) - -# vim: set ts=4 sw=4 et: diff --git a/releng/models.py b/releng/models.py index 8a8d0ad2..afa0094b 100644 --- a/releng/models.py +++ b/releng/models.py @@ -13,22 +13,6 @@ from django.utils.safestring import mark_safe from main.utils import set_created_field, parse_markdown -class Iso(models.Model): - name = models.CharField(max_length=255) - created = models.DateTimeField(editable=False) - removed = models.DateTimeField(null=True, blank=True, default=None) - active = models.BooleanField(default=True) - - def get_absolute_url(self): - return reverse('releng-results-iso', args=[self.pk]) - - def __unicode__(self): - return self.name - - class Meta: - verbose_name = 'ISO' - - class Release(models.Model): release_date = models.DateField(db_index=True) version = models.CharField(max_length=50, unique=True) @@ -103,8 +87,6 @@ class Release(models.Model): return metadata -for model in (Iso, Release): - pre_save.connect(set_created_field, sender=model, - dispatch_uid="releng.models") +pre_save.connect(set_created_field, sender=Release, dispatch_uid="releng.models") # vim: set ts=4 sw=4 et: diff --git a/releng/views.py b/releng/views.py index b962a4d3..ad433056 100644 --- a/releng/views.py +++ b/releng/views.py @@ -3,35 +3,14 @@ import json from django.core.serializers.json import DjangoJSONEncoder from django.core.urlresolvers import reverse -from django.db.models import Count from django.http import Http404, HttpResponse from django.shortcuts import get_object_or_404, render from django.views.generic import DetailView, ListView -from .models import (Iso, Release) +from .models import Release from mirrors.models import MirrorUrl -def iso_overview(request): - isos = Iso.objects.all().order_by('-pk') - successes = dict(Iso.objects.values_list('pk').filter( - test__success=True).annotate(ct=Count('test'))) - failures = dict(Iso.objects.values_list('pk').filter( - test__success=False).annotate(ct=Count('test'))) - for iso in isos: - iso.successes = successes.get(iso.pk, 0) - iso.failures = failures.get(iso.pk, 0) - - # only show "useful" rows, currently active ISOs or those with results - isos = [iso for iso in isos if - iso.active is True or iso.successes > 0 or iso.failures > 0] - - context = { - 'isos': isos - } - return render(request, 'releng/iso_overview.html', context) - - class ReleaseListView(ListView): model = Release |