summaryrefslogtreecommitdiff
path: root/post-build-report.py
diff options
context:
space:
mode:
authorMilosz Wasilewski <milosz.wasilewski@linaro.org>2016-06-10 12:54:55 +0100
committerMilosz Wasilewski <milosz.wasilewski@linaro.org>2016-06-10 12:55:57 +0100
commit32787e435dba4b6e823dfb90468fab850bf70321 (patch)
tree6645ef181062bda905be868a387cb4f6a144ff60 /post-build-report.py
parentaaedc8c94b0b1dee230d1d4f02aef7e1f0ef542e (diff)
added support for build image measurements
Signed-off-by: Milosz Wasilewski <milosz.wasilewski@linaro.org>
Diffstat (limited to 'post-build-report.py')
-rw-r--r--post-build-report.py54
1 files changed, 53 insertions, 1 deletions
diff --git a/post-build-report.py b/post-build-report.py
index 868e737..44a0eb4 100644
--- a/post-build-report.py
+++ b/post-build-report.py
@@ -60,6 +60,55 @@ def _get_manifest(workspace_path):
return None
+def _results(workspace_path):
+ benchmarks = {
+ "Boot.oat size": ['boot_oat_size_ARM_32_Quick.txt',
+ 'boot_oat_size_ARM_64_Quick.txt',
+ 'boot_oat_size_x86_32_Quick.txt',
+ 'boot_oat_size_x86_64_Quick.txt',
+ 'boot_oat_size_x86_64_Optimizing.txt',
+ 'boot_oat_size_x86_32_Optimizing.txt',
+ 'boot_oat_size_ARM_64_Optimizing.txt',
+ 'boot_oat_size_ARM_32_Optimizing.txt',
+ 'boot_oat_size_mips_64_Optimizing.txt',
+ 'boot_oat_size_mips_32_Quick.txt'],
+
+ "Oat Execution Time": ['avg_oat_time_ARM_32_Quick.txt',
+ 'avg_oat_time_ARM_64_Quick.txt',
+ 'avg_oat_time_x86_64_Quick.txt',
+ 'avg_oat_time_x86_32_Quick.txt',
+ 'avg_oat_time_x86_64_Optimizing.txt',
+ 'avg_oat_time_x86_32_Optimizing.txt',
+ 'avg_oat_time_ARM_32_Optimizing.txt',
+ 'avg_oat_time_ARM_64_Optimizing.txt',
+ 'avg_oat_time_mips_64_Optimizing.txt',
+ 'avg_oat_time_mips_32_Quick.txt']
+ }
+
+ val = []
+
+ for benchmark, subscores in benchmarks.items():
+ for subscore in subscores:
+ path = os.path.join(workspace_path, subscore)
+ print path, os.path.exists(path)
+ if os.path.exists(path):
+ raw = open(path, 'r').read().strip()
+ measurement = float(raw.replace("YVALUE=", ""))
+
+ name = (subscore
+ .replace("avg_oat_time_", "")
+ .replace("boot_oat_size_", "")
+ .replace(".txt", "")
+ .replace("_", " "))
+
+ val.append({
+ "benchmark": benchmark,
+ "name": name,
+ "measurement": measurement
+ })
+
+ return val
+
if __name__ == '__main__':
jenkins_project_name = os.environ.get("SOURCE_PROJECT_NAME")
@@ -75,6 +124,7 @@ if __name__ == '__main__':
manifest = _get_manifest(os.environ.get("WORKSPACE"))
test_jobs = os.environ.get("LAVA_JOB_IDS", "")
+ results = _results(os.environ.get("WORKSPACE"))
if jenkins_build_number is None:
print "Build number not set. Exiting!"
@@ -108,7 +158,9 @@ if __name__ == '__main__':
"gerrit_change_number": os.environ.get("SOURCE_GERRIT_CHANGE_NUMBER"),
"gerrit_patchset_number":os.environ.get("SOURCE_GERRIT_PATCHSET_NUMBER"),
"gerrit_change_url": os.environ.get("SOURCE_GERRIT_CHANGE_URL"),
- "gerrit_change_id": os.environ.get("SOURCE_GERRIT_CHANGE_ID", "")
+ "gerrit_change_id": os.environ.get("SOURCE_GERRIT_CHANGE_ID", ""),
+
+ "results": results
}
print params