mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-11-28 00:06:09 +03:00
99 lines
2.5 KiB
Python
99 lines
2.5 KiB
Python
|
#!/usr/bin/env python
|
||
|
#
|
||
|
# Copyright 2018 The Chromium Authors. All rights reserved.
|
||
|
# Use of this source code is governed by a BSD-style license that can be
|
||
|
# found in the LICENSE file.
|
||
|
|
||
|
"""Creates a script that runs a CrOS VM test by delegating to
|
||
|
build/chromeos/run_vm_test.py.
|
||
|
"""
|
||
|
|
||
|
import argparse
|
||
|
import os
|
||
|
import sys
|
||
|
|
||
|
|
||
|
SCRIPT_TEMPLATE = """\
|
||
|
#!/usr/bin/env python
|
||
|
#
|
||
|
# This file was generated by build/chromeos/create_vm_test_script.py
|
||
|
|
||
|
import os
|
||
|
import sys
|
||
|
|
||
|
def main():
|
||
|
script_directory = os.path.dirname(__file__)
|
||
|
def ResolvePath(path):
|
||
|
return os.path.abspath(os.path.join(script_directory, path))
|
||
|
|
||
|
vm_test_script = os.path.abspath(
|
||
|
os.path.join(script_directory, '{vm_test_script}'))
|
||
|
|
||
|
vm_args = {vm_test_args}
|
||
|
path_args = {vm_test_path_args}
|
||
|
for arg, path in path_args:
|
||
|
vm_args.extend([arg, ResolvePath(path)])
|
||
|
|
||
|
os.execv(vm_test_script,
|
||
|
[vm_test_script] + vm_args + sys.argv[1:])
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
sys.exit(main())
|
||
|
"""
|
||
|
|
||
|
|
||
|
def main(args):
|
||
|
parser = argparse.ArgumentParser()
|
||
|
parser.add_argument('--script-output-path')
|
||
|
parser.add_argument('--output-directory')
|
||
|
parser.add_argument('--test-exe')
|
||
|
parser.add_argument('--runtime-deps-path')
|
||
|
parser.add_argument('--cros-cache')
|
||
|
parser.add_argument('--board')
|
||
|
parser.add_argument('--deploy-chrome', action='store_true')
|
||
|
args = parser.parse_args(args)
|
||
|
|
||
|
def RelativizePathToScript(path):
|
||
|
return os.path.relpath(path, os.path.dirname(args.script_output_path))
|
||
|
|
||
|
run_test_path = RelativizePathToScript(
|
||
|
os.path.join(os.path.dirname(__file__), 'run_vm_test.py'))
|
||
|
|
||
|
vm_test_args = [
|
||
|
'--board', args.board,
|
||
|
'-v',
|
||
|
]
|
||
|
|
||
|
if args.test_exe:
|
||
|
vm_test_args.extend([
|
||
|
'vm-test',
|
||
|
'--test-exe',
|
||
|
args.test_exe,
|
||
|
])
|
||
|
else:
|
||
|
vm_test_args.append('host-cmd')
|
||
|
if args.deploy_chrome:
|
||
|
vm_test_args.append('--deploy-chrome')
|
||
|
|
||
|
vm_test_path_args = [
|
||
|
('--cros-cache', RelativizePathToScript(args.cros_cache)),
|
||
|
]
|
||
|
if args.runtime_deps_path:
|
||
|
vm_test_path_args.append(
|
||
|
('--runtime-deps-path', RelativizePathToScript(args.runtime_deps_path)))
|
||
|
if args.output_directory:
|
||
|
vm_test_path_args.append(
|
||
|
('--path-to-outdir', RelativizePathToScript(args.output_directory)))
|
||
|
|
||
|
with open(args.script_output_path, 'w') as script:
|
||
|
script.write(SCRIPT_TEMPLATE.format(
|
||
|
vm_test_script=run_test_path,
|
||
|
vm_test_args=str(vm_test_args),
|
||
|
vm_test_path_args=str(vm_test_path_args)))
|
||
|
|
||
|
os.chmod(args.script_output_path, 0750)
|
||
|
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
sys.exit(main(sys.argv[1:]))
|