[llvm-commits] [zorg] r130214 - in /zorg/trunk/lnt/lnt/server/ui: app.py templates/machine.html templates/run.html templates/test.html views.py

Daniel Dunbar daniel at zuster.org
Tue Apr 26 10:47:57 PDT 2011


Author: ddunbar
Date: Tue Apr 26 12:47:57 2011
New Revision: 130214

URL: http://llvm.org/viewvc/llvm-project?rev=130214&view=rev
Log:
LNT/Flask: Port generic database views.

Added:
    zorg/trunk/lnt/lnt/server/ui/templates/machine.html
    zorg/trunk/lnt/lnt/server/ui/templates/run.html
    zorg/trunk/lnt/lnt/server/ui/templates/test.html
Modified:
    zorg/trunk/lnt/lnt/server/ui/app.py
    zorg/trunk/lnt/lnt/server/ui/views.py

Modified: zorg/trunk/lnt/lnt/server/ui/app.py
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/lnt/lnt/server/ui/app.py?rev=130214&r1=130213&r2=130214&view=diff
==============================================================================
--- zorg/trunk/lnt/lnt/server/ui/app.py (original)
+++ zorg/trunk/lnt/lnt/server/ui/app.py Tue Apr 26 12:47:57 2011
@@ -6,6 +6,7 @@
 import flask
 from flask import current_app
 from flask import g
+from flask import url_for
 
 import lnt
 import lnt.server.ui.filters
@@ -48,6 +49,12 @@
     def get_db_summary(self):
         return current_app.get_db_summary(g.db_name, self.get_db())
 
+def db_url_for(*args, **kwargs):
+    """
+    Like url_for, but handles automatically providing the db_name argument.
+    """
+    return url_for(*args, db_name=g.db_name, **kwargs)
+
 class App(flask.Flask):
     @staticmethod
     def create_standalone(config_path):
@@ -85,6 +92,7 @@
 
         self.jinja_env.globals.update(
             app=current_app,
+            db_url_for=db_url_for,
             perfdb=PerfDB,
             old_config=self.old_config)
 

Added: zorg/trunk/lnt/lnt/server/ui/templates/machine.html
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/lnt/lnt/server/ui/templates/machine.html?rev=130214&view=auto
==============================================================================
--- zorg/trunk/lnt/lnt/server/ui/templates/machine.html (added)
+++ zorg/trunk/lnt/lnt/server/ui/templates/machine.html Tue Apr 26 12:47:57 2011
@@ -0,0 +1,43 @@
+{% set db = request.get_db() %}
+{% set machine = db.getMachine(id) %}
+
+{% extends "layout.html" %}
+{% set components = [("browse", db_url_for("browse"))] %}
+{% block title %}Machine: {{machine.name}}:{{machine.number}}{% endblock %}
+{% block body %}
+
+{# Show the machine info dictionary. #}
+<table border=1 cellborder=1>
+  <tr>
+    <th>Key</th>
+    <th>Value</th>
+  </tr>
+  </thead>
+{% for mi in machine.info.values() %}
+  <tr>
+    <td>{{mi.key}}</td>
+    <td>{{mi.value}}</td>
+  </tr>
+{% endfor %}
+</table>
+
+{# List associated runs. #}
+<h3>Associated Runs</h3>
+<table class="sortable" border=1 cellborder=1>
+  <thead>
+  <tr>
+    <th>Run ID</th>
+    <th>Start Time</th>
+    <th>End Time</th>
+  </tr>
+  </thead>
+{% for r in db.runs(machine=machine) %}
+  <tr>
+    <td><a href="{{db_url_for('run', id=r.id)}}">{{r.id}}</a></td>
+    <td>{{r.start_time}}</td>
+    <td>{{r.end_time}}</td>
+  </tr>
+{% endfor %}
+</table>
+
+{% endblock %}

Added: zorg/trunk/lnt/lnt/server/ui/templates/run.html
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/lnt/lnt/server/ui/templates/run.html?rev=130214&view=auto
==============================================================================
--- zorg/trunk/lnt/lnt/server/ui/templates/run.html (added)
+++ zorg/trunk/lnt/lnt/server/ui/templates/run.html Tue Apr 26 12:47:57 2011
@@ -0,0 +1,41 @@
+{% set db = request.get_db() %}
+{% set run = db.getRun(id) %}
+{% set machine = db.getMachine(run.machine_id) %}
+
+{% extends "layout.html" %}
+{% set components = [("browse", db_url_for("browse"))] %}
+{% block title %}Run: {{run.id}}{% endblock %}
+{% block body %}
+
+<table border=1 cellborder=1>
+  <tr>
+    <th>Machine</th>
+    <th>Start Time</th>
+    <th>End Time</th>
+  </tr>
+  </thead>
+  <tr>
+    <td><a href="{{db_url_for('machine', id=machine.id)}}">{{
+        machine.name}}{{machine.number}}</a></td>
+    <td>{{run.start_time}}</td>
+    <td>{{run.end_time}}</td>
+  </tr>
+</table>
+
+{# Show the run info dictionary. #}
+<h3>Run Info</h3>
+<table border=1 cellborder=1>
+  <tr>
+    <th>Key</th>
+    <th>Value</th>
+  </tr>
+  </thead>
+{% for mi in run.info.values() %}
+  <tr>
+    <td>{{mi.key}}</td>
+    <td>{{mi.value}}</td>
+  </tr>
+{% endfor %}
+</table>
+
+{% endblock %}

Added: zorg/trunk/lnt/lnt/server/ui/templates/test.html
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/lnt/lnt/server/ui/templates/test.html?rev=130214&view=auto
==============================================================================
--- zorg/trunk/lnt/lnt/server/ui/templates/test.html (added)
+++ zorg/trunk/lnt/lnt/server/ui/templates/test.html Tue Apr 26 12:47:57 2011
@@ -0,0 +1,43 @@
+{% set db = request.get_db() %}
+{% set test = db.getTest(id) %}
+
+{% extends "layout.html" %}
+{% set components = [("browse", db_url_for("browse"))] %}
+{% block title %}Test: {{test.name}}{% endblock %}
+{% block body %}
+
+
+{# Show the test info dictionary. #}
+<h3>Test Info</h3>
+<table border=1 cellborder=1>
+  <tr>
+    <th>Key</th>
+    <th>Value</th>
+  </tr>
+  </thead>
+{% for key,value in test.info|dictsort %}
+  <tr>
+    <td>{{key}}</td>
+    <td>{{value}}</td>
+  </tr>
+{% endfor %}
+</table>
+
+{# List samples. #}
+<h3>Associated Samples</h3>
+<table class="sortable" border=1 cellborder=1>
+  <thead>
+  <tr>
+    <th>Run ID</th>
+    <th>Value</th>
+  </tr>
+  </thead>
+{% for s in db.samples(test=test) %}
+  <tr>
+    <td><a href="{{db_url_for('run', id=s.run_id)}}">{{s.run_id}}</a></td>
+    <td>{{s.value}}</td>
+  </tr>
+{% endfor %}
+</table>
+
+{% endblock %}

Modified: zorg/trunk/lnt/lnt/server/ui/views.py
URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/lnt/lnt/server/ui/views.py?rev=130214&r1=130213&r2=130214&view=diff
==============================================================================
--- zorg/trunk/lnt/lnt/server/ui/views.py (original)
+++ zorg/trunk/lnt/lnt/server/ui/views.py Tue Apr 26 12:47:57 2011
@@ -79,3 +79,18 @@
 @db_route('/submitRun')
 def submit_run():
     raise NotImplementedError
+
+###
+# Generic Database Views
+
+ at db_route("/machines/<id>/")
+def machine(id):
+    return render_template("machine.html", id=id)
+
+ at db_route("/runs/<id>/")
+def run(id):
+    return render_template("run.html", id=id)
+
+ at db_route("/tests/<id>/")
+def test(id):
+    return render_template("test.html", id=id)





More information about the llvm-commits mailing list