[arch-releng] [PATCH] New page ISO Overview

Tom Willemsen ryuslash at gmail.com
Tue Aug 16 15:24:56 EDT 2011


ISO Overview shows a simple list of all the isos that are available
and how many times they've been tested succesfully or have failed.

Signed-off-by: Tom Willemsen <ryuslash at gmail.com>
---
 releng/models.py                   |    9 +++++++
 releng/urls.py                     |    1 +
 releng/views.py                    |    7 +++++
 templates/releng/iso_overview.html |   44 ++++++++++++++++++++++++++++++++++++
 templates/releng/results.html      |    3 ++
 templates/releng/thanks.html       |    4 ++-
 6 files changed, 67 insertions(+), 1 deletions(-)
 create mode 100644 templates/releng/iso_overview.html

diff --git a/releng/models.py b/releng/models.py
index 5510db6..3b50972 100644
--- a/releng/models.py
+++ b/releng/models.py
@@ -50,6 +50,15 @@ class Iso(models.Model):
     def __unicode__(self):
         return self.name
 
+    def get_test_result_count(self, success):
+        return self.test_set.filter(success=success).count()
+
+    def get_success_count(self):
+        return self.get_test_result_count(True)
+
+    def get_failure_count(self):
+        return self.get_test_result_count(False)
+
 class Architecture(IsoOption):
     pass
 
diff --git a/releng/urls.py b/releng/urls.py
index 4a125df..239ad02 100644
--- a/releng/urls.py
+++ b/releng/urls.py
@@ -6,6 +6,7 @@
     (r'^thanks/$',                       'submit_test_thanks', {}, 'releng-test-thanks'),
     (r'^iso/(?P<iso_id>\d+)/$',          'test_results_iso', {}, 'releng-results-iso'),
     (r'^(?P<option>.+)/(?P<value>\d+)/$','test_results_for', {}, 'releng-results-for'),
+    (r'^iso/overview/$',                 'iso_overview', {}, 'releng-iso-overview'),
 )
 
 urlpatterns = patterns('',
diff --git a/releng/views.py b/releng/views.py
index 1d4a0b5..bf53781 100644
--- a/releng/views.py
+++ b/releng/views.py
@@ -138,4 +138,11 @@ def test_results_for(request, option, value):
 def submit_test_thanks(request):
     return direct_to_template(request, "releng/thanks.html", None)
 
+def iso_overview(request):
+    isos = Iso.objects.all()
+    context = {
+        'isos': isos
+    }
+    return direct_to_template(request, 'releng/iso_overview.html', context)
+
 # vim: set ts=4 sw=4 et:
diff --git a/templates/releng/iso_overview.html b/templates/releng/iso_overview.html
new file mode 100644
index 0000000..b786d6f
--- /dev/null
+++ b/templates/releng/iso_overview.html
@@ -0,0 +1,44 @@
+{% extends "base.html" %}
+
+{% block content %}
+<div class="box">
+    <h2>Failures and successes for testing isos</h2>
+
+    <p><a href="{% url releng-test-overview %}">Go back to testing results</a></p>
+
+    <table id="releng-result" class="results">
+        <thead>
+            <tr>
+                <th>Iso</th>
+                <th># Successes</th>
+                <th># Failures</th>
+            </tr>
+        </thead>
+        <tbody>
+            {% for iso in isos %}
+            <tr>
+                <td>
+                    <a href="{% url releng-results-iso iso.pk %}">
+                        {{iso.name}}
+                    </a>
+                </td>
+                <td>
+                    {{iso.get_success_count}}
+                </td>
+                <td>
+                    {{iso.get_failure_count}}
+                </td>
+            </tr>
+            {% endfor %}
+        </tbody>
+    </table>
+</div>
+{% load cdn %}{% jquery %}
+<script type="text/javascript" src="/media/jquery.tablesorter.min.js"></script>
+<script type="text/javascript" src="/media/archweb.js"></script>
+<script type="text/javascript">
+$(document).ready(function() {
+    $(".results:not(:has(tbody tr.empty))").tablesorter({widgets: ['zebra'], sortList: [[1,1],[2,0]]});
+});
+</script>
+{% endblock %}
diff --git a/templates/releng/results.html b/templates/releng/results.html
index c3e7d99..4ff3c86 100644
--- a/templates/releng/results.html
+++ b/templates/releng/results.html
@@ -13,6 +13,9 @@
     if you have tested and used any ISOs. Both successful and failed results
     are encouraged and welcome.</p>
 
+    <p>For a overview of which ISOs tested best, have a look at
+    the <a href="{% url releng-iso-overview %}">overview</a>.</p>
+
     <p>For more information, see the <a
     href="https://wiki.archlinux.org/index.php/DeveloperWiki:releng_testimages_feedback">documentation
     on the wiki</a>.</p>
diff --git a/templates/releng/thanks.html b/templates/releng/thanks.html
index b261426..80018b0 100644
--- a/templates/releng/thanks.html
+++ b/templates/releng/thanks.html
@@ -8,6 +8,8 @@
     <p>Thank you for taking the time to give us this information!
     Your results have been succesfully added to our database.</p>
     <p>You can now <a href="{% url releng-test-overview %}">go back to the results</a>,
-    or <a href="{% url releng-test-submit %}">give more feedback</a>.</p>
+    <a href="{% url releng-test-submit %}">give more feedback</a>, or
+    have a look at the <a href="{% url releng-iso-overview %}">look at
+    the ISO test overview</a>.</p>
 </div>
 {% endblock %}
-- 
1.7.6



More information about the arch-releng mailing list