Bug 1316692 - Upload talos results as json artifact; r=jmaher

MozReview-Commit-ID: 3aehYIknuDR

--HG--
extra : rebase_source : 66dd20bb1c35440d0763a43f73e1fdc86d03ba77
This commit is contained in:
Rob Wood 2016-12-16 10:31:06 -05:00
parent 5b302719f0
commit f779454d85

View File

@ -12,6 +12,7 @@ import os
import pprint
import copy
import re
import shutil
import json
import mozharness
@ -412,6 +413,14 @@ class Talos(TestingMixin, MercurialScript, BlobUploadMixin, TooltoolMixin):
self.exception("Error while validating PERFHERDER_DATA")
parser.update_worst_log_and_tbpl_levels(WARNING, TBPL_WARNING)
def _artifact_perf_data(self, dest):
src = os.path.join(self.query_abs_dirs()['abs_work_dir'], 'local.json')
try:
shutil.copyfile(src, dest)
except:
self.critical("Error copying results %s to upload dir %s" % (src, dest))
parser.update_worst_log_and_tbpl_levels(CRITICAL, TBPL_FAILURE)
def run_tests(self, args=None, **kw):
"""run Talos tests"""
@ -477,6 +486,10 @@ class Talos(TestingMixin, MercurialScript, BlobUploadMixin, TooltoolMixin):
else:
if not self.sps_profile:
self._validate_treeherder_data(parser)
if not self.run_local:
# copy results to upload dir so they are included as an artifact
dest = os.path.join(env['MOZ_UPLOAD_DIR'], 'perfherder-data.json')
self._artifact_perf_data(dest)
self.buildbot_status(parser.worst_tbpl_status,
level=parser.worst_log_level)