Skip to content
Snippets Groups Projects
Commit ac9c9f93 authored by Jan Tattermusch's avatar Jan Tattermusch
Browse files

reports can create subdirs

parent 365c52b4
No related branches found
No related tags found
No related merge requests found
......@@ -37,4 +37,4 @@ git submodule update --init
# download docker images from dockerhub
export DOCKERHUB_ORGANIZATION=grpctesting
tools/run_tests/run_tests_matrix.py -f portability linux
tools/run_tests/run_tests_matrix.py -f portability linux --internal_ci
......@@ -37,4 +37,4 @@ git submodule update --init
# download docker images from dockerhub
export DOCKERHUB_ORGANIZATION=grpctesting
tools/run_tests/run_tests_matrix.py -f portability linux --build_only
tools/run_tests/run_tests_matrix.py -f portability linux --internal_ci --build_only
......@@ -77,6 +77,10 @@ def render_junit_xml_report(resultset, xml_report, suite_package='grpc',
ET.SubElement(xml_test, 'error', message='Timeout')
elif result.state == 'SKIPPED':
ET.SubElement(xml_test, 'skipped', message='Skipped')
# ensure the report directory exists
report_dir = os.path.dirname(os.path.abspath(xml_report))
if not os.path.exists(report_dir):
os.makedirs(report_dir)
tree = ET.ElementTree(root)
tree.write(xml_report, encoding='UTF-8')
......
......@@ -55,6 +55,16 @@ _DEFAULT_INNER_JOBS = 2
_REPORT_SUFFIX = 'sponge_log.xml'
def _report_filename(name):
"""Generates report file name"""
return 'report_%s_%s' % (name, _REPORT_SUFFIX)
def _report_filename_internal_ci(name):
"""Generates report file name that leads to better presentation by internal CI"""
return '%s/%s' % (name, _REPORT_SUFFIX)
def _docker_jobspec(name, runtests_args=[], runtests_envs={},
inner_jobs=_DEFAULT_INNER_JOBS):
"""Run a single instance of run_tests.py in a docker container"""
......@@ -63,7 +73,7 @@ def _docker_jobspec(name, runtests_args=[], runtests_envs={},
'--use_docker',
'-t',
'-j', str(inner_jobs),
'-x', 'report_%s_%s' % (name, _REPORT_SUFFIX),
'-x', _report_filename(name),
'--report_suite_name', '%s' % name] + runtests_args,
environ=runtests_envs,
shortname='run_tests_%s' % name,
......@@ -83,7 +93,7 @@ def _workspace_jobspec(name, runtests_args=[], workspace_name=None,
'tools/run_tests/helper_scripts/run_tests_in_workspace.sh',
'-t',
'-j', str(inner_jobs),
'-x', '../report_%s_%s' % (name, _REPORT_SUFFIX),
'-x', '../%s' % _report_filename(name),
'--report_suite_name', '%s' % name] + runtests_args,
environ=env,
shortname='run_tests_%s' % name,
......@@ -380,8 +390,17 @@ if __name__ == "__main__":
argp.add_argument('--max_time', default=-1, type=int,
help='Maximum amount of time to run tests for' +
'(other tests will be skipped)')
argp.add_argument('--internal_ci',
default=False,
action='store_const',
const=True,
help='Put reports into subdirectories to improve presentation of '
'results by Internal CI.')
args = argp.parse_args()
if args.internal_ci:
_report_filename = _report_filename_internal_ci # override the function
extra_args = []
if args.build_only:
extra_args.append('--build_only')
......@@ -450,7 +469,7 @@ if __name__ == "__main__":
ignored_num_skipped_failures, skipped_results = jobset.run(
skipped_jobs, skip_jobs=True)
resultset.update(skipped_results)
report_utils.render_junit_xml_report(resultset, 'report_%s' % _REPORT_SUFFIX,
report_utils.render_junit_xml_report(resultset, _report_filename('aggregate_tests'),
suite_name='aggregate_tests')
if num_failures == 0:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment