From 042763555885986a64c06e340b98da595f27d0e1 Mon Sep 17 00:00:00 2001 From: Angel Velasquez Date: Thu, 26 May 2016 05:26:37 +0000 Subject: Add netboot ipxe environment to archweb Signed-off-by: Angel Velasquez Signed-off-by: Thomas Bachler --- releng/urls.py | 5 +++++ releng/views.py | 21 ++++++++++++++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) (limited to 'releng') diff --git a/releng/urls.py b/releng/urls.py index ca76eb25..0e87de48 100644 --- a/releng/urls.py +++ b/releng/urls.py @@ -22,9 +22,14 @@ releases_patterns = patterns('releng.views', 'release_torrent', {}, 'releng-release-torrent'), ) +netboot_patterns = patterns('releng.views', + (r'^archlinux\.ipxe$', 'netboot_config', {}, 'releng-netboot-config') +) + urlpatterns = patterns('', (r'^feedback/', include(feedback_patterns)), (r'^releases/', include(releases_patterns)), + (r'^netboot/', include(netboot_patterns)), ) # vim: set ts=4 sw=4 et: diff --git a/releng/views.py b/releng/views.py index dbb65c2e..7db469cd 100644 --- a/releng/views.py +++ b/releng/views.py @@ -13,7 +13,7 @@ from django.views.generic import DetailView, ListView from .models import (Architecture, BootType, Bootloader, ClockChoice, Filesystem, HardwareType, InstallType, Iso, IsoType, Module, Source, Test, Release) - +from mirrors.models import (Mirror, MirrorUrl, MirrorProtocol) def standard_field(model, empty_label=None, help_text=None, required=True): return forms.ModelChoiceField(queryset=model.objects.all(), @@ -280,4 +280,23 @@ def releases_json(request): response = HttpResponse(to_json, content_type='application/json') return response +def netboot_config(request): + release_qs = Release.objects.filter(available=True).order_by('-release_date') + releases = [ release.version for release in release_qs ] + mirrorurls = MirrorUrl.objects.filter(protocol__protocol='http', + active=True, + mirror__public=True, + mirror__active=True, + mirror__isos=True) + mirrorurls = sorted( mirrorurls, + key=lambda x: x.mirror.name) + mirrorurls = sorted( mirrorurls, + key=lambda x: x.country.name) + context = { + 'archs': [ 'i686', 'x86_64' ], + 'releases': releases, + 'mirrorurls': mirrorurls, + } + return render(request, "releng/archlinux.ipxe", context, content_type='text/plain') + # vim: set ts=4 sw=4 et: -- cgit v1.2.3 From b246b751dc44c16f1edd2f5dd53822c3d377e1a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20B=C3=A4chler?= Date: Fri, 3 Jun 2016 13:52:03 +0200 Subject: Add information and ipxe images for the new netboot system --- releng/urls.py | 3 ++- releng/views.py | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'releng') diff --git a/releng/urls.py b/releng/urls.py index 0e87de48..57013291 100644 --- a/releng/urls.py +++ b/releng/urls.py @@ -23,7 +23,8 @@ releases_patterns = patterns('releng.views', ) netboot_patterns = patterns('releng.views', - (r'^archlinux\.ipxe$', 'netboot_config', {}, 'releng-netboot-config') + (r'^archlinux\.ipxe$', 'netboot_config', {}, 'releng-netboot-config'), + (r'^$', 'netboot_info', {}, 'releng-netboot-info') ) urlpatterns = patterns('', diff --git a/releng/views.py b/releng/views.py index 7db469cd..9e7a794e 100644 --- a/releng/views.py +++ b/releng/views.py @@ -299,4 +299,7 @@ def netboot_config(request): } return render(request, "releng/archlinux.ipxe", context, content_type='text/plain') +def netboot_info(request): + return render(request, "releng/netboot.html", None) + # vim: set ts=4 sw=4 et: -- cgit v1.2.3