1111The suite json format is expected to be:
1212{
1313 "path": <relative path chunks to perf resources and main file>,
14+ "owners": [<list of email addresses of benchmark owners (required)>],
1415 "name": <optional suite name, file name is default>,
1516 "archs": [<architecture name for which this suite is run>, ...],
1617 "binary": <name of binary to run, default "d8">,
5556Full example (suite with one runner):
5657{
5758 "path": ["."],
59+ "owner": ["username@chromium.org"],
5860 "flags": ["--expose-gc"],
5961 "test_flags": ["5"],
6062 "archs": ["ia32", "x64"],
7476Full example (suite with several runners):
7577{
7678 "path": ["."],
79+ "owner": ["username@chromium.org", "otherowner@google.com"],
7780 "flags": ["--expose-gc"],
7881 "archs": ["ia32", "x64"],
7982 "run_count": 5,
@@ -401,6 +404,7 @@ def __init__(self, suite, parent, arch):
401404 self ._suite = suite
402405
403406 assert isinstance (suite .get ("path" , []), list )
407+ assert isinstance (suite .get ("owners" , []), list )
404408 assert isinstance (suite ["name" ], basestring )
405409 assert isinstance (suite .get ("flags" , []), list )
406410 assert isinstance (suite .get ("test_flags" , []), list )
@@ -411,6 +415,7 @@ def __init__(self, suite, parent, arch):
411415 self .graphs = parent .graphs [:] + [suite ["name" ]]
412416 self .flags = parent .flags [:] + suite .get ("flags" , [])
413417 self .test_flags = parent .test_flags [:] + suite .get ("test_flags" , [])
418+ self .owners = parent .owners [:] + suite .get ("owners" , [])
414419
415420 # Values independent of parent node.
416421 self .resources = suite .get ("resources" , [])
@@ -451,6 +456,7 @@ class TraceConfig(GraphConfig):
451456 def __init__ (self , suite , parent , arch ):
452457 super (TraceConfig , self ).__init__ (suite , parent , arch )
453458 assert self .results_regexp
459+ assert self .owners
454460
455461 def CreateMeasurement (self , perform_measurement ):
456462 if not perform_measurement :
0 commit comments