| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright (c) 2014 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2014 The Chromium Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
| 5 | 5 |
| 6 | 6 |
| 7 """Run the webpages_playback automation script.""" | 7 """Run the webpages_playback automation script.""" |
| 8 | 8 |
| 9 | 9 |
| 10 import os | 10 import os |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 57 '--page_sets', 'all', | 57 '--page_sets', 'all', |
| 58 '--browser_executable', browser_executable, | 58 '--browser_executable', browser_executable, |
| 59 '--non-interactive', | 59 '--non-interactive', |
| 60 '--upload', | 60 '--upload', |
| 61 '--alternate_upload_dir', upload_dir, | 61 '--alternate_upload_dir', upload_dir, |
| 62 '--chrome_src_path', chrome_src_path, | 62 '--chrome_src_path', chrome_src_path, |
| 63 ] | 63 ] |
| 64 | 64 |
| 65 try: | 65 try: |
| 66 shell_utils.run(webpages_playback_cmd) | 66 shell_utils.run(webpages_playback_cmd) |
| 67 # Temporary change to enable Slimming Paint runs. See skia:3763. |
| 68 webpages_playback_cmd.extend([ |
| 69 '--skp_prefix', 'sp_', |
| 70 '--browser_extra_args', '--enable-slimming-paint', |
| 71 ]) |
| 72 shell_utils.run(webpages_playback_cmd) |
| 67 finally: | 73 finally: |
| 68 # Clean up any leftover browser instances. This can happen if there are | 74 # Clean up any leftover browser instances. This can happen if there are |
| 69 # telemetry crashes, processes are not always cleaned up appropriately by | 75 # telemetry crashes, processes are not always cleaned up appropriately by |
| 70 # the webpagereplay and telemetry frameworks. | 76 # the webpagereplay and telemetry frameworks. |
| 71 procs = subprocess.check_output(['ps', 'ax']) | 77 procs = subprocess.check_output(['ps', 'ax']) |
| 72 for line in procs.splitlines(): | 78 for line in procs.splitlines(): |
| 73 if browser_executable in line: | 79 if browser_executable in line: |
| 74 pid = line.strip().split(' ')[0] | 80 pid = line.strip().split(' ')[0] |
| 75 if pid != str(os.getpid()) and not 'python' in line: | 81 if pid != str(os.getpid()) and not 'python' in line: |
| 76 try: | 82 try: |
| 77 shell_utils.run(['kill', '-9', pid]) | 83 shell_utils.run(['kill', '-9', pid]) |
| 78 except shell_utils.CommandFailedException as e: | 84 except shell_utils.CommandFailedException as e: |
| 79 print e | 85 print e |
| 80 else: | 86 else: |
| 81 print 'Refusing to kill self.' | 87 print 'Refusing to kill self.' |
| 82 | 88 |
| 83 print 'writing %s: %s' % (SKP_VERSION_FILE, skp_version) | 89 print 'writing %s: %s' % (SKP_VERSION_FILE, skp_version) |
| 84 with open(SKP_VERSION_FILE, 'w') as f: | 90 with open(SKP_VERSION_FILE, 'w') as f: |
| 85 f.write(str(skp_version)) | 91 f.write(str(skp_version)) |
| 86 | 92 |
| 87 | 93 |
| 88 if '__main__' == __name__: | 94 if '__main__' == __name__: |
| 89 if len(sys.argv) != 3: | 95 if len(sys.argv) != 3: |
| 90 print >> sys.stderr, 'USAGE: %s <chrome src path> <browser executable>' | 96 print >> sys.stderr, 'USAGE: %s <chrome src path> <browser executable>' |
| 91 sys.exit(1) | 97 sys.exit(1) |
| 92 main(*sys.argv[1:]) | 98 main(*sys.argv[1:]) |
| OLD | NEW |