|
|
|
@ -243,14 +243,14 @@ def _allowed_labels(): |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def _runs_per_test_type(arg_str): |
|
|
|
|
"""Auxiliary function to parse the "runs_per_test" flag.""" |
|
|
|
|
try: |
|
|
|
|
n = int(arg_str) |
|
|
|
|
if n <= 0: raise ValueError |
|
|
|
|
return n |
|
|
|
|
except: |
|
|
|
|
msg = '\'{}\' is not a positive integer'.format(arg_str) |
|
|
|
|
raise argparse.ArgumentTypeError(msg) |
|
|
|
|
"""Auxiliary function to parse the "runs_per_test" flag.""" |
|
|
|
|
try: |
|
|
|
|
n = int(arg_str) |
|
|
|
|
if n <= 0: raise ValueError |
|
|
|
|
return n |
|
|
|
|
except: |
|
|
|
|
msg = '\'{}\' is not a positive integer'.format(arg_str) |
|
|
|
|
raise argparse.ArgumentTypeError(msg) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__": |
|
|
|
@ -264,6 +264,11 @@ if __name__ == "__main__": |
|
|
|
|
nargs='+', |
|
|
|
|
default=[], |
|
|
|
|
help='Filter targets to run by label with AND semantics.') |
|
|
|
|
argp.add_argument('--exclude', |
|
|
|
|
choices=_allowed_labels(), |
|
|
|
|
nargs='+', |
|
|
|
|
default=[], |
|
|
|
|
help='Exclude targets with any of given labels.') |
|
|
|
|
argp.add_argument('--build_only', |
|
|
|
|
default=False, |
|
|
|
|
action='store_const', |
|
|
|
@ -310,7 +315,8 @@ if __name__ == "__main__": |
|
|
|
|
jobs = [] |
|
|
|
|
for job in all_jobs: |
|
|
|
|
if not args.filter or all(filter in job.labels for filter in args.filter): |
|
|
|
|
jobs.append(job) |
|
|
|
|
if not any(exclude_label in job.labels for exclude_label in args.exclude): |
|
|
|
|
jobs.append(job) |
|
|
|
|
|
|
|
|
|
if not jobs: |
|
|
|
|
jobset.message('FAILED', 'No test suites match given criteria.', |
|
|
|
|