From b2f7cd61e89c59bb52a542f6667aabd53743681c Mon Sep 17 00:00:00 2001 From: Dan McGee Date: Tue, 29 Mar 2011 15:44:08 -0500 Subject: Convert generic views in urls.py to class-based Signed-off-by: Dan McGee --- urls.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'urls.py') diff --git a/urls.py b/urls.py index 33319263..cc8b593a 100644 --- a/urls.py +++ b/urls.py @@ -4,7 +4,7 @@ from django.conf import settings from django.contrib import admin -from django.views.generic.simple import direct_to_template +from django.views.generic import TemplateView from feeds import PackageFeed, NewsFeed import sitemaps @@ -49,13 +49,16 @@ # Public pages urlpatterns += patterns('public.views', (r'^$', 'index', {}, 'index'), - (r'^about/$', direct_to_template, {'template': 'public/about.html'}, 'page-about'), - (r'^art/$', direct_to_template, {'template': 'public/art.html'}, 'page-art'), - (r'^svn/$', direct_to_template, {'template': 'public/svn.html'}, 'page-svn'), + (r'^about/$', TemplateView.as_view(template_name='public/about.html'), + {}, 'page-about'), + (r'^art/$', TemplateView.as_view(template_name='public/art.html'), + {}, 'page-art'), + (r'^svn/$', TemplateView.as_view(template_name='public/svn.html'), + {}, 'page-svn'), (r'^developers/$', 'userlist', { 'type':'devs' }, 'page-devs'), (r'^trustedusers/$', 'userlist', { 'type':'tus' }, 'page-tus'), (r'^fellows/$', 'userlist', { 'type':'fellows' }, 'page-fellows'), - (r'^donate/$', 'donate', {}, 'page-donate'), + (r'^donate/$', 'donate', {}, 'page-donate'), (r'^download/$', 'download', {}, 'page-download'), ) -- cgit v1.2.3-54-g00ecf From c5a28f88936fba06755aefec61a017c2ce94ba40 Mon Sep 17 00:00:00 2001 From: Tom Willemsen Date: Thu, 28 Apr 2011 12:43:01 -0500 Subject: isotests: modelines, imports, url and pass * Added vim modelines to files. * Rearranged import statements. * Moved the arch releng isos url to settings.py. * Fixed some issues that arose from forgetting to import the isotests urls package. * removed redundant str() calls. Signed-off-by: Dan McGee --- isotests/admin.py | 5 ++++- isotests/models.py | 2 ++ isotests/views.py | 2 ++ settings.py | 3 +++ urls.py | 3 ++- 5 files changed, 13 insertions(+), 2 deletions(-) (limited to 'urls.py') diff --git a/isotests/admin.py b/isotests/admin.py index 0cde0f83..17303c58 100644 --- a/isotests/admin.py +++ b/isotests/admin.py @@ -1,7 +1,8 @@ +from django.contrib import admin + from isotests.models import Iso, Architecture, IsoType, BootType from isotests.models import HardwareType, InstallType, Source from isotests.models import ClockChoice, Filesystem, Module, Bootloader -from django.contrib import admin admin.site.register(Iso) admin.site.register(Architecture) @@ -14,3 +15,5 @@ admin.site.register(Filesystem) admin.site.register(Module) admin.site.register(Bootloader) + +# vim: set ts=4 sw=4 et: diff --git a/isotests/models.py b/isotests/models.py index ae5bf96f..7b7eb5e7 100644 --- a/isotests/models.py +++ b/isotests/models.py @@ -109,3 +109,5 @@ class Test(models.Model): bootloader = models.ForeignKey(Bootloader) success = models.BooleanField() comments = models.TextField(null=True, blank=True) + +# vim: set ts=4 sw=4 et: diff --git a/isotests/views.py b/isotests/views.py index 61d95e54..dd041ebc 100644 --- a/isotests/views.py +++ b/isotests/views.py @@ -108,3 +108,5 @@ def view_results_for(request, option, value): def thanks(request): return direct_to_template(request, "isotests/thanks.html", None) + +# vim: set ts=4 sw=4 et: diff --git a/settings.py b/settings.py index 107baa17..d4d3d96b 100644 --- a/settings.py +++ b/settings.py @@ -124,4 +124,7 @@ INSTALLED_APPS = list(INSTALLED_APPS) + [ 'debug_toolbar' ] +# rtf settings +ISOLISTURL = 'http://releng.archlinux.org/isos/' + # vim: set ts=4 sw=4 et: diff --git a/urls.py b/urls.py index cc8b593a..cc8e2471 100644 --- a/urls.py +++ b/urls.py @@ -77,11 +77,12 @@ (r'^opensearch/packages/$', 'packages.views.opensearch', {}, 'opensearch-packages'), (r'^todolists/$','todolists.views.public_list'), + (r'^isotests/', include('isotests.urls')), ) if settings.DEBUG == True: urlpatterns += patterns('', - (r'^media/(.*)$', 'django.views.static.serve', + (r'^media/(.*)$', 'django.views.static.serve', {'document_root': os.path.join(settings.DEPLOY_PATH, 'media')})) # vim: set ts=4 sw=4 et: -- cgit v1.2.3-54-g00ecf From bfe6afcd7ac5ae7b6f07caa7b02a33fec710ebda Mon Sep 17 00:00:00 2001 From: Dan McGee Date: Thu, 28 Apr 2011 17:58:13 -0500 Subject: Rename isotests to releng Signed-off-by: Dan McGee --- isotests/__init__.py | 0 isotests/admin.py | 18 ----- isotests/fixtures/architecture.json | 30 ------- isotests/fixtures/bootloaders.json | 23 ------ isotests/fixtures/boottype.json | 23 ------ isotests/fixtures/clockchoices.json | 23 ------ isotests/fixtures/filesystems.json | 23 ------ isotests/fixtures/hardware.json | 44 ----------- isotests/fixtures/installtype.json | 30 ------- isotests/fixtures/isotypes.json | 16 ---- isotests/fixtures/modules.json | 86 -------------------- isotests/fixtures/source.json | 23 ------ isotests/management/__init__.py | 0 isotests/management/commands/__init__.py | 0 isotests/management/commands/syncisos.py | 48 ----------- isotests/models.py | 121 ---------------------------- isotests/urls.py | 11 --- isotests/views.py | 132 ------------------------------- releng/__init__.py | 0 releng/admin.py | 18 +++++ releng/fixtures/architecture.json | 30 +++++++ releng/fixtures/bootloaders.json | 23 ++++++ releng/fixtures/boottype.json | 23 ++++++ releng/fixtures/clockchoices.json | 23 ++++++ releng/fixtures/filesystems.json | 23 ++++++ releng/fixtures/hardware.json | 44 +++++++++++ releng/fixtures/installtype.json | 30 +++++++ releng/fixtures/isotypes.json | 16 ++++ releng/fixtures/modules.json | 86 ++++++++++++++++++++ releng/fixtures/source.json | 23 ++++++ releng/management/__init__.py | 0 releng/management/commands/__init__.py | 0 releng/management/commands/syncisos.py | 48 +++++++++++ releng/models.py | 121 ++++++++++++++++++++++++++++ releng/urls.py | 11 +++ releng/views.py | 132 +++++++++++++++++++++++++++++++ settings.py | 2 +- templates/isotests/add.html | 20 ----- templates/isotests/result_list.html | 41 ---------- templates/isotests/result_section.html | 26 ------ templates/isotests/results.html | 25 ------ templates/isotests/thanks.html | 13 --- templates/releng/add.html | 20 +++++ templates/releng/result_list.html | 41 ++++++++++ templates/releng/result_section.html | 26 ++++++ templates/releng/results.html | 25 ++++++ templates/releng/thanks.html | 13 +++ urls.py | 2 +- 48 files changed, 778 insertions(+), 778 deletions(-) delete mode 100644 isotests/__init__.py delete mode 100644 isotests/admin.py delete mode 100644 isotests/fixtures/architecture.json delete mode 100644 isotests/fixtures/bootloaders.json delete mode 100644 isotests/fixtures/boottype.json delete mode 100644 isotests/fixtures/clockchoices.json delete mode 100644 isotests/fixtures/filesystems.json delete mode 100644 isotests/fixtures/hardware.json delete mode 100644 isotests/fixtures/installtype.json delete mode 100644 isotests/fixtures/isotypes.json delete mode 100644 isotests/fixtures/modules.json delete mode 100644 isotests/fixtures/source.json delete mode 100644 isotests/management/__init__.py delete mode 100644 isotests/management/commands/__init__.py delete mode 100644 isotests/management/commands/syncisos.py delete mode 100644 isotests/models.py delete mode 100644 isotests/urls.py delete mode 100644 isotests/views.py create mode 100644 releng/__init__.py create mode 100644 releng/admin.py create mode 100644 releng/fixtures/architecture.json create mode 100644 releng/fixtures/bootloaders.json create mode 100644 releng/fixtures/boottype.json create mode 100644 releng/fixtures/clockchoices.json create mode 100644 releng/fixtures/filesystems.json create mode 100644 releng/fixtures/hardware.json create mode 100644 releng/fixtures/installtype.json create mode 100644 releng/fixtures/isotypes.json create mode 100644 releng/fixtures/modules.json create mode 100644 releng/fixtures/source.json create mode 100644 releng/management/__init__.py create mode 100644 releng/management/commands/__init__.py create mode 100644 releng/management/commands/syncisos.py create mode 100644 releng/models.py create mode 100644 releng/urls.py create mode 100644 releng/views.py delete mode 100644 templates/isotests/add.html delete mode 100644 templates/isotests/result_list.html delete mode 100644 templates/isotests/result_section.html delete mode 100644 templates/isotests/results.html delete mode 100644 templates/isotests/thanks.html create mode 100644 templates/releng/add.html create mode 100644 templates/releng/result_list.html create mode 100644 templates/releng/result_section.html create mode 100644 templates/releng/results.html create mode 100644 templates/releng/thanks.html (limited to 'urls.py') diff --git a/isotests/__init__.py b/isotests/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/isotests/admin.py b/isotests/admin.py deleted file mode 100644 index 10acaa98..00000000 --- a/isotests/admin.py +++ /dev/null @@ -1,18 +0,0 @@ -from django.contrib import admin - -from .models import (Architecture, BootType, Bootloader, ClockChoice, - Filesystem, HardwareType, InstallType, Iso, IsoType, Module, Source) - -admin.site.register(Iso) -admin.site.register(Architecture) -admin.site.register(IsoType) -admin.site.register(BootType) -admin.site.register(HardwareType) -admin.site.register(InstallType) -admin.site.register(Source) -admin.site.register(ClockChoice) -admin.site.register(Filesystem) -admin.site.register(Module) -admin.site.register(Bootloader) - -# vim: set ts=4 sw=4 et: diff --git a/isotests/fixtures/architecture.json b/isotests/fixtures/architecture.json deleted file mode 100644 index a21100ba..00000000 --- a/isotests/fixtures/architecture.json +++ /dev/null @@ -1,30 +0,0 @@ -[ - { - "pk": 1, - "model": "isotests.architecture", - "fields": { - "name": "dual, option i686" - } - }, - { - "pk": 2, - "model": "isotests.architecture", - "fields": { - "name": "dual, option x86_64" - } - }, - { - "pk": 3, - "model": "isotests.architecture", - "fields": { - "name": "i686" - } - }, - { - "pk": 4, - "model": "isotests.architecture", - "fields": { - "name": "x86_64" - } - } -] diff --git a/isotests/fixtures/bootloaders.json b/isotests/fixtures/bootloaders.json deleted file mode 100644 index 545b5c0c..00000000 --- a/isotests/fixtures/bootloaders.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "pk": 1, - "model": "isotests.bootloader", - "fields": { - "name": "grub" - } - }, - { - "pk": 2, - "model": "isotests.bootloader", - "fields": { - "name": "syslinux" - } - }, - { - "pk": 3, - "model": "isotests.bootloader", - "fields": { - "name": "other/manual" - } - } -] diff --git a/isotests/fixtures/boottype.json b/isotests/fixtures/boottype.json deleted file mode 100644 index 5d87ef15..00000000 --- a/isotests/fixtures/boottype.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "pk": 1, - "model": "isotests.boottype", - "fields": { - "name": "optical" - } - }, - { - "pk": 2, - "model": "isotests.boottype", - "fields": { - "name": "usb" - } - }, - { - "pk": 3, - "model": "isotests.boottype", - "fields": { - "name": "pxe" - } - } -] diff --git a/isotests/fixtures/clockchoices.json b/isotests/fixtures/clockchoices.json deleted file mode 100644 index 6dfd06e1..00000000 --- a/isotests/fixtures/clockchoices.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "pk": 1, - "model": "isotests.clockchoice", - "fields": { - "name": "unchanged" - } - }, - { - "pk": 2, - "model": "isotests.clockchoice", - "fields": { - "name": "configured manually" - } - }, - { - "pk": 3, - "model": "isotests.clockchoice", - "fields": { - "name": "NTP" - } - } -] diff --git a/isotests/fixtures/filesystems.json b/isotests/fixtures/filesystems.json deleted file mode 100644 index 5386c391..00000000 --- a/isotests/fixtures/filesystems.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "pk": 1, - "model": "isotests.filesystem", - "fields": { - "name": "autoprepare" - } - }, - { - "pk": 2, - "model": "isotests.filesystem", - "fields": { - "name": "manual" - } - }, - { - "pk": 3, - "model": "isotests.filesystem", - "fields": { - "name": "from config file" - } - } -] diff --git a/isotests/fixtures/hardware.json b/isotests/fixtures/hardware.json deleted file mode 100644 index 335a50f6..00000000 --- a/isotests/fixtures/hardware.json +++ /dev/null @@ -1,44 +0,0 @@ -[ - { - "pk": 1, - "model": "isotests.hardwaretype", - "fields": { - "name": "virtualbox" - } - }, - { - "pk": 2, - "model": "isotests.hardwaretype", - "fields": { - "name": "qemu" - } - }, - { - "pk": 3, - "model": "isotests.hardwaretype", - "fields": { - "name": "intel i686" - } - }, - { - "pk": 4, - "model": "isotests.hardwaretype", - "fields": { - "name": "intel x86_64" - } - }, - { - "pk": 5, - "model": "isotests.hardwaretype", - "fields": { - "name": "amd i686" - } - }, - { - "pk": 6, - "model": "isotests.hardwaretype", - "fields": { - "name": "amd x86_64" - } - } -] diff --git a/isotests/fixtures/installtype.json b/isotests/fixtures/installtype.json deleted file mode 100644 index cc5c62a0..00000000 --- a/isotests/fixtures/installtype.json +++ /dev/null @@ -1,30 +0,0 @@ -[ - { - "pk": 1, - "model": "isotests.installtype", - "fields": { - "name": "interactive install" - } - }, - { - "pk": 2, - "model": "isotests.installtype", - "fields": { - "name": "automatic install generic example" - } - }, - { - "pk": 3, - "model": "isotests.installtype", - "fields": { - "name": "automatic install fancy example" - } - }, - { - "pk": 4, - "model": "isotests.installtype", - "fields": { - "name": "automatic install custom config (specify in comments)" - } - } -] diff --git a/isotests/fixtures/isotypes.json b/isotests/fixtures/isotypes.json deleted file mode 100644 index 760e3738..00000000 --- a/isotests/fixtures/isotypes.json +++ /dev/null @@ -1,16 +0,0 @@ -[ - { - "pk": 1, - "model": "isotests.isotype", - "fields": { - "name": "core" - } - }, - { - "pk": 2, - "model": "isotests.isotype", - "fields": { - "name": "net" - } - } -] diff --git a/isotests/fixtures/modules.json b/isotests/fixtures/modules.json deleted file mode 100644 index ae8a1683..00000000 --- a/isotests/fixtures/modules.json +++ /dev/null @@ -1,86 +0,0 @@ -[ - { - "pk": 1, - "model": "isotests.module", - "fields": { - "name": "lvm2" - } - }, - { - "pk": 2, - "model": "isotests.module", - "fields": { - "name": "dm_crypt" - } - }, - { - "pk": 3, - "model": "isotests.module", - "fields": { - "name": "softraid" - } - }, - { - "pk": 4, - "model": "isotests.module", - "fields": { - "name": "nilfs2" - } - }, - { - "pk": 5, - "model": "isotests.module", - "fields": { - "name": "btrfs" - } - }, - { - "pk": 6, - "model": "isotests.module", - "fields": { - "name": "ext2" - } - }, - { - "pk": 7, - "model": "isotests.module", - "fields": { - "name": "ext3" - } - }, - { - "pk": 8, - "model": "isotests.module", - "fields": { - "name": "ext4" - } - }, - { - "pk": 9, - "model": "isotests.module", - "fields": { - "name": "swap" - } - }, - { - "pk": 10, - "model": "isotests.module", - "fields": { - "name": "xfs" - } - }, - { - "pk": 11, - "model": "isotests.module", - "fields": { - "name": "jfs" - } - }, - { - "pk": 12, - "model": "isotests.module", - "fields": { - "name": "reiserFS" - } - } -] diff --git a/isotests/fixtures/source.json b/isotests/fixtures/source.json deleted file mode 100644 index 1bf835a1..00000000 --- a/isotests/fixtures/source.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "pk": 1, - "model": "isotests.source", - "fields": { - "name": "net install manual networking config (Check that it works + rc.conf, resolv.conf, mirrorlist)" - } - }, - { - "pk": 2, - "model": "isotests.source", - "fields": { - "name": "net install dhcp (Check that it works + rc.conf)" - } - }, - { - "pk": 3, - "model": "isotests.source", - "fields": { - "name": "core" - } - } -] diff --git a/isotests/management/__init__.py b/isotests/management/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/isotests/management/commands/__init__.py b/isotests/management/commands/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/isotests/management/commands/syncisos.py b/isotests/management/commands/syncisos.py deleted file mode 100644 index 9c76ccda..00000000 --- a/isotests/management/commands/syncisos.py +++ /dev/null @@ -1,48 +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 isotests.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': - for name, value in attrs: - if name == "href": - if value != '../' and self.url_re.search(value) != None: - self.hyperlinks.append(value[:len(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) - new_isos = parser.parse(settings.ISO_LIST_URL) - - for iso in new_isos: - if iso not in isonames: - new = Iso(name=iso) - new.save() - -# vim: set ts=4 sw=4 et: diff --git a/isotests/models.py b/isotests/models.py deleted file mode 100644 index de8dd13c..00000000 --- a/isotests/models.py +++ /dev/null @@ -1,121 +0,0 @@ -from datetime import datetime - -from django.db import models -from django.db.models import Max - -class IsoOption(models.Model): - name = models.CharField(max_length=200) - - def __unicode__(self): - return self.name - - def get_test_result(self, success): - try: - return self.test_set.filter(success=success).select_related( - 'iso').latest('iso__id').iso - except Test.DoesNotExist: - return None - - def get_last_success(self): - return self.get_test_result(True) - - def get_last_failure(self): - return self.get_test_result(False) - - class Meta: - abstract = True - -class RollbackOption(IsoOption): - def get_rollback_test_result(self, success): - try: - return self.rollback_test_set.filter(success=success).select_related( - 'iso').latest('iso__id').iso - except Test.DoesNotExist: - return None - - def get_last_rollback_success(self): - return self.get_rollback_test_result(True) - - def get_last_rollback_failure(self): - return self.get_rollback_test_result(False) - - class Meta: - abstract = True - -class Iso(models.Model): - name = models.CharField(max_length=255) - created = models.DateTimeField(editable=False) - active = models.BooleanField(default=True) - - def __unicode__(self): - return self.name - -class Architecture(IsoOption): - pass - -class IsoType(IsoOption): - pass - -class BootType(IsoOption): - pass - -class HardwareType(IsoOption): - pass - -class InstallType(IsoOption): - pass - -class Source(IsoOption): - pass - -class ClockChoice(IsoOption): - pass - -class Filesystem(RollbackOption): - pass - -class Module(RollbackOption): - pass - -class Bootloader(IsoOption): - pass - -class Test(models.Model): - user_name = models.CharField(max_length=500) - user_email = models.EmailField() - ip_address = models.IPAddressField() - created = models.DateTimeField(editable=False) - - iso = models.ForeignKey(Iso) - architecture = models.ForeignKey(Architecture) - iso_type = models.ForeignKey(IsoType) - boot_type = models.ForeignKey(BootType) - hardware_type = models.ForeignKey(HardwareType) - install_type = models.ForeignKey(InstallType) - source = models.ForeignKey(Source) - clock_choice = models.ForeignKey(ClockChoice) - filesystem = models.ForeignKey(Filesystem) - modules = models.ManyToManyField(Module, null=True, blank=True) - bootloader = models.ForeignKey(Bootloader) - rollback_filesystem = models.ForeignKey(Filesystem, - related_name="rollback_test_set", null=True, blank=True) - rollback_modules = models.ManyToManyField(Module, - related_name="rollback_test_set", null=True, blank=True) - - success = models.BooleanField() - comments = models.TextField(null=True, blank=True) - -def set_created_field(sender, **kwargs): - # We use this same callback for both Isos and Tests - obj = kwargs['instance'] - if not obj.created: - obj.created = datetime.utcnow() - -from django.db.models.signals import pre_save - -pre_save.connect(set_created_field, sender=Iso, - dispatch_uid="isotests.models") -pre_save.connect(set_created_field, sender=Test, - dispatch_uid="isotests.models") - -# vim: set ts=4 sw=4 et: diff --git a/isotests/urls.py b/isotests/urls.py deleted file mode 100644 index 12497cde..00000000 --- a/isotests/urls.py +++ /dev/null @@ -1,11 +0,0 @@ -from django.conf.urls.defaults import patterns - -urlpatterns = patterns('isotests.views', - (r'^$', 'test_results_overview', {}, 'releng-test-overview'), - (r'^submit/$', 'submit_test_result', {}, 'releng-test-submit'), - (r'^thanks/$', 'submit_test_thanks', {}, 'releng-test-thanks'), - (r'^iso/(?P\d+)/$', 'test_results_iso', {}, 'releng-results-iso'), - (r'^(?P