17d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Klein#!/usr/bin/env python
27d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Klein#
37d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Klein# Copyright 2016 Google Inc.
47d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Klein#
57d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Klein# Use of this source code is governed by a BSD-style license that can be
67d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Klein# found in the LICENSE file.
77d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Klein
87d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Kleinimport os
97d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Kleinimport subprocess
107d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Kleinimport sys
117d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Klein
127d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Kleinhost, serial, stamp = sys.argv[1:]
137d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Kleindevice = '/data/local/tmp/' + os.path.basename(host)
147d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Klein
15a005acc036f8772cb6537b71d366825653888636Mike Kleinrestrict = [] if serial == 'auto' else ['-s', serial]
16a005acc036f8772cb6537b71d366825653888636Mike Klein
177d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Klein# adb push is verbose, so eat its output with check_output().
18a005acc036f8772cb6537b71d366825653888636Mike Kleinsubprocess.check_output(['adb'] + restrict + ['push', host, device])
19a005acc036f8772cb6537b71d366825653888636Mike Kleinsubprocess.check_call(['adb'] + restrict + ['shell', 'chmod', '+x', device])
207d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Klein
217d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Klein# Touch a file to let GN/Ninja know we succeeded.
227d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Kleinwith open(stamp, 'w'):
237d92103f9ebed04c54f4ec8636f98dc0e4fc3056Mike Klein  pass
24