Bug 1304508 - Use mach for running "check" target; r?ted
We switch mozharness to use `mach build` to invoke the "check" make
target instead of using `make` itself. Because `mach` is the interface
that everyone should use and `make` is an implementation detail.
My editor also snuck in a change to normalize a CRLF line ending.
MozReview-Commit-ID: 4gdE6oeK0Lz
--- a/testing/mozharness/mozharness/mozilla/building/buildbase.py
+++ b/testing/mozharness/mozharness/mozilla/building/buildbase.py
@@ -1836,40 +1836,42 @@ or run without that action (ie: --no-{ac
self.info('Skipping due to forced artifact build.')
return
c = self.config
dirs = self.query_abs_dirs()
env = self.query_build_env()
env.update(self.query_check_test_env())
- if c.get('enable_pymake'): # e.g. windows
- pymake_path = os.path.join(dirs['abs_src_dir'], 'build',
- 'pymake', 'make.py')
- cmd = ['python', pymake_path]
- else:
- cmd = ['make']
- cmd.extend(['-k', 'check'])
+ python = self.query_exe('python2.7')
+ cmd = [
+ python, 'mach',
+ '--log-no-times',
+ 'build',
+ '-v',
+ '--keep-going',
+ 'check',
+ ]
parser = CheckTestCompleteParser(config=c,
log_obj=self.log_obj)
return_code = self.run_command_m(command=cmd,
- cwd=dirs['abs_obj_dir'],
+ cwd=dirs['abs_src_dir'],
env=env,
output_parser=parser)
tbpl_status = parser.evaluate_parser(return_code)
return_code = EXIT_STATUS_DICT[tbpl_status]
if return_code:
self.return_code = self.worst_level(
return_code, self.return_code,
AUTOMATION_EXIT_CODES[::-1]
)
- self.error("'make -k check' did not run successfully. Please check "
- "log for errors.")
+ self.error("'mach build check' did not run successfully. Please "
+ "check log for errors.")
def _load_build_resources(self):
p = self.config.get('build_resources_path') % self.query_abs_dirs()
if not os.path.exists(p):
self.info('%s does not exist; not loading build resources' % p)
return None
with open(p, 'rb') as fh:
@@ -2039,17 +2041,17 @@ or run without that action (ie: --no-{ac
},
"suites": [],
}
if (installer_size or size_measurements) and not c.get('debug_build'):
if installer.endswith('.apk'): # Android
perfherder_data["suites"].append({
"name": "installer size",
"value": installer_size,
- "alertChangeType": "absolute",
+ "alertChangeType": "absolute",
"alertThreshold": (200 * 1024),
"subtests": size_measurements
})
else:
perfherder_data["suites"].append({
"name": "installer size",
"value": installer_size,
"alertThreshold": 1.0,