From e8447067492b8b11e6ccb38be6c013cf23c326e1 Mon Sep 17 00:00:00 2001
From: Lars Wirzenius Obnam benchmark: summary
+
+ Benchmark results
+
+
+
+
+
+
+
+ {% for run in runs %}
+ date
+ commit
+ commit msg
+ {% for name in benchmark_names %}
+ {{ name }} (seconds)
+ {% endfor %}
+
(% of goal)
+
+ {% endfor %}
+
+ {{ run.date }}
+ {{ run.commit_id }}
+ {{ run.commit_msg }}
+
+ {% for name in benchmark_names %}
+
+
+ {{ run.durations[name] }}
+ ({{ run.references[name] }})
+
+ {% endfor %}
+ Benchmark spec
+ {{ spec }}
date | \n') - f.write('commit | \n') - f.write('commit msg | \n') - for name in benchmark_names: - f.write('{name} (seconds)'
- ' (% of goal) | \n'.format(name=self.q(name)))
- f.write('
---|---|---|---|
{date} | \n'.format( - date=self.q(run['date']))) - f.write( - '{commit} | \n'.format( - commit=self.q(run['commit_id']))) - f.write('{msg} | \n'.format( - msg=self.q(run['commit_msg']))) - + run['links'] = {} + run['references'] = {} for name in benchmark_names: - link = '{commit}_{name}.html'.format( - commit=self.q(run['commit_id']), - name=self.q(name)) - duration = '%.1f' % run['durations'][name] - reference = sum( sum(x.get('reference', 0) for x in b['steps']) for b in spec['benchmarks'] @@ -333,27 +349,26 @@ class ObnamBenchmarker(cliapp.Application): 100.0 * run['durations'][name] / reference) else: reference = 'unknown' + run['references'][name] = reference - f.write( - '' - '{duration} ' - '({reference}) | \n'.format( - link=link, - duration=self.q(duration), - reference=reference)) - f.write('
') - f.write( - self.q( - yaml.safe_dump(spec, default_flow_style=False, indent=4))) - f.write('\n') + env = jinja2.Environment( + autoescape=lambda foo: True, + extensions=['jinja2.ext.autoescape']) + template = env.from_string(summary_j2) + f.write(template.render(**vars)) - f.write('\n') - f.write('\n') def find_benchmark_names(self, objs): return list(sorted(set(o['name'] for o in objs))) -- cgit v1.2.1