blob: c1ba55bce74814940b5a3f0fee2830b0b3537bfe [file] [log] [blame]
Kevin Lubickbd27d1d2017-10-13 08:01:49 -04001[
2 {
3 "cmd": [
Eric Borenb7023162018-05-04 13:46:15 -04004 "python",
5 "-u",
6 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
7 "--json-output",
8 "/path/to/tmp/json",
9 "ensure-directory",
10 "--mode",
11 "0777",
12 "[START_DIR]/tmp"
13 ],
14 "infra_step": true,
15 "name": "makedirs tmp_dir"
16 },
17 {
18 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -050019 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -040020 "shell",
21 "mkdir",
22 "-p",
23 "/sdcard/revenge_of_the_skiabot/resources"
24 ],
25 "cwd": "[START_DIR]/skia",
26 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -040027 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -040028 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -040029 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -040030 },
31 "infra_step": true,
32 "name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
33 },
34 {
35 "cmd": [
36 "python",
37 "-u",
Kevin Lubick4fd283e2017-12-07 11:19:31 -050038 "\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['/usr/bin/adb.1.0.35', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -040039 "[START_DIR]/skia/resources",
40 "/sdcard/revenge_of_the_skiabot/resources"
41 ],
42 "env": {
Kevin Lubickbd27d1d2017-10-13 08:01:49 -040043 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -040044 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -040045 },
46 "infra_step": true,
47 "name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
48 "~followup_annotations": [
49 "@@@STEP_LOG_LINE@python.inline@@@@",
50 "@@@STEP_LOG_LINE@python.inline@import os@@@",
51 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
52 "@@@STEP_LOG_LINE@python.inline@import sys@@@",
53 "@@@STEP_LOG_LINE@python.inline@host = sys.argv[1]@@@",
54 "@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
55 "@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
56 "@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
57 "@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
58 "@@@STEP_LOG_LINE@python.inline@ continue@@@",
59 "@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
60 "@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
Kevin Lubick4fd283e2017-12-07 11:19:31 -050061 "@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['/usr/bin/adb.1.0.35', 'push',@@@",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -040062 "@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
63 "@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
64 "@@@STEP_LOG_END@python.inline@@@"
65 ]
66 },
67 {
68 "cmd": [
69 "python",
70 "-u",
71 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
72 "--json-output",
73 "/path/to/tmp/json",
74 "copy",
75 "[START_DIR]/skia/infra/bots/assets/skp/VERSION",
76 "/path/to/tmp/"
77 ],
78 "infra_step": true,
Ben Wagnerf20710e2018-03-19 16:52:37 -040079 "name": "Get skp VERSION"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -040080 },
81 {
82 "cmd": [
83 "python",
84 "-u",
85 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
86 "--json-output",
87 "/path/to/tmp/json",
88 "copy",
89 "42",
90 "[START_DIR]/tmp/SKP_VERSION"
91 ],
92 "infra_step": true,
93 "name": "write SKP_VERSION"
94 },
95 {
96 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -050097 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -040098 "shell",
99 "cat",
100 "/sdcard/revenge_of_the_skiabot/SKP_VERSION"
101 ],
102 "cwd": "[START_DIR]/skia",
103 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400104 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400105 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400106 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400107 },
108 "infra_step": true,
109 "name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
110 "stdout": "/path/to/tmp/"
111 },
112 {
113 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500114 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400115 "shell",
116 "rm",
117 "-f",
118 "/sdcard/revenge_of_the_skiabot/SKP_VERSION"
119 ],
120 "cwd": "[START_DIR]/skia",
121 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400122 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400123 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400124 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400125 },
126 "infra_step": true,
127 "name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
128 },
129 {
130 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500131 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400132 "shell",
133 "rm",
134 "-rf",
135 "/sdcard/revenge_of_the_skiabot/skps"
136 ],
137 "cwd": "[START_DIR]/skia",
138 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400139 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400140 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400141 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400142 },
143 "infra_step": true,
144 "name": "rm /sdcard/revenge_of_the_skiabot/skps"
145 },
146 {
147 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500148 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400149 "shell",
150 "mkdir",
151 "-p",
152 "/sdcard/revenge_of_the_skiabot/skps"
153 ],
154 "cwd": "[START_DIR]/skia",
155 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400156 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400157 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400158 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400159 },
160 "infra_step": true,
161 "name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
162 },
163 {
164 "cmd": [
165 "python",
166 "-u",
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500167 "\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['/usr/bin/adb.1.0.35', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400168 "[START_DIR]/skp",
169 "/sdcard/revenge_of_the_skiabot/skps"
170 ],
171 "env": {
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400172 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400173 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400174 },
175 "infra_step": true,
176 "name": "push [START_DIR]/skp/* /sdcard/revenge_of_the_skiabot/skps",
177 "~followup_annotations": [
178 "@@@STEP_LOG_LINE@python.inline@@@@",
179 "@@@STEP_LOG_LINE@python.inline@import os@@@",
180 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
181 "@@@STEP_LOG_LINE@python.inline@import sys@@@",
182 "@@@STEP_LOG_LINE@python.inline@host = sys.argv[1]@@@",
183 "@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
184 "@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
185 "@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
186 "@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
187 "@@@STEP_LOG_LINE@python.inline@ continue@@@",
188 "@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
189 "@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500190 "@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['/usr/bin/adb.1.0.35', 'push',@@@",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400191 "@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
192 "@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
193 "@@@STEP_LOG_END@python.inline@@@"
194 ]
195 },
196 {
197 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500198 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400199 "push",
200 "[START_DIR]/tmp/SKP_VERSION",
201 "/sdcard/revenge_of_the_skiabot/SKP_VERSION"
202 ],
203 "cwd": "[START_DIR]/skia",
204 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400205 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400206 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400207 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400208 },
209 "infra_step": true,
210 "name": "push [START_DIR]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
211 },
212 {
213 "cmd": [
214 "python",
215 "-u",
216 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
217 "--json-output",
218 "/path/to/tmp/json",
219 "copy",
220 "[START_DIR]/skia/infra/bots/assets/skimage/VERSION",
221 "/path/to/tmp/"
222 ],
223 "infra_step": true,
Ben Wagnerf20710e2018-03-19 16:52:37 -0400224 "name": "Get skimage VERSION"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400225 },
226 {
227 "cmd": [
228 "python",
229 "-u",
230 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
231 "--json-output",
232 "/path/to/tmp/json",
233 "copy",
234 "42",
235 "[START_DIR]/tmp/SK_IMAGE_VERSION"
236 ],
237 "infra_step": true,
238 "name": "write SK_IMAGE_VERSION"
239 },
240 {
241 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500242 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400243 "shell",
244 "cat",
245 "/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
246 ],
247 "cwd": "[START_DIR]/skia",
248 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400249 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400250 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400251 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400252 },
253 "infra_step": true,
254 "name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
255 "stdout": "/path/to/tmp/"
256 },
257 {
258 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500259 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400260 "shell",
261 "rm",
262 "-f",
263 "/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
264 ],
265 "cwd": "[START_DIR]/skia",
266 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400267 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400268 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400269 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400270 },
271 "infra_step": true,
272 "name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
273 },
274 {
275 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500276 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400277 "shell",
278 "rm",
279 "-rf",
280 "/sdcard/revenge_of_the_skiabot/images"
281 ],
282 "cwd": "[START_DIR]/skia",
283 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400284 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400285 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400286 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400287 },
288 "infra_step": true,
289 "name": "rm /sdcard/revenge_of_the_skiabot/images"
290 },
291 {
292 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500293 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400294 "shell",
295 "mkdir",
296 "-p",
297 "/sdcard/revenge_of_the_skiabot/images"
298 ],
299 "cwd": "[START_DIR]/skia",
300 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400301 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400302 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400303 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400304 },
305 "infra_step": true,
306 "name": "mkdir /sdcard/revenge_of_the_skiabot/images"
307 },
308 {
309 "cmd": [
310 "python",
311 "-u",
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500312 "\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['/usr/bin/adb.1.0.35', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400313 "[START_DIR]/skimage",
314 "/sdcard/revenge_of_the_skiabot/images"
315 ],
316 "env": {
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400317 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400318 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400319 },
320 "infra_step": true,
321 "name": "push [START_DIR]/skimage/* /sdcard/revenge_of_the_skiabot/images",
322 "~followup_annotations": [
323 "@@@STEP_LOG_LINE@python.inline@@@@",
324 "@@@STEP_LOG_LINE@python.inline@import os@@@",
325 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
326 "@@@STEP_LOG_LINE@python.inline@import sys@@@",
327 "@@@STEP_LOG_LINE@python.inline@host = sys.argv[1]@@@",
328 "@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
329 "@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
330 "@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
331 "@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
332 "@@@STEP_LOG_LINE@python.inline@ continue@@@",
333 "@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
334 "@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500335 "@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['/usr/bin/adb.1.0.35', 'push',@@@",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400336 "@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
337 "@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
338 "@@@STEP_LOG_END@python.inline@@@"
339 ]
340 },
341 {
342 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500343 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400344 "push",
345 "[START_DIR]/tmp/SK_IMAGE_VERSION",
346 "/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
347 ],
348 "cwd": "[START_DIR]/skia",
349 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400350 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400351 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400352 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400353 },
354 "infra_step": true,
355 "name": "push [START_DIR]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
356 },
357 {
358 "cmd": [
359 "python",
360 "-u",
361 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
362 "--json-output",
363 "/path/to/tmp/json",
364 "copy",
365 "[START_DIR]/skia/infra/bots/assets/svg/VERSION",
366 "/path/to/tmp/"
367 ],
368 "infra_step": true,
Ben Wagnerf20710e2018-03-19 16:52:37 -0400369 "name": "Get svg VERSION"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400370 },
371 {
372 "cmd": [
373 "python",
374 "-u",
375 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
376 "--json-output",
377 "/path/to/tmp/json",
378 "copy",
379 "42",
380 "[START_DIR]/tmp/SVG_VERSION"
381 ],
382 "infra_step": true,
383 "name": "write SVG_VERSION"
384 },
385 {
386 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500387 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400388 "shell",
389 "cat",
390 "/sdcard/revenge_of_the_skiabot/SVG_VERSION"
391 ],
392 "cwd": "[START_DIR]/skia",
393 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400394 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400395 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400396 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400397 },
398 "infra_step": true,
399 "name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
400 "stdout": "/path/to/tmp/"
401 },
402 {
403 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500404 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400405 "shell",
406 "rm",
407 "-f",
408 "/sdcard/revenge_of_the_skiabot/SVG_VERSION"
409 ],
410 "cwd": "[START_DIR]/skia",
411 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400412 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400413 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400414 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400415 },
416 "infra_step": true,
417 "name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
418 },
419 {
420 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500421 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400422 "shell",
423 "rm",
424 "-rf",
425 "/sdcard/revenge_of_the_skiabot/svgs"
426 ],
427 "cwd": "[START_DIR]/skia",
428 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400429 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400430 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400431 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400432 },
433 "infra_step": true,
434 "name": "rm /sdcard/revenge_of_the_skiabot/svgs"
435 },
436 {
437 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500438 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400439 "shell",
440 "mkdir",
441 "-p",
442 "/sdcard/revenge_of_the_skiabot/svgs"
443 ],
444 "cwd": "[START_DIR]/skia",
445 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400446 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400447 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400448 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400449 },
450 "infra_step": true,
451 "name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
452 },
453 {
454 "cmd": [
455 "python",
456 "-u",
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500457 "\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['/usr/bin/adb.1.0.35', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400458 "[START_DIR]/svg",
459 "/sdcard/revenge_of_the_skiabot/svgs"
460 ],
461 "env": {
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400462 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400463 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400464 },
465 "infra_step": true,
466 "name": "push [START_DIR]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
467 "~followup_annotations": [
468 "@@@STEP_LOG_LINE@python.inline@@@@",
469 "@@@STEP_LOG_LINE@python.inline@import os@@@",
470 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
471 "@@@STEP_LOG_LINE@python.inline@import sys@@@",
472 "@@@STEP_LOG_LINE@python.inline@host = sys.argv[1]@@@",
473 "@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
474 "@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
475 "@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
476 "@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
477 "@@@STEP_LOG_LINE@python.inline@ continue@@@",
478 "@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
479 "@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500480 "@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['/usr/bin/adb.1.0.35', 'push',@@@",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400481 "@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
482 "@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
483 "@@@STEP_LOG_END@python.inline@@@"
484 ]
485 },
486 {
487 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500488 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400489 "push",
490 "[START_DIR]/tmp/SVG_VERSION",
491 "/sdcard/revenge_of_the_skiabot/SVG_VERSION"
492 ],
493 "cwd": "[START_DIR]/skia",
494 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400495 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400496 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400497 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400498 },
499 "infra_step": true,
500 "name": "push [START_DIR]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
501 },
502 {
503 "cmd": [
Eric Boren9599b0f2018-04-17 15:55:57 -0400504 "python",
505 "-u",
506 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
507 "--json-output",
508 "/path/to/tmp/json",
509 "rmtree",
510 "[START_DIR]/test"
511 ],
512 "infra_step": true,
513 "name": "rmtree test"
514 },
515 {
516 "cmd": [
517 "python",
518 "-u",
519 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
520 "--json-output",
521 "/path/to/tmp/json",
522 "ensure-directory",
523 "--mode",
524 "0777",
525 "[START_DIR]/test"
526 ],
527 "infra_step": true,
528 "name": "makedirs test"
529 },
530 {
531 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500532 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400533 "shell",
534 "rm",
535 "-rf",
536 "/sdcard/revenge_of_the_skiabot/dm_out"
537 ],
538 "cwd": "[START_DIR]/skia",
539 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400540 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400541 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400542 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400543 },
544 "infra_step": true,
545 "name": "rm /sdcard/revenge_of_the_skiabot/dm_out"
546 },
547 {
548 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500549 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400550 "shell",
551 "mkdir",
552 "-p",
553 "/sdcard/revenge_of_the_skiabot/dm_out"
554 ],
555 "cwd": "[START_DIR]/skia",
556 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400557 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400558 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400559 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400560 },
561 "infra_step": true,
562 "name": "mkdir /sdcard/revenge_of_the_skiabot/dm_out"
563 },
564 {
565 "cmd": [
566 "python",
567 "-u",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400568 "\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://storage.googleapis.com/skia-infra-gm/hash_files/gold-prod-hashes.txt'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
569 "[START_DIR]/tmp/uninteresting_hashes.txt"
570 ],
571 "env": {
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400572 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400573 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400574 },
575 "infra_step": true,
576 "name": "get uninteresting hashes",
577 "~followup_annotations": [
578 "@@@STEP_LOG_LINE@python.inline@@@@",
579 "@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
580 "@@@STEP_LOG_LINE@python.inline@import math@@@",
581 "@@@STEP_LOG_LINE@python.inline@import socket@@@",
582 "@@@STEP_LOG_LINE@python.inline@import sys@@@",
583 "@@@STEP_LOG_LINE@python.inline@import time@@@",
584 "@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
585 "@@@STEP_LOG_LINE@python.inline@@@@",
586 "@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://storage.googleapis.com/skia-infra-gm/hash_files/gold-prod-hashes.txt'@@@",
587 "@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
588 "@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
589 "@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
590 "@@@STEP_LOG_LINE@python.inline@@@@",
591 "@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
592 "@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
593 "@@@STEP_LOG_LINE@python.inline@ try:@@@",
594 "@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
595 "@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
596 "@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
597 "@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
598 "@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
599 "@@@STEP_LOG_LINE@python.inline@ break@@@",
600 "@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
601 "@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
602 "@@@STEP_LOG_LINE@python.inline@ print e@@@",
603 "@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
604 "@@@STEP_LOG_LINE@python.inline@ raise@@@",
605 "@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
606 "@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
607 "@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
608 "@@@STEP_LOG_END@python.inline@@@"
609 ]
610 },
611 {
612 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500613 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400614 "push",
615 "[START_DIR]/tmp/uninteresting_hashes.txt",
616 "/sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
617 ],
618 "cwd": "[START_DIR]/skia",
619 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400620 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400621 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400622 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400623 },
624 "infra_step": true,
625 "name": "push [START_DIR]/tmp/uninteresting_hashes.txt /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
626 },
627 {
628 "cmd": [
629 "python",
630 "-u",
631 "import os\nprint os.environ.get('SWARMING_BOT_ID', '')\n"
632 ],
633 "name": "get swarming bot id",
634 "stdout": "/path/to/tmp/",
635 "~followup_annotations": [
636 "@@@STEP_LOG_LINE@python.inline@import os@@@",
637 "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_BOT_ID', '')@@@",
638 "@@@STEP_LOG_END@python.inline@@@"
639 ]
640 },
641 {
642 "cmd": [
643 "python",
644 "-u",
645 "import os\nprint os.environ.get('SWARMING_TASK_ID', '')\n"
646 ],
647 "name": "get swarming task id",
648 "stdout": "/path/to/tmp/",
649 "~followup_annotations": [
650 "@@@STEP_LOG_LINE@python.inline@import os@@@",
651 "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_TASK_ID', '')@@@",
652 "@@@STEP_LOG_END@python.inline@@@"
653 ]
654 },
655 {
656 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500657 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400658 "push",
Eric Boren322a8592018-06-01 10:08:53 -0400659 "[START_DIR]/build/dm",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400660 "/data/local/tmp/"
661 ],
662 "cwd": "[START_DIR]/skia",
663 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400664 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400665 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400666 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400667 },
668 "infra_step": true,
669 "name": "push dm"
670 },
671 {
672 "cmd": [
673 "python",
674 "-u",
675 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
676 "--json-output",
677 "/path/to/tmp/json",
678 "copy",
Brian Osman5e117772018-06-20 14:53:06 -0400679 "set -x; /data/local/tmp/dm --resourcePath /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/dm --colorImages /sdcard/revenge_of_the_skiabot/images/colorspace --nameByHash --properties gitHash abc123 builder Test-Android-Clang-Nexus7-GPU-Tegra3-arm-Debug-All-Android buildbucket_build_id 123454321 swarming_bot_id \"\" swarming_task_id \"\" --svgs /sdcard/revenge_of_the_skiabot/svgs --key arch arm compiler Clang configuration Debug cpu_or_gpu GPU cpu_or_gpu_value Tegra3 extra_config Android model Nexus7 os Android --uninterestingHashesFile /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt --writePath /sdcard/revenge_of_the_skiabot/dm_out --dont_write pdf --nocpu --config gles glesdft glessrgb glesesrgb --src tests gm image colorImage svg --blacklist _ svg _ svgparse_ glessrgb image _ _ _ test _ GrShape _ test _ SRGBReadWritePixels _ test _ SRGBMipMap _ image _ interlaced1.png _ image _ interlaced2.png _ image _ interlaced3.png _ image _ .arw _ image _ .cr2 _ image _ .dng _ image _ .nef _ image _ .nrw _ image _ .orf _ image _ .raf _ image _ .rw2 _ image _ .pef _ image _ .srw _ image _ .ARW _ image _ .CR2 _ image _ .DNG _ image _ .NEF _ image _ .NRW _ image _ .ORF _ image _ .RAF _ image _ .RW2 _ image _ .PEF _ image _ .SRW --nonativeFonts --verbose; echo $? >/data/local/tmp/rc",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400680 "[START_DIR]/tmp/dm.sh"
681 ],
682 "env": {
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400683 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400684 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400685 },
686 "infra_step": true,
687 "name": "write dm.sh"
688 },
689 {
690 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500691 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400692 "push",
693 "[START_DIR]/tmp/dm.sh",
694 "/data/local/tmp/"
695 ],
696 "cwd": "[START_DIR]/skia",
697 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400698 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400699 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400700 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400701 },
702 "infra_step": true,
703 "name": "push dm.sh"
704 },
705 {
706 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500707 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400708 "logcat",
709 "-c"
710 ],
711 "cwd": "[START_DIR]/skia",
712 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400713 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400714 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400715 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400716 },
717 "infra_step": true,
718 "name": "clear log"
719 },
720 {
721 "cmd": [
722 "python",
723 "-u",
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500724 "\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['/usr/bin/adb.1.0.35', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['/usr/bin/adb.1.0.35', 'shell', 'cat',\n bin_dir + 'rc'])))\nexcept ValueError:\n print \"Couldn't read the return code. Probably killed for OOM.\"\n sys.exit(1)\n",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400725 "/data/local/tmp/",
726 "dm.sh"
727 ],
728 "env": {
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400729 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400730 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400731 },
732 "name": "dm",
733 "~followup_annotations": [
734 "@@@STEP_LOG_LINE@python.inline@@@@",
735 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
736 "@@@STEP_LOG_LINE@python.inline@import sys@@@",
737 "@@@STEP_LOG_LINE@python.inline@bin_dir = sys.argv[1]@@@",
738 "@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500739 "@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['/usr/bin/adb.1.0.35', 'shell', 'sh', bin_dir + sh])@@@",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400740 "@@@STEP_LOG_LINE@python.inline@try:@@@",
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500741 "@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['/usr/bin/adb.1.0.35', 'shell', 'cat',@@@",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400742 "@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
743 "@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
744 "@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
745 "@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
746 "@@@STEP_LOG_END@python.inline@@@"
747 ]
748 },
749 {
Eric Borencd0a98c2018-06-20 13:23:16 -0400750 "cmd": [],
751 "name": "adb pull"
752 },
753 {
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400754 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500755 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400756 "pull",
757 "/sdcard/revenge_of_the_skiabot/dm_out",
Eric Borencd0a98c2018-06-20 13:23:16 -0400758 "[TMP_BASE]/adb_pull_tmp_1"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400759 ],
760 "cwd": "[START_DIR]/skia",
761 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400762 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400763 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400764 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400765 },
766 "infra_step": true,
Eric Borencd0a98c2018-06-20 13:23:16 -0400767 "name": "adb pull.pull /sdcard/revenge_of_the_skiabot/dm_out",
768 "~followup_annotations": [
769 "@@@STEP_NEST_LEVEL@1@@@"
770 ]
771 },
772 {
773 "cmd": [
774 "python",
775 "-u",
776 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
777 "--json-output",
778 "/path/to/tmp/json",
779 "glob",
780 "[TMP_BASE]/adb_pull_tmp_1",
781 "dm_out/*"
782 ],
783 "infra_step": true,
784 "name": "adb pull.list pulled files",
785 "stdout": "/path/to/tmp/",
786 "~followup_annotations": [
787 "@@@STEP_NEST_LEVEL@1@@@",
788 "@@@STEP_LOG_LINE@glob@[TMP_BASE]/adb_pull_tmp_1/1.png@@@",
789 "@@@STEP_LOG_LINE@glob@[TMP_BASE]/adb_pull_tmp_1/2.png@@@",
790 "@@@STEP_LOG_END@glob@@@"
791 ]
792 },
793 {
794 "cmd": [
795 "python",
796 "-u",
797 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
798 "--json-output",
799 "/path/to/tmp/json",
800 "copy",
801 "[TMP_BASE]/adb_pull_tmp_1/1.png",
802 "[START_DIR]/[SWARM_OUT_DIR]"
803 ],
804 "infra_step": true,
805 "name": "adb pull.copy 1.png",
806 "~followup_annotations": [
807 "@@@STEP_NEST_LEVEL@1@@@"
808 ]
809 },
810 {
811 "cmd": [
812 "python",
813 "-u",
814 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
815 "--json-output",
816 "/path/to/tmp/json",
817 "copy",
818 "[TMP_BASE]/adb_pull_tmp_1/2.png",
819 "[START_DIR]/[SWARM_OUT_DIR]"
820 ],
821 "infra_step": true,
822 "name": "adb pull.copy 2.png",
823 "~followup_annotations": [
824 "@@@STEP_NEST_LEVEL@1@@@"
825 ]
826 },
827 {
828 "cmd": [
829 "python",
830 "-u",
831 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
832 "--json-output",
833 "/path/to/tmp/json",
834 "rmtree",
835 "[TMP_BASE]/adb_pull_tmp_1"
836 ],
837 "infra_step": true,
838 "name": "adb pull.rmtree [TMP_BASE]/adb_pull_tmp_1",
839 "~followup_annotations": [
840 "@@@STEP_NEST_LEVEL@1@@@"
841 ]
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400842 },
843 {
844 "cmd": [
845 "python",
846 "-u",
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500847 "\nimport os\nimport subprocess\nimport sys\nout = sys.argv[1]\nlog = subprocess.check_output(['/usr/bin/adb.1.0.35', 'logcat', '-d'])\nfor line in log.split('\\n'):\n tokens = line.split()\n if len(tokens) == 11 and tokens[-7] == 'F' and tokens[-3] == 'pc':\n addr, path = tokens[-2:]\n local = os.path.join(out, os.path.basename(path))\n if os.path.exists(local):\n sym = subprocess.check_output(['addr2line', '-Cfpe', local, addr])\n line = line.replace(addr, addr + ' ' + sym.strip())\n print line\n",
Eric Boren322a8592018-06-01 10:08:53 -0400848 "[START_DIR]/build"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400849 ],
850 "env": {
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400851 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400852 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400853 },
854 "infra_step": true,
855 "name": "dump log",
856 "timeout": 300,
857 "~followup_annotations": [
858 "@@@STEP_LOG_LINE@python.inline@@@@",
859 "@@@STEP_LOG_LINE@python.inline@import os@@@",
860 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
861 "@@@STEP_LOG_LINE@python.inline@import sys@@@",
862 "@@@STEP_LOG_LINE@python.inline@out = sys.argv[1]@@@",
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500863 "@@@STEP_LOG_LINE@python.inline@log = subprocess.check_output(['/usr/bin/adb.1.0.35', 'logcat', '-d'])@@@",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400864 "@@@STEP_LOG_LINE@python.inline@for line in log.split('\\n'):@@@",
865 "@@@STEP_LOG_LINE@python.inline@ tokens = line.split()@@@",
866 "@@@STEP_LOG_LINE@python.inline@ if len(tokens) == 11 and tokens[-7] == 'F' and tokens[-3] == 'pc':@@@",
867 "@@@STEP_LOG_LINE@python.inline@ addr, path = tokens[-2:]@@@",
868 "@@@STEP_LOG_LINE@python.inline@ local = os.path.join(out, os.path.basename(path))@@@",
869 "@@@STEP_LOG_LINE@python.inline@ if os.path.exists(local):@@@",
870 "@@@STEP_LOG_LINE@python.inline@ sym = subprocess.check_output(['addr2line', '-Cfpe', local, addr])@@@",
871 "@@@STEP_LOG_LINE@python.inline@ line = line.replace(addr, addr + ' ' + sym.strip())@@@",
872 "@@@STEP_LOG_LINE@python.inline@ print line@@@",
873 "@@@STEP_LOG_END@python.inline@@@"
874 ]
875 },
876 {
877 "cmd": [
Kevin Lubick4fd283e2017-12-07 11:19:31 -0500878 "/usr/bin/adb.1.0.35",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400879 "kill-server"
880 ],
881 "cwd": "[START_DIR]/skia",
882 "env": {
Kevin Lubick7673f3b2018-05-17 14:35:43 -0400883 "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400884 "CHROME_HEADLESS": "1",
Eric Boren0f690102018-05-15 15:04:58 -0400885 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400886 },
887 "infra_step": true,
888 "name": "kill adb server"
889 },
890 {
891 "name": "$result",
892 "recipe_result": null,
Kevin Lubickd1bbd5f2017-11-21 16:47:16 -0500893 "status_code": 0
Kevin Lubickbd27d1d2017-10-13 08:01:49 -0400894 }
895]