1*c8dee2aaSAndroid Build Coastguard Worker[
2*c8dee2aaSAndroid Build Coastguard Worker  {
3*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
4*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
5*c8dee2aaSAndroid Build Coastguard Worker      "-u",
6*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
7*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
8*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
9*c8dee2aaSAndroid Build Coastguard Worker      "ensure-directory",
10*c8dee2aaSAndroid Build Coastguard Worker      "--mode",
11*c8dee2aaSAndroid Build Coastguard Worker      "0o777",
12*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/tmp"
13*c8dee2aaSAndroid Build Coastguard Worker    ],
14*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
15*c8dee2aaSAndroid Build Coastguard Worker    "name": "makedirs tmp_dir"
16*c8dee2aaSAndroid Build Coastguard Worker  },
17*c8dee2aaSAndroid Build Coastguard Worker  {
18*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
19*c8dee2aaSAndroid Build Coastguard Worker      "python3",
20*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::vars]/resources/get_env_var.py",
21*c8dee2aaSAndroid Build Coastguard Worker      "SWARMING_BOT_ID"
22*c8dee2aaSAndroid Build Coastguard Worker    ],
23*c8dee2aaSAndroid Build Coastguard Worker    "name": "get swarming bot id"
24*c8dee2aaSAndroid Build Coastguard Worker  },
25*c8dee2aaSAndroid Build Coastguard Worker  {
26*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
27*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
28*c8dee2aaSAndroid Build Coastguard Worker      "shell",
29*c8dee2aaSAndroid Build Coastguard Worker      "mkdir",
30*c8dee2aaSAndroid Build Coastguard Worker      "-p",
31*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/resources"
32*c8dee2aaSAndroid Build Coastguard Worker    ],
33*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
34*c8dee2aaSAndroid Build Coastguard Worker    "env": {
35*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
36*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
37*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
38*c8dee2aaSAndroid Build Coastguard Worker    },
39*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
40*c8dee2aaSAndroid Build Coastguard Worker    "name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
41*c8dee2aaSAndroid Build Coastguard Worker  },
42*c8dee2aaSAndroid Build Coastguard Worker  {
43*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
44*c8dee2aaSAndroid Build Coastguard Worker      "python3",
45*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/set_cpu_online.py",
46*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
47*c8dee2aaSAndroid Build Coastguard Worker      "0",
48*c8dee2aaSAndroid Build Coastguard Worker      "1"
49*c8dee2aaSAndroid Build Coastguard Worker    ],
50*c8dee2aaSAndroid Build Coastguard Worker    "env": {
51*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
52*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
53*c8dee2aaSAndroid Build Coastguard Worker    },
54*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
55*c8dee2aaSAndroid Build Coastguard Worker    "name": "Enabling CPU 0",
56*c8dee2aaSAndroid Build Coastguard Worker    "timeout": 30
57*c8dee2aaSAndroid Build Coastguard Worker  },
58*c8dee2aaSAndroid Build Coastguard Worker  {
59*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
60*c8dee2aaSAndroid Build Coastguard Worker      "python3",
61*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/set_cpu_online.py",
62*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
63*c8dee2aaSAndroid Build Coastguard Worker      "1",
64*c8dee2aaSAndroid Build Coastguard Worker      "1"
65*c8dee2aaSAndroid Build Coastguard Worker    ],
66*c8dee2aaSAndroid Build Coastguard Worker    "env": {
67*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
68*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
69*c8dee2aaSAndroid Build Coastguard Worker    },
70*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
71*c8dee2aaSAndroid Build Coastguard Worker    "name": "Enabling CPU 1",
72*c8dee2aaSAndroid Build Coastguard Worker    "timeout": 30
73*c8dee2aaSAndroid Build Coastguard Worker  },
74*c8dee2aaSAndroid Build Coastguard Worker  {
75*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
76*c8dee2aaSAndroid Build Coastguard Worker      "python3",
77*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/set_cpu_online.py",
78*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
79*c8dee2aaSAndroid Build Coastguard Worker      "2",
80*c8dee2aaSAndroid Build Coastguard Worker      "1"
81*c8dee2aaSAndroid Build Coastguard Worker    ],
82*c8dee2aaSAndroid Build Coastguard Worker    "env": {
83*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
84*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
85*c8dee2aaSAndroid Build Coastguard Worker    },
86*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
87*c8dee2aaSAndroid Build Coastguard Worker    "name": "Enabling CPU 2",
88*c8dee2aaSAndroid Build Coastguard Worker    "timeout": 30
89*c8dee2aaSAndroid Build Coastguard Worker  },
90*c8dee2aaSAndroid Build Coastguard Worker  {
91*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
92*c8dee2aaSAndroid Build Coastguard Worker      "python3",
93*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/set_cpu_online.py",
94*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
95*c8dee2aaSAndroid Build Coastguard Worker      "3",
96*c8dee2aaSAndroid Build Coastguard Worker      "1"
97*c8dee2aaSAndroid Build Coastguard Worker    ],
98*c8dee2aaSAndroid Build Coastguard Worker    "env": {
99*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
100*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
101*c8dee2aaSAndroid Build Coastguard Worker    },
102*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
103*c8dee2aaSAndroid Build Coastguard Worker    "name": "Enabling CPU 3",
104*c8dee2aaSAndroid Build Coastguard Worker    "timeout": 30
105*c8dee2aaSAndroid Build Coastguard Worker  },
106*c8dee2aaSAndroid Build Coastguard Worker  {
107*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
108*c8dee2aaSAndroid Build Coastguard Worker      "python3",
109*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/set_cpu_scaling_governor.py",
110*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
111*c8dee2aaSAndroid Build Coastguard Worker      "4",
112*c8dee2aaSAndroid Build Coastguard Worker      "ondemand"
113*c8dee2aaSAndroid Build Coastguard Worker    ],
114*c8dee2aaSAndroid Build Coastguard Worker    "env": {
115*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
116*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
117*c8dee2aaSAndroid Build Coastguard Worker    },
118*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
119*c8dee2aaSAndroid Build Coastguard Worker    "name": "Set CPU 4's governor to ondemand",
120*c8dee2aaSAndroid Build Coastguard Worker    "timeout": 30
121*c8dee2aaSAndroid Build Coastguard Worker  },
122*c8dee2aaSAndroid Build Coastguard Worker  {
123*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
124*c8dee2aaSAndroid Build Coastguard Worker      "python3",
125*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/set_cpu_scaling_governor.py",
126*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
127*c8dee2aaSAndroid Build Coastguard Worker      "0",
128*c8dee2aaSAndroid Build Coastguard Worker      "ondemand"
129*c8dee2aaSAndroid Build Coastguard Worker    ],
130*c8dee2aaSAndroid Build Coastguard Worker    "env": {
131*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
132*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
133*c8dee2aaSAndroid Build Coastguard Worker    },
134*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
135*c8dee2aaSAndroid Build Coastguard Worker    "name": "Set CPU 0's governor to ondemand",
136*c8dee2aaSAndroid Build Coastguard Worker    "timeout": 30
137*c8dee2aaSAndroid Build Coastguard Worker  },
138*c8dee2aaSAndroid Build Coastguard Worker  {
139*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
140*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
141*c8dee2aaSAndroid Build Coastguard Worker      "push",
142*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/build/dm",
143*c8dee2aaSAndroid Build Coastguard Worker      "/data/local/tmp/"
144*c8dee2aaSAndroid Build Coastguard Worker    ],
145*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
146*c8dee2aaSAndroid Build Coastguard Worker    "env": {
147*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
148*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
149*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
150*c8dee2aaSAndroid Build Coastguard Worker    },
151*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
152*c8dee2aaSAndroid Build Coastguard Worker    "name": "push dm"
153*c8dee2aaSAndroid Build Coastguard Worker  },
154*c8dee2aaSAndroid Build Coastguard Worker  {
155*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
156*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
157*c8dee2aaSAndroid Build Coastguard Worker      "-u",
158*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
159*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
160*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
161*c8dee2aaSAndroid Build Coastguard Worker      "glob",
162*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/skia/resources",
163*c8dee2aaSAndroid Build Coastguard Worker      "*"
164*c8dee2aaSAndroid Build Coastguard Worker    ],
165*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
166*c8dee2aaSAndroid Build Coastguard Worker    "name": "ls [START_DIR]/skia/resources/*",
167*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
168*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@glob@[START_DIR]/skia/resources/bar.jpg@@@",
169*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@glob@[START_DIR]/skia/resources/foo.png@@@",
170*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_END@glob@@@"
171*c8dee2aaSAndroid Build Coastguard Worker    ]
172*c8dee2aaSAndroid Build Coastguard Worker  },
173*c8dee2aaSAndroid Build Coastguard Worker  {
174*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
175*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
176*c8dee2aaSAndroid Build Coastguard Worker      "push",
177*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/skia/resources/bar.jpg",
178*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/skia/resources/foo.png",
179*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/resources"
180*c8dee2aaSAndroid Build Coastguard Worker    ],
181*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
182*c8dee2aaSAndroid Build Coastguard Worker    "env": {
183*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
184*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
185*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
186*c8dee2aaSAndroid Build Coastguard Worker    },
187*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
188*c8dee2aaSAndroid Build Coastguard Worker    "name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources"
189*c8dee2aaSAndroid Build Coastguard Worker  },
190*c8dee2aaSAndroid Build Coastguard Worker  {
191*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
192*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
193*c8dee2aaSAndroid Build Coastguard Worker      "-u",
194*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
195*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
196*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
197*c8dee2aaSAndroid Build Coastguard Worker      "copy",
198*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/skia/infra/bots/assets/skp/VERSION",
199*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/"
200*c8dee2aaSAndroid Build Coastguard Worker    ],
201*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
202*c8dee2aaSAndroid Build Coastguard Worker    "name": "Get skp VERSION",
203*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
204*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@VERSION@42@@@",
205*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_END@VERSION@@@"
206*c8dee2aaSAndroid Build Coastguard Worker    ]
207*c8dee2aaSAndroid Build Coastguard Worker  },
208*c8dee2aaSAndroid Build Coastguard Worker  {
209*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
210*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
211*c8dee2aaSAndroid Build Coastguard Worker      "-u",
212*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
213*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
214*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
215*c8dee2aaSAndroid Build Coastguard Worker      "copy",
216*c8dee2aaSAndroid Build Coastguard Worker      "42",
217*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/tmp/SKP_VERSION"
218*c8dee2aaSAndroid Build Coastguard Worker    ],
219*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
220*c8dee2aaSAndroid Build Coastguard Worker    "name": "write SKP_VERSION",
221*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
222*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@SKP_VERSION@42@@@",
223*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_END@SKP_VERSION@@@"
224*c8dee2aaSAndroid Build Coastguard Worker    ]
225*c8dee2aaSAndroid Build Coastguard Worker  },
226*c8dee2aaSAndroid Build Coastguard Worker  {
227*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
228*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
229*c8dee2aaSAndroid Build Coastguard Worker      "shell",
230*c8dee2aaSAndroid Build Coastguard Worker      "test",
231*c8dee2aaSAndroid Build Coastguard Worker      "-f",
232*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/SKP_VERSION"
233*c8dee2aaSAndroid Build Coastguard Worker    ],
234*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
235*c8dee2aaSAndroid Build Coastguard Worker    "env": {
236*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
237*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
238*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
239*c8dee2aaSAndroid Build Coastguard Worker    },
240*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
241*c8dee2aaSAndroid Build Coastguard Worker    "name": "check if /sdcard/revenge_of_the_skiabot/SKP_VERSION exists"
242*c8dee2aaSAndroid Build Coastguard Worker  },
243*c8dee2aaSAndroid Build Coastguard Worker  {
244*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
245*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
246*c8dee2aaSAndroid Build Coastguard Worker      "shell",
247*c8dee2aaSAndroid Build Coastguard Worker      "cat",
248*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/SKP_VERSION"
249*c8dee2aaSAndroid Build Coastguard Worker    ],
250*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
251*c8dee2aaSAndroid Build Coastguard Worker    "env": {
252*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
253*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
254*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
255*c8dee2aaSAndroid Build Coastguard Worker    },
256*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
257*c8dee2aaSAndroid Build Coastguard Worker    "name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION"
258*c8dee2aaSAndroid Build Coastguard Worker  },
259*c8dee2aaSAndroid Build Coastguard Worker  {
260*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
261*c8dee2aaSAndroid Build Coastguard Worker      "python3",
262*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/remove_file_on_device.py",
263*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
264*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/SKP_VERSION"
265*c8dee2aaSAndroid Build Coastguard Worker    ],
266*c8dee2aaSAndroid Build Coastguard Worker    "env": {
267*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
268*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
269*c8dee2aaSAndroid Build Coastguard Worker    },
270*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
271*c8dee2aaSAndroid Build Coastguard Worker    "name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
272*c8dee2aaSAndroid Build Coastguard Worker  },
273*c8dee2aaSAndroid Build Coastguard Worker  {
274*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
275*c8dee2aaSAndroid Build Coastguard Worker      "python3",
276*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/remove_file_on_device.py",
277*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
278*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/skps"
279*c8dee2aaSAndroid Build Coastguard Worker    ],
280*c8dee2aaSAndroid Build Coastguard Worker    "env": {
281*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
282*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
283*c8dee2aaSAndroid Build Coastguard Worker    },
284*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
285*c8dee2aaSAndroid Build Coastguard Worker    "name": "rm /sdcard/revenge_of_the_skiabot/skps"
286*c8dee2aaSAndroid Build Coastguard Worker  },
287*c8dee2aaSAndroid Build Coastguard Worker  {
288*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
289*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
290*c8dee2aaSAndroid Build Coastguard Worker      "shell",
291*c8dee2aaSAndroid Build Coastguard Worker      "mkdir",
292*c8dee2aaSAndroid Build Coastguard Worker      "-p",
293*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/skps"
294*c8dee2aaSAndroid Build Coastguard Worker    ],
295*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
296*c8dee2aaSAndroid Build Coastguard Worker    "env": {
297*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
298*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
299*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
300*c8dee2aaSAndroid Build Coastguard Worker    },
301*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
302*c8dee2aaSAndroid Build Coastguard Worker    "name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
303*c8dee2aaSAndroid Build Coastguard Worker  },
304*c8dee2aaSAndroid Build Coastguard Worker  {
305*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
306*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
307*c8dee2aaSAndroid Build Coastguard Worker      "-u",
308*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
309*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
310*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
311*c8dee2aaSAndroid Build Coastguard Worker      "glob",
312*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/skp",
313*c8dee2aaSAndroid Build Coastguard Worker      "*"
314*c8dee2aaSAndroid Build Coastguard Worker    ],
315*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
316*c8dee2aaSAndroid Build Coastguard Worker    "name": "ls [START_DIR]/skp/*",
317*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
318*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@glob@[START_DIR]/skp/bar.jpg@@@",
319*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@glob@[START_DIR]/skp/foo.png@@@",
320*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_END@glob@@@"
321*c8dee2aaSAndroid Build Coastguard Worker    ]
322*c8dee2aaSAndroid Build Coastguard Worker  },
323*c8dee2aaSAndroid Build Coastguard Worker  {
324*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
325*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
326*c8dee2aaSAndroid Build Coastguard Worker      "push",
327*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/skp/bar.jpg",
328*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/skp/foo.png",
329*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/skps"
330*c8dee2aaSAndroid Build Coastguard Worker    ],
331*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
332*c8dee2aaSAndroid Build Coastguard Worker    "env": {
333*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
334*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
335*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
336*c8dee2aaSAndroid Build Coastguard Worker    },
337*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
338*c8dee2aaSAndroid Build Coastguard Worker    "name": "push [START_DIR]/skp/* /sdcard/revenge_of_the_skiabot/skps"
339*c8dee2aaSAndroid Build Coastguard Worker  },
340*c8dee2aaSAndroid Build Coastguard Worker  {
341*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
342*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
343*c8dee2aaSAndroid Build Coastguard Worker      "push",
344*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/tmp/SKP_VERSION",
345*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/SKP_VERSION"
346*c8dee2aaSAndroid Build Coastguard Worker    ],
347*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
348*c8dee2aaSAndroid Build Coastguard Worker    "env": {
349*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
350*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
351*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
352*c8dee2aaSAndroid Build Coastguard Worker    },
353*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
354*c8dee2aaSAndroid Build Coastguard Worker    "name": "push [START_DIR]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
355*c8dee2aaSAndroid Build Coastguard Worker  },
356*c8dee2aaSAndroid Build Coastguard Worker  {
357*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
358*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
359*c8dee2aaSAndroid Build Coastguard Worker      "-u",
360*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
361*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
362*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
363*c8dee2aaSAndroid Build Coastguard Worker      "copy",
364*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/skia/infra/bots/assets/skimage/VERSION",
365*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/"
366*c8dee2aaSAndroid Build Coastguard Worker    ],
367*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
368*c8dee2aaSAndroid Build Coastguard Worker    "name": "Get skimage VERSION",
369*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
370*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@VERSION@42@@@",
371*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_END@VERSION@@@"
372*c8dee2aaSAndroid Build Coastguard Worker    ]
373*c8dee2aaSAndroid Build Coastguard Worker  },
374*c8dee2aaSAndroid Build Coastguard Worker  {
375*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
376*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
377*c8dee2aaSAndroid Build Coastguard Worker      "-u",
378*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
379*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
380*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
381*c8dee2aaSAndroid Build Coastguard Worker      "copy",
382*c8dee2aaSAndroid Build Coastguard Worker      "42",
383*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/tmp/SK_IMAGE_VERSION"
384*c8dee2aaSAndroid Build Coastguard Worker    ],
385*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
386*c8dee2aaSAndroid Build Coastguard Worker    "name": "write SK_IMAGE_VERSION",
387*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
388*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@SK_IMAGE_VERSION@42@@@",
389*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_END@SK_IMAGE_VERSION@@@"
390*c8dee2aaSAndroid Build Coastguard Worker    ]
391*c8dee2aaSAndroid Build Coastguard Worker  },
392*c8dee2aaSAndroid Build Coastguard Worker  {
393*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
394*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
395*c8dee2aaSAndroid Build Coastguard Worker      "shell",
396*c8dee2aaSAndroid Build Coastguard Worker      "test",
397*c8dee2aaSAndroid Build Coastguard Worker      "-f",
398*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
399*c8dee2aaSAndroid Build Coastguard Worker    ],
400*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
401*c8dee2aaSAndroid Build Coastguard Worker    "env": {
402*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
403*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
404*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
405*c8dee2aaSAndroid Build Coastguard Worker    },
406*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
407*c8dee2aaSAndroid Build Coastguard Worker    "name": "check if /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION exists"
408*c8dee2aaSAndroid Build Coastguard Worker  },
409*c8dee2aaSAndroid Build Coastguard Worker  {
410*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
411*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
412*c8dee2aaSAndroid Build Coastguard Worker      "shell",
413*c8dee2aaSAndroid Build Coastguard Worker      "cat",
414*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
415*c8dee2aaSAndroid Build Coastguard Worker    ],
416*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
417*c8dee2aaSAndroid Build Coastguard Worker    "env": {
418*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
419*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
420*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
421*c8dee2aaSAndroid Build Coastguard Worker    },
422*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
423*c8dee2aaSAndroid Build Coastguard Worker    "name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
424*c8dee2aaSAndroid Build Coastguard Worker  },
425*c8dee2aaSAndroid Build Coastguard Worker  {
426*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
427*c8dee2aaSAndroid Build Coastguard Worker      "python3",
428*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/remove_file_on_device.py",
429*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
430*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
431*c8dee2aaSAndroid Build Coastguard Worker    ],
432*c8dee2aaSAndroid Build Coastguard Worker    "env": {
433*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
434*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
435*c8dee2aaSAndroid Build Coastguard Worker    },
436*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
437*c8dee2aaSAndroid Build Coastguard Worker    "name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
438*c8dee2aaSAndroid Build Coastguard Worker  },
439*c8dee2aaSAndroid Build Coastguard Worker  {
440*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
441*c8dee2aaSAndroid Build Coastguard Worker      "python3",
442*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/remove_file_on_device.py",
443*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
444*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/images"
445*c8dee2aaSAndroid Build Coastguard Worker    ],
446*c8dee2aaSAndroid Build Coastguard Worker    "env": {
447*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
448*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
449*c8dee2aaSAndroid Build Coastguard Worker    },
450*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
451*c8dee2aaSAndroid Build Coastguard Worker    "name": "rm /sdcard/revenge_of_the_skiabot/images"
452*c8dee2aaSAndroid Build Coastguard Worker  },
453*c8dee2aaSAndroid Build Coastguard Worker  {
454*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
455*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
456*c8dee2aaSAndroid Build Coastguard Worker      "shell",
457*c8dee2aaSAndroid Build Coastguard Worker      "mkdir",
458*c8dee2aaSAndroid Build Coastguard Worker      "-p",
459*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/images"
460*c8dee2aaSAndroid Build Coastguard Worker    ],
461*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
462*c8dee2aaSAndroid Build Coastguard Worker    "env": {
463*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
464*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
465*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
466*c8dee2aaSAndroid Build Coastguard Worker    },
467*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
468*c8dee2aaSAndroid Build Coastguard Worker    "name": "mkdir /sdcard/revenge_of_the_skiabot/images"
469*c8dee2aaSAndroid Build Coastguard Worker  },
470*c8dee2aaSAndroid Build Coastguard Worker  {
471*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
472*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
473*c8dee2aaSAndroid Build Coastguard Worker      "-u",
474*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
475*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
476*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
477*c8dee2aaSAndroid Build Coastguard Worker      "glob",
478*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/skimage",
479*c8dee2aaSAndroid Build Coastguard Worker      "*"
480*c8dee2aaSAndroid Build Coastguard Worker    ],
481*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
482*c8dee2aaSAndroid Build Coastguard Worker    "name": "ls [START_DIR]/skimage/*",
483*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
484*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@glob@[START_DIR]/skimage/bar.jpg@@@",
485*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@glob@[START_DIR]/skimage/foo.png@@@",
486*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_END@glob@@@"
487*c8dee2aaSAndroid Build Coastguard Worker    ]
488*c8dee2aaSAndroid Build Coastguard Worker  },
489*c8dee2aaSAndroid Build Coastguard Worker  {
490*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
491*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
492*c8dee2aaSAndroid Build Coastguard Worker      "push",
493*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/skimage/bar.jpg",
494*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/skimage/foo.png",
495*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/images"
496*c8dee2aaSAndroid Build Coastguard Worker    ],
497*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
498*c8dee2aaSAndroid Build Coastguard Worker    "env": {
499*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
500*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
501*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
502*c8dee2aaSAndroid Build Coastguard Worker    },
503*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
504*c8dee2aaSAndroid Build Coastguard Worker    "name": "push [START_DIR]/skimage/* /sdcard/revenge_of_the_skiabot/images"
505*c8dee2aaSAndroid Build Coastguard Worker  },
506*c8dee2aaSAndroid Build Coastguard Worker  {
507*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
508*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
509*c8dee2aaSAndroid Build Coastguard Worker      "push",
510*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/tmp/SK_IMAGE_VERSION",
511*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
512*c8dee2aaSAndroid Build Coastguard Worker    ],
513*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
514*c8dee2aaSAndroid Build Coastguard Worker    "env": {
515*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
516*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
517*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
518*c8dee2aaSAndroid Build Coastguard Worker    },
519*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
520*c8dee2aaSAndroid Build Coastguard Worker    "name": "push [START_DIR]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
521*c8dee2aaSAndroid Build Coastguard Worker  },
522*c8dee2aaSAndroid Build Coastguard Worker  {
523*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
524*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
525*c8dee2aaSAndroid Build Coastguard Worker      "-u",
526*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
527*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
528*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
529*c8dee2aaSAndroid Build Coastguard Worker      "copy",
530*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/skia/infra/bots/assets/svg/VERSION",
531*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/"
532*c8dee2aaSAndroid Build Coastguard Worker    ],
533*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
534*c8dee2aaSAndroid Build Coastguard Worker    "name": "Get svg VERSION",
535*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
536*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@VERSION@42@@@",
537*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_END@VERSION@@@"
538*c8dee2aaSAndroid Build Coastguard Worker    ]
539*c8dee2aaSAndroid Build Coastguard Worker  },
540*c8dee2aaSAndroid Build Coastguard Worker  {
541*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
542*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
543*c8dee2aaSAndroid Build Coastguard Worker      "-u",
544*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
545*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
546*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
547*c8dee2aaSAndroid Build Coastguard Worker      "copy",
548*c8dee2aaSAndroid Build Coastguard Worker      "42",
549*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/tmp/SVG_VERSION"
550*c8dee2aaSAndroid Build Coastguard Worker    ],
551*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
552*c8dee2aaSAndroid Build Coastguard Worker    "name": "write SVG_VERSION",
553*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
554*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@SVG_VERSION@42@@@",
555*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_END@SVG_VERSION@@@"
556*c8dee2aaSAndroid Build Coastguard Worker    ]
557*c8dee2aaSAndroid Build Coastguard Worker  },
558*c8dee2aaSAndroid Build Coastguard Worker  {
559*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
560*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
561*c8dee2aaSAndroid Build Coastguard Worker      "shell",
562*c8dee2aaSAndroid Build Coastguard Worker      "test",
563*c8dee2aaSAndroid Build Coastguard Worker      "-f",
564*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/SVG_VERSION"
565*c8dee2aaSAndroid Build Coastguard Worker    ],
566*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
567*c8dee2aaSAndroid Build Coastguard Worker    "env": {
568*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
569*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
570*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
571*c8dee2aaSAndroid Build Coastguard Worker    },
572*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
573*c8dee2aaSAndroid Build Coastguard Worker    "name": "check if /sdcard/revenge_of_the_skiabot/SVG_VERSION exists"
574*c8dee2aaSAndroid Build Coastguard Worker  },
575*c8dee2aaSAndroid Build Coastguard Worker  {
576*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
577*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
578*c8dee2aaSAndroid Build Coastguard Worker      "shell",
579*c8dee2aaSAndroid Build Coastguard Worker      "cat",
580*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/SVG_VERSION"
581*c8dee2aaSAndroid Build Coastguard Worker    ],
582*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
583*c8dee2aaSAndroid Build Coastguard Worker    "env": {
584*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
585*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
586*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
587*c8dee2aaSAndroid Build Coastguard Worker    },
588*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
589*c8dee2aaSAndroid Build Coastguard Worker    "name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION"
590*c8dee2aaSAndroid Build Coastguard Worker  },
591*c8dee2aaSAndroid Build Coastguard Worker  {
592*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
593*c8dee2aaSAndroid Build Coastguard Worker      "python3",
594*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/remove_file_on_device.py",
595*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
596*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/SVG_VERSION"
597*c8dee2aaSAndroid Build Coastguard Worker    ],
598*c8dee2aaSAndroid Build Coastguard Worker    "env": {
599*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
600*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
601*c8dee2aaSAndroid Build Coastguard Worker    },
602*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
603*c8dee2aaSAndroid Build Coastguard Worker    "name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
604*c8dee2aaSAndroid Build Coastguard Worker  },
605*c8dee2aaSAndroid Build Coastguard Worker  {
606*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
607*c8dee2aaSAndroid Build Coastguard Worker      "python3",
608*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/remove_file_on_device.py",
609*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
610*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/svgs"
611*c8dee2aaSAndroid Build Coastguard Worker    ],
612*c8dee2aaSAndroid Build Coastguard Worker    "env": {
613*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
614*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
615*c8dee2aaSAndroid Build Coastguard Worker    },
616*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
617*c8dee2aaSAndroid Build Coastguard Worker    "name": "rm /sdcard/revenge_of_the_skiabot/svgs"
618*c8dee2aaSAndroid Build Coastguard Worker  },
619*c8dee2aaSAndroid Build Coastguard Worker  {
620*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
621*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
622*c8dee2aaSAndroid Build Coastguard Worker      "shell",
623*c8dee2aaSAndroid Build Coastguard Worker      "mkdir",
624*c8dee2aaSAndroid Build Coastguard Worker      "-p",
625*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/svgs"
626*c8dee2aaSAndroid Build Coastguard Worker    ],
627*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
628*c8dee2aaSAndroid Build Coastguard Worker    "env": {
629*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
630*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
631*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
632*c8dee2aaSAndroid Build Coastguard Worker    },
633*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
634*c8dee2aaSAndroid Build Coastguard Worker    "name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
635*c8dee2aaSAndroid Build Coastguard Worker  },
636*c8dee2aaSAndroid Build Coastguard Worker  {
637*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
638*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
639*c8dee2aaSAndroid Build Coastguard Worker      "-u",
640*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
641*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
642*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
643*c8dee2aaSAndroid Build Coastguard Worker      "glob",
644*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/svg",
645*c8dee2aaSAndroid Build Coastguard Worker      "*"
646*c8dee2aaSAndroid Build Coastguard Worker    ],
647*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
648*c8dee2aaSAndroid Build Coastguard Worker    "name": "ls [START_DIR]/svg/*",
649*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
650*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@glob@[START_DIR]/svg/bar.jpg@@@",
651*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@glob@[START_DIR]/svg/foo.png@@@",
652*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_END@glob@@@"
653*c8dee2aaSAndroid Build Coastguard Worker    ]
654*c8dee2aaSAndroid Build Coastguard Worker  },
655*c8dee2aaSAndroid Build Coastguard Worker  {
656*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
657*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
658*c8dee2aaSAndroid Build Coastguard Worker      "push",
659*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/svg/bar.jpg",
660*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/svg/foo.png",
661*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/svgs"
662*c8dee2aaSAndroid Build Coastguard Worker    ],
663*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
664*c8dee2aaSAndroid Build Coastguard Worker    "env": {
665*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
666*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
667*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
668*c8dee2aaSAndroid Build Coastguard Worker    },
669*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
670*c8dee2aaSAndroid Build Coastguard Worker    "name": "push [START_DIR]/svg/* /sdcard/revenge_of_the_skiabot/svgs"
671*c8dee2aaSAndroid Build Coastguard Worker  },
672*c8dee2aaSAndroid Build Coastguard Worker  {
673*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
674*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
675*c8dee2aaSAndroid Build Coastguard Worker      "push",
676*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/tmp/SVG_VERSION",
677*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/SVG_VERSION"
678*c8dee2aaSAndroid Build Coastguard Worker    ],
679*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
680*c8dee2aaSAndroid Build Coastguard Worker    "env": {
681*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
682*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
683*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
684*c8dee2aaSAndroid Build Coastguard Worker    },
685*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
686*c8dee2aaSAndroid Build Coastguard Worker    "name": "push [START_DIR]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
687*c8dee2aaSAndroid Build Coastguard Worker  },
688*c8dee2aaSAndroid Build Coastguard Worker  {
689*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
690*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
691*c8dee2aaSAndroid Build Coastguard Worker      "-u",
692*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
693*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
694*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
695*c8dee2aaSAndroid Build Coastguard Worker      "rmtree",
696*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/test"
697*c8dee2aaSAndroid Build Coastguard Worker    ],
698*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
699*c8dee2aaSAndroid Build Coastguard Worker    "name": "rmtree test"
700*c8dee2aaSAndroid Build Coastguard Worker  },
701*c8dee2aaSAndroid Build Coastguard Worker  {
702*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
703*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
704*c8dee2aaSAndroid Build Coastguard Worker      "-u",
705*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
706*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
707*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
708*c8dee2aaSAndroid Build Coastguard Worker      "ensure-directory",
709*c8dee2aaSAndroid Build Coastguard Worker      "--mode",
710*c8dee2aaSAndroid Build Coastguard Worker      "0o777",
711*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/test"
712*c8dee2aaSAndroid Build Coastguard Worker    ],
713*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
714*c8dee2aaSAndroid Build Coastguard Worker    "name": "makedirs test"
715*c8dee2aaSAndroid Build Coastguard Worker  },
716*c8dee2aaSAndroid Build Coastguard Worker  {
717*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
718*c8dee2aaSAndroid Build Coastguard Worker      "python3",
719*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/remove_file_on_device.py",
720*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
721*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/dm_out"
722*c8dee2aaSAndroid Build Coastguard Worker    ],
723*c8dee2aaSAndroid Build Coastguard Worker    "env": {
724*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
725*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
726*c8dee2aaSAndroid Build Coastguard Worker    },
727*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
728*c8dee2aaSAndroid Build Coastguard Worker    "name": "rm /sdcard/revenge_of_the_skiabot/dm_out"
729*c8dee2aaSAndroid Build Coastguard Worker  },
730*c8dee2aaSAndroid Build Coastguard Worker  {
731*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
732*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
733*c8dee2aaSAndroid Build Coastguard Worker      "shell",
734*c8dee2aaSAndroid Build Coastguard Worker      "mkdir",
735*c8dee2aaSAndroid Build Coastguard Worker      "-p",
736*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/dm_out"
737*c8dee2aaSAndroid Build Coastguard Worker    ],
738*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
739*c8dee2aaSAndroid Build Coastguard Worker    "env": {
740*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
741*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
742*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
743*c8dee2aaSAndroid Build Coastguard Worker    },
744*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
745*c8dee2aaSAndroid Build Coastguard Worker    "name": "mkdir /sdcard/revenge_of_the_skiabot/dm_out"
746*c8dee2aaSAndroid Build Coastguard Worker  },
747*c8dee2aaSAndroid Build Coastguard Worker  {
748*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
749*c8dee2aaSAndroid Build Coastguard Worker      "python3",
750*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::gold_upload]/resources/get_uninteresting_hashes.py",
751*c8dee2aaSAndroid Build Coastguard Worker      "https://example.com/hashes.txt",
752*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/tmp/uninteresting_hashes.txt"
753*c8dee2aaSAndroid Build Coastguard Worker    ],
754*c8dee2aaSAndroid Build Coastguard Worker    "env": {
755*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
756*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
757*c8dee2aaSAndroid Build Coastguard Worker    },
758*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
759*c8dee2aaSAndroid Build Coastguard Worker    "name": "get uninteresting hashes"
760*c8dee2aaSAndroid Build Coastguard Worker  },
761*c8dee2aaSAndroid Build Coastguard Worker  {
762*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
763*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
764*c8dee2aaSAndroid Build Coastguard Worker      "push",
765*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/tmp/uninteresting_hashes.txt",
766*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
767*c8dee2aaSAndroid Build Coastguard Worker    ],
768*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
769*c8dee2aaSAndroid Build Coastguard Worker    "env": {
770*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
771*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
772*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
773*c8dee2aaSAndroid Build Coastguard Worker    },
774*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
775*c8dee2aaSAndroid Build Coastguard Worker    "name": "push [START_DIR]/tmp/uninteresting_hashes.txt /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
776*c8dee2aaSAndroid Build Coastguard Worker  },
777*c8dee2aaSAndroid Build Coastguard Worker  {
778*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
779*c8dee2aaSAndroid Build Coastguard Worker      "python3",
780*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::vars]/resources/get_env_var.py",
781*c8dee2aaSAndroid Build Coastguard Worker      "SWARMING_TASK_ID"
782*c8dee2aaSAndroid Build Coastguard Worker    ],
783*c8dee2aaSAndroid Build Coastguard Worker    "name": "get swarming task id"
784*c8dee2aaSAndroid Build Coastguard Worker  },
785*c8dee2aaSAndroid Build Coastguard Worker  {
786*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
787*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
788*c8dee2aaSAndroid Build Coastguard Worker      "-u",
789*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
790*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
791*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
792*c8dee2aaSAndroid Build Coastguard Worker      "copy",
793*c8dee2aaSAndroid Build Coastguard Worker      "set -x; LD_LIBRARY_PATH=/data/local/tmp/ /data/local/tmp/dm --example --flags --properties bot skia-bot-123 key1 value1 task 123456 --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 --svgs /sdcard/revenge_of_the_skiabot/svgs/svg --uninterestingHashesFile /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt --writePath /sdcard/revenge_of_the_skiabot/dm_out; echo $? >/data/local/tmp/rc",
794*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/tmp/dm.sh"
795*c8dee2aaSAndroid Build Coastguard Worker    ],
796*c8dee2aaSAndroid Build Coastguard Worker    "env": {
797*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
798*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
799*c8dee2aaSAndroid Build Coastguard Worker    },
800*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
801*c8dee2aaSAndroid Build Coastguard Worker    "name": "write dm.sh",
802*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
803*c8dee2aaSAndroid Build Coastguard Worker      "@@@[email protected]@set -x; LD_LIBRARY_PATH=/data/local/tmp/ /data/local/tmp/dm --example --flags --properties bot skia-bot-123 key1 value1 task 123456 --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 --svgs /sdcard/revenge_of_the_skiabot/svgs/svg --uninterestingHashesFile /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt --writePath /sdcard/revenge_of_the_skiabot/dm_out; echo $? >/data/local/tmp/rc@@@",
804*c8dee2aaSAndroid Build Coastguard Worker      "@@@[email protected]@@@"
805*c8dee2aaSAndroid Build Coastguard Worker    ]
806*c8dee2aaSAndroid Build Coastguard Worker  },
807*c8dee2aaSAndroid Build Coastguard Worker  {
808*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
809*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
810*c8dee2aaSAndroid Build Coastguard Worker      "push",
811*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/tmp/dm.sh",
812*c8dee2aaSAndroid Build Coastguard Worker      "/data/local/tmp/"
813*c8dee2aaSAndroid Build Coastguard Worker    ],
814*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
815*c8dee2aaSAndroid Build Coastguard Worker    "env": {
816*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
817*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
818*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
819*c8dee2aaSAndroid Build Coastguard Worker    },
820*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
821*c8dee2aaSAndroid Build Coastguard Worker    "name": "push dm.sh"
822*c8dee2aaSAndroid Build Coastguard Worker  },
823*c8dee2aaSAndroid Build Coastguard Worker  {
824*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
825*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
826*c8dee2aaSAndroid Build Coastguard Worker      "logcat",
827*c8dee2aaSAndroid Build Coastguard Worker      "-c"
828*c8dee2aaSAndroid Build Coastguard Worker    ],
829*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
830*c8dee2aaSAndroid Build Coastguard Worker    "env": {
831*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
832*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
833*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
834*c8dee2aaSAndroid Build Coastguard Worker    },
835*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
836*c8dee2aaSAndroid Build Coastguard Worker    "name": "clear log"
837*c8dee2aaSAndroid Build Coastguard Worker  },
838*c8dee2aaSAndroid Build Coastguard Worker  {
839*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
840*c8dee2aaSAndroid Build Coastguard Worker      "python3",
841*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/run_sh.py",
842*c8dee2aaSAndroid Build Coastguard Worker      "/data/local/tmp/",
843*c8dee2aaSAndroid Build Coastguard Worker      "dm.sh",
844*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35"
845*c8dee2aaSAndroid Build Coastguard Worker    ],
846*c8dee2aaSAndroid Build Coastguard Worker    "env": {
847*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
848*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
849*c8dee2aaSAndroid Build Coastguard Worker    },
850*c8dee2aaSAndroid Build Coastguard Worker    "name": "dm"
851*c8dee2aaSAndroid Build Coastguard Worker  },
852*c8dee2aaSAndroid Build Coastguard Worker  {
853*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [],
854*c8dee2aaSAndroid Build Coastguard Worker    "name": "adb pull"
855*c8dee2aaSAndroid Build Coastguard Worker  },
856*c8dee2aaSAndroid Build Coastguard Worker  {
857*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
858*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
859*c8dee2aaSAndroid Build Coastguard Worker      "pull",
860*c8dee2aaSAndroid Build Coastguard Worker      "/sdcard/revenge_of_the_skiabot/dm_out",
861*c8dee2aaSAndroid Build Coastguard Worker      "[CLEANUP]/adb_pull_tmp_1"
862*c8dee2aaSAndroid Build Coastguard Worker    ],
863*c8dee2aaSAndroid Build Coastguard Worker    "cwd": "[START_DIR]/skia",
864*c8dee2aaSAndroid Build Coastguard Worker    "env": {
865*c8dee2aaSAndroid Build Coastguard Worker      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
866*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
867*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
868*c8dee2aaSAndroid Build Coastguard Worker    },
869*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
870*c8dee2aaSAndroid Build Coastguard Worker    "name": "adb pull.pull /sdcard/revenge_of_the_skiabot/dm_out",
871*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
872*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_NEST_LEVEL@1@@@"
873*c8dee2aaSAndroid Build Coastguard Worker    ]
874*c8dee2aaSAndroid Build Coastguard Worker  },
875*c8dee2aaSAndroid Build Coastguard Worker  {
876*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
877*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
878*c8dee2aaSAndroid Build Coastguard Worker      "-u",
879*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
880*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
881*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
882*c8dee2aaSAndroid Build Coastguard Worker      "glob",
883*c8dee2aaSAndroid Build Coastguard Worker      "[CLEANUP]/adb_pull_tmp_1",
884*c8dee2aaSAndroid Build Coastguard Worker      "dm_out/*"
885*c8dee2aaSAndroid Build Coastguard Worker    ],
886*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
887*c8dee2aaSAndroid Build Coastguard Worker    "name": "adb pull.list pulled files",
888*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
889*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_NEST_LEVEL@1@@@",
890*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@glob@[CLEANUP]/adb_pull_tmp_1/1.png@@@",
891*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@glob@[CLEANUP]/adb_pull_tmp_1/2.png@@@",
892*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_END@glob@@@"
893*c8dee2aaSAndroid Build Coastguard Worker    ]
894*c8dee2aaSAndroid Build Coastguard Worker  },
895*c8dee2aaSAndroid Build Coastguard Worker  {
896*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
897*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
898*c8dee2aaSAndroid Build Coastguard Worker      "-u",
899*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
900*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
901*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
902*c8dee2aaSAndroid Build Coastguard Worker      "copy",
903*c8dee2aaSAndroid Build Coastguard Worker      "[CLEANUP]/adb_pull_tmp_1/1.png",
904*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/[SWARM_OUT_DIR]"
905*c8dee2aaSAndroid Build Coastguard Worker    ],
906*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
907*c8dee2aaSAndroid Build Coastguard Worker    "name": "adb pull.copy 1.png",
908*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
909*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_NEST_LEVEL@1@@@"
910*c8dee2aaSAndroid Build Coastguard Worker    ]
911*c8dee2aaSAndroid Build Coastguard Worker  },
912*c8dee2aaSAndroid Build Coastguard Worker  {
913*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
914*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
915*c8dee2aaSAndroid Build Coastguard Worker      "-u",
916*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
917*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
918*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
919*c8dee2aaSAndroid Build Coastguard Worker      "copy",
920*c8dee2aaSAndroid Build Coastguard Worker      "[CLEANUP]/adb_pull_tmp_1/2.png",
921*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/[SWARM_OUT_DIR]"
922*c8dee2aaSAndroid Build Coastguard Worker    ],
923*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
924*c8dee2aaSAndroid Build Coastguard Worker    "name": "adb pull.copy 2.png",
925*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
926*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_NEST_LEVEL@1@@@"
927*c8dee2aaSAndroid Build Coastguard Worker    ]
928*c8dee2aaSAndroid Build Coastguard Worker  },
929*c8dee2aaSAndroid Build Coastguard Worker  {
930*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
931*c8dee2aaSAndroid Build Coastguard Worker      "vpython3",
932*c8dee2aaSAndroid Build Coastguard Worker      "-u",
933*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
934*c8dee2aaSAndroid Build Coastguard Worker      "--json-output",
935*c8dee2aaSAndroid Build Coastguard Worker      "/path/to/tmp/json",
936*c8dee2aaSAndroid Build Coastguard Worker      "glob",
937*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/[SWARM_OUT_DIR]",
938*c8dee2aaSAndroid Build Coastguard Worker      "*.png"
939*c8dee2aaSAndroid Build Coastguard Worker    ],
940*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
941*c8dee2aaSAndroid Build Coastguard Worker    "name": "find .png images",
942*c8dee2aaSAndroid Build Coastguard Worker    "~followup_annotations": [
943*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_LINE@glob@[START_DIR]/[SWARM_OUT_DIR]/someimage.png@@@",
944*c8dee2aaSAndroid Build Coastguard Worker      "@@@STEP_LOG_END@glob@@@"
945*c8dee2aaSAndroid Build Coastguard Worker    ]
946*c8dee2aaSAndroid Build Coastguard Worker  },
947*c8dee2aaSAndroid Build Coastguard Worker  {
948*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
949*c8dee2aaSAndroid Build Coastguard Worker      "gsutil",
950*c8dee2aaSAndroid Build Coastguard Worker      "-m",
951*c8dee2aaSAndroid Build Coastguard Worker      "cp",
952*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/[SWARM_OUT_DIR]/*.png",
953*c8dee2aaSAndroid Build Coastguard Worker      "gs://skia-infra-gm/dm-images-v1"
954*c8dee2aaSAndroid Build Coastguard Worker    ],
955*c8dee2aaSAndroid Build Coastguard Worker    "name": "upload .png images"
956*c8dee2aaSAndroid Build Coastguard Worker  },
957*c8dee2aaSAndroid Build Coastguard Worker  {
958*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
959*c8dee2aaSAndroid Build Coastguard Worker      "gsutil",
960*c8dee2aaSAndroid Build Coastguard Worker      "cp",
961*c8dee2aaSAndroid Build Coastguard Worker      "-Z",
962*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/[SWARM_OUT_DIR]/dm.json",
963*c8dee2aaSAndroid Build Coastguard Worker      "gs://skia-infra-gm/trybot/dm-json-v1/2012/05/14/12/1234_7/Test-Android-Clang-Pixel2XL-GPU-Adreno540-arm64-Debug-All-Android/1337000001/dm.json"
964*c8dee2aaSAndroid Build Coastguard Worker    ],
965*c8dee2aaSAndroid Build Coastguard Worker    "name": "upload dm.json"
966*c8dee2aaSAndroid Build Coastguard Worker  },
967*c8dee2aaSAndroid Build Coastguard Worker  {
968*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
969*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
970*c8dee2aaSAndroid Build Coastguard Worker      "reboot"
971*c8dee2aaSAndroid Build Coastguard Worker    ],
972*c8dee2aaSAndroid Build Coastguard Worker    "env": {
973*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
974*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
975*c8dee2aaSAndroid Build Coastguard Worker    },
976*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
977*c8dee2aaSAndroid Build Coastguard Worker    "name": "adb reboot device",
978*c8dee2aaSAndroid Build Coastguard Worker    "timeout": 30
979*c8dee2aaSAndroid Build Coastguard Worker  },
980*c8dee2aaSAndroid Build Coastguard Worker  {
981*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
982*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35",
983*c8dee2aaSAndroid Build Coastguard Worker      "wait-for-device",
984*c8dee2aaSAndroid Build Coastguard Worker      "shell",
985*c8dee2aaSAndroid Build Coastguard Worker      "while [[ -z $(getprop sys.boot_completed) ]]; do sleep 1; done"
986*c8dee2aaSAndroid Build Coastguard Worker    ],
987*c8dee2aaSAndroid Build Coastguard Worker    "env": {
988*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
989*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
990*c8dee2aaSAndroid Build Coastguard Worker    },
991*c8dee2aaSAndroid Build Coastguard Worker    "name": "wait for device after rebooting",
992*c8dee2aaSAndroid Build Coastguard Worker    "timeout": 180
993*c8dee2aaSAndroid Build Coastguard Worker  },
994*c8dee2aaSAndroid Build Coastguard Worker  {
995*c8dee2aaSAndroid Build Coastguard Worker    "cmd": [
996*c8dee2aaSAndroid Build Coastguard Worker      "python3",
997*c8dee2aaSAndroid Build Coastguard Worker      "RECIPE_MODULE[skia::flavor]/resources/dump_adb_log.py",
998*c8dee2aaSAndroid Build Coastguard Worker      "[START_DIR]/build",
999*c8dee2aaSAndroid Build Coastguard Worker      "/usr/bin/adb.1.0.35"
1000*c8dee2aaSAndroid Build Coastguard Worker    ],
1001*c8dee2aaSAndroid Build Coastguard Worker    "env": {
1002*c8dee2aaSAndroid Build Coastguard Worker      "CHROME_HEADLESS": "1",
1003*c8dee2aaSAndroid Build Coastguard Worker      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
1004*c8dee2aaSAndroid Build Coastguard Worker    },
1005*c8dee2aaSAndroid Build Coastguard Worker    "infra_step": true,
1006*c8dee2aaSAndroid Build Coastguard Worker    "name": "dump log",
1007*c8dee2aaSAndroid Build Coastguard Worker    "timeout": 300
1008*c8dee2aaSAndroid Build Coastguard Worker  },
1009*c8dee2aaSAndroid Build Coastguard Worker  {
1010*c8dee2aaSAndroid Build Coastguard Worker    "name": "$result"
1011*c8dee2aaSAndroid Build Coastguard Worker  }
1012*c8dee2aaSAndroid Build Coastguard Worker]