xref: /aosp_15_r20/external/skia/gn/push_to_android.py (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Worker#!/usr/bin/env python
2*c8dee2aaSAndroid Build Coastguard Worker#
3*c8dee2aaSAndroid Build Coastguard Worker# Copyright 2016 Google Inc.
4*c8dee2aaSAndroid Build Coastguard Worker#
5*c8dee2aaSAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be
6*c8dee2aaSAndroid Build Coastguard Worker# found in the LICENSE file.
7*c8dee2aaSAndroid Build Coastguard Worker
8*c8dee2aaSAndroid Build Coastguard Workerimport os
9*c8dee2aaSAndroid Build Coastguard Workerimport subprocess
10*c8dee2aaSAndroid Build Coastguard Workerimport sys
11*c8dee2aaSAndroid Build Coastguard Worker
12*c8dee2aaSAndroid Build Coastguard Workerhost, serial, stamp = sys.argv[1:]
13*c8dee2aaSAndroid Build Coastguard Workerdevice = '/data/local/tmp/' + os.path.basename(host)
14*c8dee2aaSAndroid Build Coastguard Worker
15*c8dee2aaSAndroid Build Coastguard Workerrestrict = [] if serial == 'auto' else ['-s', serial]
16*c8dee2aaSAndroid Build Coastguard Worker
17*c8dee2aaSAndroid Build Coastguard Worker# adb push is verbose, so eat its output with check_output().
18*c8dee2aaSAndroid Build Coastguard Workersubprocess.check_output(['adb'] + restrict + ['push', host, device])
19*c8dee2aaSAndroid Build Coastguard Workersubprocess.check_call(['adb'] + restrict + ['shell', 'chmod', '+x', device])
20*c8dee2aaSAndroid Build Coastguard Worker
21*c8dee2aaSAndroid Build Coastguard Worker# Touch a file to let GN/Ninja know we succeeded.
22*c8dee2aaSAndroid Build Coastguard Workerwith open(stamp, 'w'):
23*c8dee2aaSAndroid Build Coastguard Worker  pass
24