1[
2  {
3    "cmd": [
4      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_if_needed",
5      "[START_DIR]/skia/resources",
6      "resources"
7    ],
8    "env": {
9      "BUILDTYPE": "Release",
10      "CHROME_HEADLESS": "1",
11      "IOS_BUNDLE_ID": "com.google.nanobench",
12      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
13      "SKIA_OUT": "[START_DIR]/out"
14    },
15    "name": "push_if_needed [START_DIR]/skia/resources"
16  },
17  {
18    "cmd": [
19      "python",
20      "-u",
21      "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
22      "[START_DIR]/skia/infra/bots/assets/skp/VERSION",
23      "/path/to/tmp/"
24    ],
25    "env": {
26      "IOS_BUNDLE_ID": "com.google.nanobench"
27    },
28    "infra_step": true,
29    "name": "Get downloaded SKP VERSION"
30  },
31  {
32    "cmd": [
33      "python",
34      "-u",
35      "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
36      "42",
37      "[START_DIR]/tmp/SKP_VERSION"
38    ],
39    "env": {
40      "IOS_BUNDLE_ID": "com.google.nanobench"
41    },
42    "infra_step": true,
43    "name": "write SKP_VERSION"
44  },
45  {
46    "cmd": [
47      "[START_DIR]/skia/platform_tools/ios/bin/ios_cat_file",
48      "tmp/SKP_VERSION"
49    ],
50    "env": {
51      "BUILDTYPE": "Release",
52      "CHROME_HEADLESS": "1",
53      "IOS_BUNDLE_ID": "com.google.nanobench",
54      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
55      "SKIA_OUT": "[START_DIR]/out"
56    },
57    "name": "cat_file tmp/SKP_VERSION",
58    "stdout": "/path/to/tmp/"
59  },
60  {
61    "cmd": [
62      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
63      "tmp/SKP_VERSION"
64    ],
65    "env": {
66      "BUILDTYPE": "Release",
67      "CHROME_HEADLESS": "1",
68      "IOS_BUNDLE_ID": "com.google.nanobench",
69      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
70      "SKIA_OUT": "[START_DIR]/out"
71    },
72    "name": "rm tmp/SKP_VERSION"
73  },
74  {
75    "cmd": [
76      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
77      "skps"
78    ],
79    "env": {
80      "BUILDTYPE": "Release",
81      "CHROME_HEADLESS": "1",
82      "IOS_BUNDLE_ID": "com.google.nanobench",
83      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
84      "SKIA_OUT": "[START_DIR]/out"
85    },
86    "name": "rm skps"
87  },
88  {
89    "cmd": [
90      "[START_DIR]/skia/platform_tools/ios/bin/ios_mkdir",
91      "skps"
92    ],
93    "env": {
94      "BUILDTYPE": "Release",
95      "CHROME_HEADLESS": "1",
96      "IOS_BUNDLE_ID": "com.google.nanobench",
97      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
98      "SKIA_OUT": "[START_DIR]/out"
99    },
100    "name": "mkdir skps"
101  },
102  {
103    "cmd": [
104      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_if_needed",
105      "[START_DIR]/skp",
106      "skps"
107    ],
108    "env": {
109      "BUILDTYPE": "Release",
110      "CHROME_HEADLESS": "1",
111      "IOS_BUNDLE_ID": "com.google.nanobench",
112      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
113      "SKIA_OUT": "[START_DIR]/out"
114    },
115    "name": "push_if_needed [START_DIR]/skp"
116  },
117  {
118    "cmd": [
119      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_file",
120      "[START_DIR]/tmp/SKP_VERSION",
121      "tmp/SKP_VERSION"
122    ],
123    "env": {
124      "BUILDTYPE": "Release",
125      "CHROME_HEADLESS": "1",
126      "IOS_BUNDLE_ID": "com.google.nanobench",
127      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
128      "SKIA_OUT": "[START_DIR]/out"
129    },
130    "name": "push_file [START_DIR]/tmp/SKP_VERSION"
131  },
132  {
133    "cmd": [
134      "python",
135      "-u",
136      "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
137      "[START_DIR]/skia/infra/bots/assets/skimage/VERSION",
138      "/path/to/tmp/"
139    ],
140    "env": {
141      "IOS_BUNDLE_ID": "com.google.nanobench"
142    },
143    "infra_step": true,
144    "name": "Get downloaded skimage VERSION"
145  },
146  {
147    "cmd": [
148      "python",
149      "-u",
150      "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
151      "42",
152      "[START_DIR]/tmp/SK_IMAGE_VERSION"
153    ],
154    "env": {
155      "IOS_BUNDLE_ID": "com.google.nanobench"
156    },
157    "infra_step": true,
158    "name": "write SK_IMAGE_VERSION"
159  },
160  {
161    "cmd": [
162      "[START_DIR]/skia/platform_tools/ios/bin/ios_cat_file",
163      "tmp/SK_IMAGE_VERSION"
164    ],
165    "env": {
166      "BUILDTYPE": "Release",
167      "CHROME_HEADLESS": "1",
168      "IOS_BUNDLE_ID": "com.google.nanobench",
169      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
170      "SKIA_OUT": "[START_DIR]/out"
171    },
172    "name": "cat_file tmp/SK_IMAGE_VERSION",
173    "stdout": "/path/to/tmp/"
174  },
175  {
176    "cmd": [
177      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
178      "tmp/SK_IMAGE_VERSION"
179    ],
180    "env": {
181      "BUILDTYPE": "Release",
182      "CHROME_HEADLESS": "1",
183      "IOS_BUNDLE_ID": "com.google.nanobench",
184      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
185      "SKIA_OUT": "[START_DIR]/out"
186    },
187    "name": "rm tmp/SK_IMAGE_VERSION"
188  },
189  {
190    "cmd": [
191      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
192      "images"
193    ],
194    "env": {
195      "BUILDTYPE": "Release",
196      "CHROME_HEADLESS": "1",
197      "IOS_BUNDLE_ID": "com.google.nanobench",
198      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
199      "SKIA_OUT": "[START_DIR]/out"
200    },
201    "name": "rm images"
202  },
203  {
204    "cmd": [
205      "[START_DIR]/skia/platform_tools/ios/bin/ios_mkdir",
206      "images"
207    ],
208    "env": {
209      "BUILDTYPE": "Release",
210      "CHROME_HEADLESS": "1",
211      "IOS_BUNDLE_ID": "com.google.nanobench",
212      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
213      "SKIA_OUT": "[START_DIR]/out"
214    },
215    "name": "mkdir images"
216  },
217  {
218    "cmd": [
219      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_if_needed",
220      "[START_DIR]/skimage",
221      "images"
222    ],
223    "env": {
224      "BUILDTYPE": "Release",
225      "CHROME_HEADLESS": "1",
226      "IOS_BUNDLE_ID": "com.google.nanobench",
227      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
228      "SKIA_OUT": "[START_DIR]/out"
229    },
230    "name": "push_if_needed [START_DIR]/skimage"
231  },
232  {
233    "cmd": [
234      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_file",
235      "[START_DIR]/tmp/SK_IMAGE_VERSION",
236      "tmp/SK_IMAGE_VERSION"
237    ],
238    "env": {
239      "BUILDTYPE": "Release",
240      "CHROME_HEADLESS": "1",
241      "IOS_BUNDLE_ID": "com.google.nanobench",
242      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
243      "SKIA_OUT": "[START_DIR]/out"
244    },
245    "name": "push_file [START_DIR]/tmp/SK_IMAGE_VERSION"
246  },
247  {
248    "cmd": [
249      "python",
250      "-u",
251      "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
252      "[START_DIR]/skia/infra/bots/assets/svg/VERSION",
253      "/path/to/tmp/"
254    ],
255    "env": {
256      "IOS_BUNDLE_ID": "com.google.nanobench"
257    },
258    "infra_step": true,
259    "name": "Get downloaded SVG VERSION"
260  },
261  {
262    "cmd": [
263      "python",
264      "-u",
265      "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
266      "42",
267      "[START_DIR]/tmp/SVG_VERSION"
268    ],
269    "env": {
270      "IOS_BUNDLE_ID": "com.google.nanobench"
271    },
272    "infra_step": true,
273    "name": "write SVG_VERSION"
274  },
275  {
276    "cmd": [
277      "[START_DIR]/skia/platform_tools/ios/bin/ios_cat_file",
278      "tmp/SVG_VERSION"
279    ],
280    "env": {
281      "BUILDTYPE": "Release",
282      "CHROME_HEADLESS": "1",
283      "IOS_BUNDLE_ID": "com.google.nanobench",
284      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
285      "SKIA_OUT": "[START_DIR]/out"
286    },
287    "name": "cat_file tmp/SVG_VERSION",
288    "stdout": "/path/to/tmp/"
289  },
290  {
291    "cmd": [
292      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
293      "tmp/SVG_VERSION"
294    ],
295    "env": {
296      "BUILDTYPE": "Release",
297      "CHROME_HEADLESS": "1",
298      "IOS_BUNDLE_ID": "com.google.nanobench",
299      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
300      "SKIA_OUT": "[START_DIR]/out"
301    },
302    "name": "rm tmp/SVG_VERSION"
303  },
304  {
305    "cmd": [
306      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
307      "svgs"
308    ],
309    "env": {
310      "BUILDTYPE": "Release",
311      "CHROME_HEADLESS": "1",
312      "IOS_BUNDLE_ID": "com.google.nanobench",
313      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
314      "SKIA_OUT": "[START_DIR]/out"
315    },
316    "name": "rm svgs"
317  },
318  {
319    "cmd": [
320      "[START_DIR]/skia/platform_tools/ios/bin/ios_mkdir",
321      "svgs"
322    ],
323    "env": {
324      "BUILDTYPE": "Release",
325      "CHROME_HEADLESS": "1",
326      "IOS_BUNDLE_ID": "com.google.nanobench",
327      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
328      "SKIA_OUT": "[START_DIR]/out"
329    },
330    "name": "mkdir svgs"
331  },
332  {
333    "cmd": [
334      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_if_needed",
335      "[START_DIR]/svg",
336      "svgs"
337    ],
338    "env": {
339      "BUILDTYPE": "Release",
340      "CHROME_HEADLESS": "1",
341      "IOS_BUNDLE_ID": "com.google.nanobench",
342      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
343      "SKIA_OUT": "[START_DIR]/out"
344    },
345    "name": "push_if_needed [START_DIR]/svg"
346  },
347  {
348    "cmd": [
349      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_file",
350      "[START_DIR]/tmp/SVG_VERSION",
351      "tmp/SVG_VERSION"
352    ],
353    "env": {
354      "BUILDTYPE": "Release",
355      "CHROME_HEADLESS": "1",
356      "IOS_BUNDLE_ID": "com.google.nanobench",
357      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
358      "SKIA_OUT": "[START_DIR]/out"
359    },
360    "name": "push_file [START_DIR]/tmp/SVG_VERSION"
361  },
362  {
363    "cmd": [
364      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
365      "perf"
366    ],
367    "env": {
368      "BUILDTYPE": "Release",
369      "CHROME_HEADLESS": "1",
370      "IOS_BUNDLE_ID": "com.google.nanobench",
371      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
372      "SKIA_OUT": "[START_DIR]/out"
373    },
374    "name": "rm perf"
375  },
376  {
377    "cmd": [
378      "[START_DIR]/skia/platform_tools/ios/bin/ios_mkdir",
379      "perf"
380    ],
381    "env": {
382      "BUILDTYPE": "Release",
383      "CHROME_HEADLESS": "1",
384      "IOS_BUNDLE_ID": "com.google.nanobench",
385      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
386      "SKIA_OUT": "[START_DIR]/out"
387    },
388    "name": "mkdir perf"
389  },
390  {
391    "cmd": [
392      "python",
393      "-u",
394      "[START_DIR]/skia/gn/package_ios.py",
395      "[START_DIR]/out/Release/nanobench"
396    ],
397    "env": {
398      "BUILDTYPE": "Release",
399      "CHROME_HEADLESS": "1",
400      "IOS_BUNDLE_ID": "com.google.nanobench",
401      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
402      "SKIA_OUT": "[START_DIR]/out"
403    },
404    "infra_step": true,
405    "name": "package nanobench"
406  },
407  {
408    "cmd": [
409      "ios-deploy",
410      "-b",
411      "[START_DIR]/out/Release/nanobench.app",
412      "-I",
413      "--args",
414      "--undefok -i resources --skps skps --images images/nanobench --svgs svgs --nocpu --pre_log --images --gpuStatsDump true --scales 1.0 1.1 --skps ignore_skps --config 8888 nonrendering hwui gles --match ~blurroundrect ~patch_grid ~desk_carsvg ~keymobi ~path_hairline ~GLInstancedArraysBench ~inc0.gif ~inc1.gif ~incInterlaced.gif ~inc0.jpg ~incGray.jpg ~inc0.wbmp ~inc1.wbmp ~inc0.webp ~inc1.webp ~inc0.ico ~inc1.ico ~inc0.png ~inc1.png ~inc2.png ~inc12.png ~inc13.png ~inc14.png ~inc0.webp ~inc1.webp --outResultsFile perf/nanobench_abc123_1337000001.json --properties gitHash abc123 build_number 5 --key arch arm compiler Clang cpu_or_gpu GPU cpu_or_gpu_value GX6450 model iPadMini4 os iOS"
415    ],
416    "env": {
417      "BUILDTYPE": "Release",
418      "CHROME_HEADLESS": "1",
419      "IOS_BUNDLE_ID": "com.google.nanobench",
420      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
421      "SKIA_OUT": "[START_DIR]/out"
422    },
423    "name": "nanobench"
424  },
425  {
426    "cmd": [
427      "python",
428      "-u",
429      "\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n  if os.path.exists(path):\n    print \"%s exists but is not a dir\" % path\n    sys.exit(1)\n  os.makedirs(path, mode)\n",
430      "[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-iOS-Clang-iPadMini4-GPU-GX6450-arm-Release/data",
431      "511"
432    ],
433    "env": {
434      "IOS_BUNDLE_ID": "com.google.nanobench"
435    },
436    "name": "makedirs perf_dir",
437    "~followup_annotations": [
438      "@@@STEP_LOG_LINE@python.inline@@@@",
439      "@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
440      "@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
441      "@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
442      "@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
443      "@@@STEP_LOG_LINE@python.inline@  if os.path.exists(path):@@@",
444      "@@@STEP_LOG_LINE@python.inline@    print \"%s exists but is not a dir\" % path@@@",
445      "@@@STEP_LOG_LINE@python.inline@    sys.exit(1)@@@",
446      "@@@STEP_LOG_LINE@python.inline@  os.makedirs(path, mode)@@@",
447      "@@@STEP_LOG_END@python.inline@@@"
448    ]
449  },
450  {
451    "cmd": [
452      "[START_DIR]/skia/platform_tools/ios/bin/ios_pull_if_needed",
453      "perf",
454      "[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-iOS-Clang-iPadMini4-GPU-GX6450-arm-Release/data"
455    ],
456    "env": {
457      "BUILDTYPE": "Release",
458      "CHROME_HEADLESS": "1",
459      "IOS_BUNDLE_ID": "com.google.nanobench",
460      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
461      "SKIA_OUT": "[START_DIR]/out"
462    },
463    "name": "pull_if_needed perf"
464  },
465  {
466    "name": "$result",
467    "recipe_result": null,
468    "status_code": 0
469  }
470]