[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