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