1fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot#!/usr/bin/env python 2fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot# 3fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot# Copyright 2016 Google Inc. 4fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot# 5fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot# Use of this source code is governed by a BSD-style license that can be 6fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot# found in the LICENSE file. 7fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot 8fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot 9fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot"""Create the asset and upload it.""" 10fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot 11fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot 12fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotimport argparse 13fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotimport common 14fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotimport os 15fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotimport subprocess 16fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotimport sys 17fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotimport utils 18fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot 19fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot 20fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotdef main(): 21fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot parser = argparse.ArgumentParser() 22fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot parser.add_argument('--gsutil') 23fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot parser.add_argument('--chrome_path') 24fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot parser.add_argument('--msvs_version', required=True) 25fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot args = parser.parse_args() 26fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot 27fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot with utils.tmp_dir(): 28fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot cwd = os.getcwd() 29fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot create_script = os.path.join(common.FILE_DIR, 'create.py') 30fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot upload_script = os.path.join(common.FILE_DIR, 'upload.py') 31fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot 32fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot try: 33fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot cmd = ['python', create_script, 34fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot '-t', cwd, 35fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot '--msvs_version', args.msvs_version] 36fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot if args.chrome_path: 37fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot cmd.extend(['--chrome_path', args.chrome_path]) 38fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot subprocess.check_call(cmd) 39fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot cmd = ['python', upload_script, '-t', cwd] 40fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot if args.gsutil: 41fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot cmd.extend(['--gsutil', args.gsutil]) 42fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot subprocess.check_call(cmd) 43fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot except subprocess.CalledProcessError: 44fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot # Trap exceptions to avoid printing two stacktraces. 45fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot sys.exit(1) 46fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot 47fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot 48fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robotif __name__ == '__main__': 49fe17456d5e528078ce69b5f15cf7adf1fab963fandroid-build-team Robot main() 50