|
|
|
|
|
<%= escape(description) %>
<%= header %>
Status |
Package |
Revision |
Start |
Stop |
Notes |
<%
def nn(s, d=""):
if not s: return d
return escape(s)
def pretty_time(t, format="%Y-%m-%d %H:%M:%S"):
if not t: return "<unknown>"
return t.strftime(format)
def date_from_datetime(x):
if not x: return None
return date(x.year, x.month, x.day)
def sort_by_start(a, b):
a_start = a.build_start
b_start = b.build_start
if not a_start and not b_start: return 0
if not a_start: return 1
if not b_start: return -1
return cmp(a_start, b_start)
track_items = sorted(track_items, cmp=sort_by_start, reverse=True)
last_date = None
STATUS2CLASS = {
'creating_binary_package': 'inprogress',
'binary_package_created': 'finished'
}
STATUS2MSG = {
'creating_binary_package': 'building binary packages',
'binary_package_created': 'build successful'
}
for track_item in track_items:
# for all track items
curr_date = date_from_datetime(track_item.build_start)
if curr_date != last_date:
last_date = curr_date
%>
<%= pretty_time(last_date, "%Y-%m-%d") %> |
<%
# date changed
%>
<%= STATUS2MSG.get(track_item.build_status, 'error') %> |
<%= nn(track_item.track) %> |
<%= nn(track_item.revision) %> |
<%= pretty_time(track_item.build_start) %> |
<%= pretty_time(track_item.build_stop) %> |
<%
for log_desc, log_path in track_item.build_logs:
# for all logs
%>
[><%= nn(log_desc) %>]
<%
# for all logs
%>
|
<%
# for all track itemes
%>
|
|
|
|
|
|
|