• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1[
2  {
3    "cmd": [
4      "python",
5      "-u",
6      "RECIPE_MODULE[depot_tools::git]/resources/git_setup.py",
7      "--path",
8      "[START_DIR]/swarming.client",
9      "--url",
10      "https://chromium.googlesource.com/external/swarming.client.git"
11    ],
12    "name": "git setup (swarming_client)"
13  },
14  {
15    "cmd": [
16      "git",
17      "retry",
18      "fetch",
19      "origin",
20      "abc123"
21    ],
22    "cwd": "[START_DIR]/swarming.client",
23    "env": {
24      "PATH": "RECIPE_PACKAGE_REPO[depot_tools]:<PATH>"
25    },
26    "infra_step": true,
27    "name": "git fetch (swarming_client)"
28  },
29  {
30    "cmd": [
31      "git",
32      "checkout",
33      "-f",
34      "FETCH_HEAD"
35    ],
36    "cwd": "[START_DIR]/swarming.client",
37    "infra_step": true,
38    "name": "git checkout (swarming_client)"
39  },
40  {
41    "cmd": [
42      "git",
43      "rev-parse",
44      "HEAD"
45    ],
46    "cwd": "[START_DIR]/swarming.client",
47    "infra_step": true,
48    "name": "read revision",
49    "stdout": "/path/to/tmp/",
50    "~followup_annotations": [
51      "@@@STEP_TEXT@<br/>checked out 'deadbeef'<br/>@@@"
52    ]
53  },
54  {
55    "cmd": [
56      "git",
57      "clean",
58      "-f",
59      "-d",
60      "-x"
61    ],
62    "cwd": "[START_DIR]/swarming.client",
63    "infra_step": true,
64    "name": "git clean (swarming_client)"
65  },
66  {
67    "cmd": [
68      "git",
69      "submodule",
70      "sync"
71    ],
72    "cwd": "[START_DIR]/swarming.client",
73    "infra_step": true,
74    "name": "submodule sync (swarming_client)"
75  },
76  {
77    "cmd": [
78      "git",
79      "submodule",
80      "update",
81      "--init",
82      "--recursive"
83    ],
84    "cwd": "[START_DIR]/swarming.client",
85    "infra_step": true,
86    "name": "submodule update (swarming_client)"
87  },
88  {
89    "cmd": [
90      "python",
91      "-u",
92      "[START_DIR]/swarming.client/swarming.py",
93      "--version"
94    ],
95    "name": "swarming.py --version",
96    "stdout": "/path/to/tmp/",
97    "~followup_annotations": [
98      "@@@STEP_TEXT@0.8.6@@@"
99    ]
100  },
101  {
102    "cmd": [
103      "download_from_google_storage",
104      "--no_resume",
105      "--platform=linux*",
106      "--no_auth",
107      "--bucket",
108      "chromium-luci",
109      "-d",
110      "lmydirimydirnmydirumydirxmydir6mydir4"
111    ],
112    "env": {
113      "PATH": "RECIPE_PACKAGE_REPO[depot_tools]:<PATH>"
114    },
115    "name": "download luci-go linux"
116  },
117  {
118    "cmd": [
119      "download_from_google_storage",
120      "--no_resume",
121      "--platform=darwin",
122      "--no_auth",
123      "--bucket",
124      "chromium-luci",
125      "-d",
126      "mmydiramydircmydir6mydir4"
127    ],
128    "env": {
129      "PATH": "RECIPE_PACKAGE_REPO[depot_tools]:<PATH>"
130    },
131    "name": "download luci-go mac"
132  },
133  {
134    "cmd": [
135      "download_from_google_storage",
136      "--no_resume",
137      "--platform=win32",
138      "--no_auth",
139      "--bucket",
140      "chromium-luci",
141      "-d",
142      "wmydirimydirnmydir6mydir4"
143    ],
144    "env": {
145      "PATH": "RECIPE_PACKAGE_REPO[depot_tools]:<PATH>"
146    },
147    "name": "download luci-go win"
148  },
149  {
150    "cmd": [
151      "python",
152      "-u",
153      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
154      "--json-output",
155      "/path/to/tmp/json",
156      "rmtree",
157      "[START_DIR]/luci-go"
158    ],
159    "infra_step": true,
160    "name": "rmtree luci-go"
161  },
162  {
163    "cmd": [
164      "python",
165      "-u",
166      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
167      "--json-output",
168      "/path/to/tmp/json",
169      "copytree",
170      "mydir",
171      "[START_DIR]/luci-go"
172    ],
173    "infra_step": true,
174    "name": "Copy Go binary"
175  },
176  {
177    "cmd": [
178      "python",
179      "-u",
180      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
181      "--json-output",
182      "/path/to/tmp/json",
183      "ensure-directory",
184      "--mode",
185      "0777",
186      "[START_DIR]/swarming_temp_dir"
187    ],
188    "infra_step": true,
189    "name": "makedirs swarming tmp dir"
190  },
191  {
192    "cmd": [
193      "python",
194      "-u",
195      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
196      "--json-output",
197      "/path/to/tmp/json",
198      "copy",
199      "{\n    \"args\": [\n        \"--isolate\", \n        \"isolate_path\", \n        \"--isolated\", \n        \"[START_DIR]/swarming_temp_dir/skia-task-task.isolated\", \n        \"--config-variable\", \n        \"OS\", \n        \"linux\", \n        \"--blacklist\", \n        \"*.pyc\", \n        \"--extra-variable\", \n        \"myvar\", \n        \"myval\"\n    ], \n    \"dir\": \"isolate_dir\", \n    \"version\": 1\n}",
200      "[START_DIR]/swarming_temp_dir/task.isolated.gen.json"
201    ],
202    "infra_step": true,
203    "name": "Write task.isolated.gen.json"
204  },
205  {
206    "cmd": [
207      "python",
208      "-u",
209      "RECIPE_MODULE[skia::isolate]/resources/isolate.py",
210      "[START_DIR]/swarming.client",
211      "batcharchive",
212      "--dump-json",
213      "/path/to/tmp/json",
214      "--isolate-server",
215      "https://isolateserver.appspot.com",
216      "--verbose",
217      "[START_DIR]/swarming_temp_dir/task-0.isolated.gen.json",
218      "[START_DIR]/swarming_temp_dir/task-1.isolated.gen.json",
219      "[START_DIR]/swarming_temp_dir/task-2.isolated.gen.json",
220      "[START_DIR]/swarming_temp_dir/task-3.isolated.gen.json",
221      "[START_DIR]/swarming_temp_dir/task-4.isolated.gen.json"
222    ],
223    "name": "isolate tests",
224    "~followup_annotations": [
225      "@@@STEP_LOG_LINE@json.output@{@@@",
226      "@@@STEP_LOG_LINE@json.output@  \"task-0\": \"[dummy hash for task-0]\", @@@",
227      "@@@STEP_LOG_LINE@json.output@  \"task-1\": \"[dummy hash for task-1]\", @@@",
228      "@@@STEP_LOG_LINE@json.output@  \"task-2\": \"[dummy hash for task-2]\", @@@",
229      "@@@STEP_LOG_LINE@json.output@  \"task-3\": \"[dummy hash for task-3]\", @@@",
230      "@@@STEP_LOG_LINE@json.output@  \"task-4\": \"[dummy hash for task-4]\"@@@",
231      "@@@STEP_LOG_LINE@json.output@}@@@",
232      "@@@STEP_LOG_END@json.output@@@",
233      "@@@SET_BUILD_PROPERTY@swarm_hashes@{\"task-0\": \"[dummy hash for task-0]\", \"task-1\": \"[dummy hash for task-1]\", \"task-2\": \"[dummy hash for task-2]\", \"task-3\": \"[dummy hash for task-3]\", \"task-4\": \"[dummy hash for task-4]\"}@@@"
234    ]
235  },
236  {
237    "cmd": [
238      "python",
239      "-u",
240      "[START_DIR]/swarming.client/swarming.py",
241      "trigger",
242      "--swarming",
243      "https://chromium-swarm.appspot.com",
244      "--isolate-server",
245      "https://isolateserver.appspot.com",
246      "--priority",
247      "90",
248      "--shards",
249      "1",
250      "--task-name",
251      "task-4/Linux/[dummy has",
252      "--dump-json",
253      "/path/to/tmp/json",
254      "--expiration",
255      "72000",
256      "--io-timeout",
257      "2400",
258      "--hard-timeout",
259      "14400",
260      "--dimension",
261      "os",
262      "Linux",
263      "--tag",
264      "allow_milo:1",
265      "--tag",
266      "data:[dummy hash for task-4]",
267      "--tag",
268      "name:task-4",
269      "--tag",
270      "os:Linux",
271      "--tag",
272      "revision:abc123",
273      "--tag",
274      "stepname:task-4",
275      "--isolated",
276      "[dummy hash for task-4]",
277      "--",
278      "--extra"
279    ],
280    "infra_step": true,
281    "name": "[trigger] task-4",
282    "~followup_annotations": [
283      "@@@STEP_TEXT@Run on OS: 'Linux'@@@",
284      "@@@STEP_LOG_LINE@json.output@{@@@",
285      "@@@STEP_LOG_LINE@json.output@  \"base_task_name\": \"task-4/Linux/[dummy has\", @@@",
286      "@@@STEP_LOG_LINE@json.output@  \"tasks\": {@@@",
287      "@@@STEP_LOG_LINE@json.output@    \"task-4/Linux/[dummy has\": {@@@",
288      "@@@STEP_LOG_LINE@json.output@      \"shard_index\": 0, @@@",
289      "@@@STEP_LOG_LINE@json.output@      \"task_id\": \"10000\", @@@",
290      "@@@STEP_LOG_LINE@json.output@      \"view_url\": \"https://chromium-swarm.appspot.com/user/task/10000\"@@@",
291      "@@@STEP_LOG_LINE@json.output@    }@@@",
292      "@@@STEP_LOG_LINE@json.output@  }@@@",
293      "@@@STEP_LOG_LINE@json.output@}@@@",
294      "@@@STEP_LOG_END@json.output@@@",
295      "@@@STEP_LINK@shard #0@https://chromium-swarm.appspot.com/user/task/10000@@@"
296    ]
297  },
298  {
299    "cmd": [
300      "python",
301      "-u",
302      "[START_DIR]/swarming.client/swarming.py",
303      "trigger",
304      "--swarming",
305      "https://chromium-swarm.appspot.com",
306      "--isolate-server",
307      "https://isolateserver.appspot.com",
308      "--priority",
309      "90",
310      "--shards",
311      "1",
312      "--task-name",
313      "task-2/Linux/[dummy has",
314      "--dump-json",
315      "/path/to/tmp/json",
316      "--expiration",
317      "72000",
318      "--io-timeout",
319      "2400",
320      "--hard-timeout",
321      "14400",
322      "--dimension",
323      "os",
324      "Linux",
325      "--tag",
326      "allow_milo:1",
327      "--tag",
328      "data:[dummy hash for task-2]",
329      "--tag",
330      "name:task-2",
331      "--tag",
332      "os:Linux",
333      "--tag",
334      "revision:abc123",
335      "--tag",
336      "stepname:task-2",
337      "--isolated",
338      "[dummy hash for task-2]",
339      "--",
340      "--extra"
341    ],
342    "infra_step": true,
343    "name": "[trigger] task-2",
344    "~followup_annotations": [
345      "@@@STEP_TEXT@Run on OS: 'Linux'@@@",
346      "@@@STEP_LOG_LINE@json.output@{@@@",
347      "@@@STEP_LOG_LINE@json.output@  \"base_task_name\": \"task-2/Linux/[dummy has\", @@@",
348      "@@@STEP_LOG_LINE@json.output@  \"tasks\": {@@@",
349      "@@@STEP_LOG_LINE@json.output@    \"task-2/Linux/[dummy has\": {@@@",
350      "@@@STEP_LOG_LINE@json.output@      \"shard_index\": 0, @@@",
351      "@@@STEP_LOG_LINE@json.output@      \"task_id\": \"10000\", @@@",
352      "@@@STEP_LOG_LINE@json.output@      \"view_url\": \"https://chromium-swarm.appspot.com/user/task/10000\"@@@",
353      "@@@STEP_LOG_LINE@json.output@    }@@@",
354      "@@@STEP_LOG_LINE@json.output@  }@@@",
355      "@@@STEP_LOG_LINE@json.output@}@@@",
356      "@@@STEP_LOG_END@json.output@@@",
357      "@@@STEP_LINK@shard #0@https://chromium-swarm.appspot.com/user/task/10000@@@"
358    ]
359  },
360  {
361    "cmd": [
362      "python",
363      "-u",
364      "[START_DIR]/swarming.client/swarming.py",
365      "trigger",
366      "--swarming",
367      "https://chromium-swarm.appspot.com",
368      "--isolate-server",
369      "https://isolateserver.appspot.com",
370      "--priority",
371      "90",
372      "--shards",
373      "1",
374      "--task-name",
375      "task-3/Linux/[dummy has",
376      "--dump-json",
377      "/path/to/tmp/json",
378      "--expiration",
379      "72000",
380      "--io-timeout",
381      "2400",
382      "--hard-timeout",
383      "14400",
384      "--dimension",
385      "os",
386      "Linux",
387      "--tag",
388      "allow_milo:1",
389      "--tag",
390      "data:[dummy hash for task-3]",
391      "--tag",
392      "name:task-3",
393      "--tag",
394      "os:Linux",
395      "--tag",
396      "revision:abc123",
397      "--tag",
398      "stepname:task-3",
399      "--isolated",
400      "[dummy hash for task-3]",
401      "--",
402      "--extra"
403    ],
404    "infra_step": true,
405    "name": "[trigger] task-3",
406    "~followup_annotations": [
407      "@@@STEP_TEXT@Run on OS: 'Linux'@@@",
408      "@@@STEP_LOG_LINE@json.output@{@@@",
409      "@@@STEP_LOG_LINE@json.output@  \"base_task_name\": \"task-3/Linux/[dummy has\", @@@",
410      "@@@STEP_LOG_LINE@json.output@  \"tasks\": {@@@",
411      "@@@STEP_LOG_LINE@json.output@    \"task-3/Linux/[dummy has\": {@@@",
412      "@@@STEP_LOG_LINE@json.output@      \"shard_index\": 0, @@@",
413      "@@@STEP_LOG_LINE@json.output@      \"task_id\": \"10000\", @@@",
414      "@@@STEP_LOG_LINE@json.output@      \"view_url\": \"https://chromium-swarm.appspot.com/user/task/10000\"@@@",
415      "@@@STEP_LOG_LINE@json.output@    }@@@",
416      "@@@STEP_LOG_LINE@json.output@  }@@@",
417      "@@@STEP_LOG_LINE@json.output@}@@@",
418      "@@@STEP_LOG_END@json.output@@@",
419      "@@@STEP_LINK@shard #0@https://chromium-swarm.appspot.com/user/task/10000@@@"
420    ]
421  },
422  {
423    "cmd": [
424      "python",
425      "-u",
426      "[START_DIR]/swarming.client/swarming.py",
427      "trigger",
428      "--swarming",
429      "https://chromium-swarm.appspot.com",
430      "--isolate-server",
431      "https://isolateserver.appspot.com",
432      "--priority",
433      "90",
434      "--shards",
435      "1",
436      "--task-name",
437      "task-0/Linux/[dummy has",
438      "--dump-json",
439      "/path/to/tmp/json",
440      "--expiration",
441      "72000",
442      "--io-timeout",
443      "2400",
444      "--hard-timeout",
445      "14400",
446      "--dimension",
447      "os",
448      "Linux",
449      "--tag",
450      "allow_milo:1",
451      "--tag",
452      "data:[dummy hash for task-0]",
453      "--tag",
454      "name:task-0",
455      "--tag",
456      "os:Linux",
457      "--tag",
458      "revision:abc123",
459      "--tag",
460      "stepname:task-0",
461      "--isolated",
462      "[dummy hash for task-0]",
463      "--",
464      "--extra"
465    ],
466    "infra_step": true,
467    "name": "[trigger] task-0",
468    "~followup_annotations": [
469      "@@@STEP_TEXT@Run on OS: 'Linux'@@@",
470      "@@@STEP_LOG_LINE@json.output@{@@@",
471      "@@@STEP_LOG_LINE@json.output@  \"base_task_name\": \"task-0/Linux/[dummy has\", @@@",
472      "@@@STEP_LOG_LINE@json.output@  \"tasks\": {@@@",
473      "@@@STEP_LOG_LINE@json.output@    \"task-0/Linux/[dummy has\": {@@@",
474      "@@@STEP_LOG_LINE@json.output@      \"shard_index\": 0, @@@",
475      "@@@STEP_LOG_LINE@json.output@      \"task_id\": \"10000\", @@@",
476      "@@@STEP_LOG_LINE@json.output@      \"view_url\": \"https://chromium-swarm.appspot.com/user/task/10000\"@@@",
477      "@@@STEP_LOG_LINE@json.output@    }@@@",
478      "@@@STEP_LOG_LINE@json.output@  }@@@",
479      "@@@STEP_LOG_LINE@json.output@}@@@",
480      "@@@STEP_LOG_END@json.output@@@",
481      "@@@STEP_LINK@shard #0@https://chromium-swarm.appspot.com/user/task/10000@@@"
482    ]
483  },
484  {
485    "cmd": [
486      "python",
487      "-u",
488      "[START_DIR]/swarming.client/swarming.py",
489      "trigger",
490      "--swarming",
491      "https://chromium-swarm.appspot.com",
492      "--isolate-server",
493      "https://isolateserver.appspot.com",
494      "--priority",
495      "90",
496      "--shards",
497      "1",
498      "--task-name",
499      "task-1/Linux/[dummy has",
500      "--dump-json",
501      "/path/to/tmp/json",
502      "--expiration",
503      "72000",
504      "--io-timeout",
505      "2400",
506      "--hard-timeout",
507      "14400",
508      "--dimension",
509      "os",
510      "Linux",
511      "--tag",
512      "allow_milo:1",
513      "--tag",
514      "data:[dummy hash for task-1]",
515      "--tag",
516      "name:task-1",
517      "--tag",
518      "os:Linux",
519      "--tag",
520      "revision:abc123",
521      "--tag",
522      "stepname:task-1",
523      "--isolated",
524      "[dummy hash for task-1]",
525      "--",
526      "--extra"
527    ],
528    "infra_step": true,
529    "name": "[trigger] task-1",
530    "~followup_annotations": [
531      "@@@STEP_TEXT@Run on OS: 'Linux'@@@",
532      "@@@STEP_LOG_LINE@json.output@{@@@",
533      "@@@STEP_LOG_LINE@json.output@  \"base_task_name\": \"task-1/Linux/[dummy has\", @@@",
534      "@@@STEP_LOG_LINE@json.output@  \"tasks\": {@@@",
535      "@@@STEP_LOG_LINE@json.output@    \"task-1/Linux/[dummy has\": {@@@",
536      "@@@STEP_LOG_LINE@json.output@      \"shard_index\": 0, @@@",
537      "@@@STEP_LOG_LINE@json.output@      \"task_id\": \"10000\", @@@",
538      "@@@STEP_LOG_LINE@json.output@      \"view_url\": \"https://chromium-swarm.appspot.com/user/task/10000\"@@@",
539      "@@@STEP_LOG_LINE@json.output@    }@@@",
540      "@@@STEP_LOG_LINE@json.output@  }@@@",
541      "@@@STEP_LOG_LINE@json.output@}@@@",
542      "@@@STEP_LOG_END@json.output@@@",
543      "@@@STEP_LINK@shard #0@https://chromium-swarm.appspot.com/user/task/10000@@@",
544      "@@@STEP_LINK@view steps on Milo@https://luci-milo.appspot.com/swarming/task/10000@@@"
545    ]
546  },
547  {
548    "cmd": [
549      "python",
550      "-u",
551      "RECIPE_MODULE[skia::swarming]/resources/collect_task.py",
552      "-o",
553      "/path/to/tmp/json",
554      "--task-output-dir",
555      "[START_DIR]/swarming_temp_dir/outputs/task-4",
556      "--merge-script",
557      "RECIPE_MODULE[skia::swarming]/resources/noop_merge.py",
558      "--merge-additional-args",
559      "[]",
560      "--",
561      "python",
562      "-u",
563      "[START_DIR]/swarming.client/swarming.py",
564      "collect",
565      "--swarming",
566      "https://chromium-swarm.appspot.com",
567      "--decorate",
568      "--print-status-updates",
569      "--json",
570      "{\"base_task_name\": \"task-4/Linux/[dummy has\", \"tasks\": {\"task-4/Linux/[dummy has\": {\"shard_index\": 0, \"task_id\": \"10000\", \"view_url\": \"https://chromium-swarm.appspot.com/user/task/10000\"}}}",
571      "--task-summary-json",
572      "/path/to/tmp/json"
573    ],
574    "name": "task-4",
575    "~followup_annotations": [
576      "@@@STEP_TEXT@Run on OS: 'Linux'<br>swarming pending 71s@@@",
577      "@@@STEP_LOG_LINE@json.output@{}@@@",
578      "@@@STEP_LOG_END@json.output@@@",
579      "@@@STEP_LOG_LINE@swarming.summary@{@@@",
580      "@@@STEP_LOG_LINE@swarming.summary@  \"shards\": [@@@",
581      "@@@STEP_LOG_LINE@swarming.summary@    {@@@",
582      "@@@STEP_LOG_LINE@swarming.summary@      \"abandoned_ts\": null, @@@",
583      "@@@STEP_LOG_LINE@swarming.summary@      \"bot_id\": \"vm30\", @@@",
584      "@@@STEP_LOG_LINE@swarming.summary@      \"completed_ts\": \"2014-09-25T01:42:00.123\", @@@",
585      "@@@STEP_LOG_LINE@swarming.summary@      \"created_ts\": \"2014-09-25T01:41:00.123\", @@@",
586      "@@@STEP_LOG_LINE@swarming.summary@      \"durations\": [@@@",
587      "@@@STEP_LOG_LINE@swarming.summary@        5.7, @@@",
588      "@@@STEP_LOG_LINE@swarming.summary@        31.5@@@",
589      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
590      "@@@STEP_LOG_LINE@swarming.summary@      \"exit_codes\": [@@@",
591      "@@@STEP_LOG_LINE@swarming.summary@        0, @@@",
592      "@@@STEP_LOG_LINE@swarming.summary@        0@@@",
593      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
594      "@@@STEP_LOG_LINE@swarming.summary@      \"failure\": false, @@@",
595      "@@@STEP_LOG_LINE@swarming.summary@      \"id\": \"148aa78d7aa0000\", @@@",
596      "@@@STEP_LOG_LINE@swarming.summary@      \"internal_failure\": false, @@@",
597      "@@@STEP_LOG_LINE@swarming.summary@      \"isolated_out\": {@@@",
598      "@@@STEP_LOG_LINE@swarming.summary@        \"isolated\": \"abc123\", @@@",
599      "@@@STEP_LOG_LINE@swarming.summary@        \"isolatedserver\": \"https://isolateserver.appspot.com\", @@@",
600      "@@@STEP_LOG_LINE@swarming.summary@        \"namespace\": \"default-gzip\", @@@",
601      "@@@STEP_LOG_LINE@swarming.summary@        \"view_url\": \"blah\"@@@",
602      "@@@STEP_LOG_LINE@swarming.summary@      }, @@@",
603      "@@@STEP_LOG_LINE@swarming.summary@      \"modified_ts\": \"2014-09-25 01:42:00\", @@@",
604      "@@@STEP_LOG_LINE@swarming.summary@      \"name\": \"heartbeat-canary-2014-09-25_01:41:55-os=Windows\", @@@",
605      "@@@STEP_LOG_LINE@swarming.summary@      \"outputs\": [@@@",
606      "@@@STEP_LOG_LINE@swarming.summary@        \"Heart beat succeeded on win32.\\n\", @@@",
607      "@@@STEP_LOG_LINE@swarming.summary@        \"Foo\"@@@",
608      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
609      "@@@STEP_LOG_LINE@swarming.summary@      \"outputs_ref\": {@@@",
610      "@@@STEP_LOG_LINE@swarming.summary@        \"view_url\": \"blah\"@@@",
611      "@@@STEP_LOG_LINE@swarming.summary@      }, @@@",
612      "@@@STEP_LOG_LINE@swarming.summary@      \"started_ts\": \"2014-09-25T01:42:11.123\", @@@",
613      "@@@STEP_LOG_LINE@swarming.summary@      \"state\": 112, @@@",
614      "@@@STEP_LOG_LINE@swarming.summary@      \"try_number\": 1, @@@",
615      "@@@STEP_LOG_LINE@swarming.summary@      \"user\": \"unknown\"@@@",
616      "@@@STEP_LOG_LINE@swarming.summary@    }@@@",
617      "@@@STEP_LOG_LINE@swarming.summary@  ]@@@",
618      "@@@STEP_LOG_LINE@swarming.summary@}@@@",
619      "@@@STEP_LOG_END@swarming.summary@@@",
620      "@@@STEP_LINK@shard #0 isolated out@blah@@@",
621      "@@@STEP_LINK@view steps on Milo@https://luci-milo.appspot.com/swarming/task/148aa78d7aa0000@@@"
622    ]
623  },
624  {
625    "cmd": [
626      "python",
627      "-u",
628      "RECIPE_MODULE[skia::swarming]/resources/collect_task.py",
629      "-o",
630      "/path/to/tmp/json",
631      "--task-output-dir",
632      "[START_DIR]/swarming_temp_dir/outputs/task-2",
633      "--merge-script",
634      "RECIPE_MODULE[skia::swarming]/resources/noop_merge.py",
635      "--merge-additional-args",
636      "[]",
637      "--",
638      "python",
639      "-u",
640      "[START_DIR]/swarming.client/swarming.py",
641      "collect",
642      "--swarming",
643      "https://chromium-swarm.appspot.com",
644      "--decorate",
645      "--print-status-updates",
646      "--json",
647      "{\"base_task_name\": \"task-2/Linux/[dummy has\", \"tasks\": {\"task-2/Linux/[dummy has\": {\"shard_index\": 0, \"task_id\": \"10000\", \"view_url\": \"https://chromium-swarm.appspot.com/user/task/10000\"}}}",
648      "--task-summary-json",
649      "/path/to/tmp/json"
650    ],
651    "name": "task-2",
652    "~followup_annotations": [
653      "@@@STEP_TEXT@Run on OS: 'Linux'<br>swarming pending 71s@@@",
654      "@@@STEP_LOG_LINE@json.output@{}@@@",
655      "@@@STEP_LOG_END@json.output@@@",
656      "@@@STEP_LOG_LINE@swarming.summary@{@@@",
657      "@@@STEP_LOG_LINE@swarming.summary@  \"shards\": [@@@",
658      "@@@STEP_LOG_LINE@swarming.summary@    {@@@",
659      "@@@STEP_LOG_LINE@swarming.summary@      \"abandoned_ts\": null, @@@",
660      "@@@STEP_LOG_LINE@swarming.summary@      \"bot_id\": \"vm30\", @@@",
661      "@@@STEP_LOG_LINE@swarming.summary@      \"completed_ts\": \"2014-09-25T01:42:00.123\", @@@",
662      "@@@STEP_LOG_LINE@swarming.summary@      \"created_ts\": \"2014-09-25T01:41:00.123\", @@@",
663      "@@@STEP_LOG_LINE@swarming.summary@      \"durations\": [@@@",
664      "@@@STEP_LOG_LINE@swarming.summary@        5.7, @@@",
665      "@@@STEP_LOG_LINE@swarming.summary@        31.5@@@",
666      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
667      "@@@STEP_LOG_LINE@swarming.summary@      \"exit_codes\": [@@@",
668      "@@@STEP_LOG_LINE@swarming.summary@        0, @@@",
669      "@@@STEP_LOG_LINE@swarming.summary@        0@@@",
670      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
671      "@@@STEP_LOG_LINE@swarming.summary@      \"failure\": false, @@@",
672      "@@@STEP_LOG_LINE@swarming.summary@      \"id\": \"148aa78d7aa0000\", @@@",
673      "@@@STEP_LOG_LINE@swarming.summary@      \"internal_failure\": false, @@@",
674      "@@@STEP_LOG_LINE@swarming.summary@      \"isolated_out\": {@@@",
675      "@@@STEP_LOG_LINE@swarming.summary@        \"isolated\": \"abc123\", @@@",
676      "@@@STEP_LOG_LINE@swarming.summary@        \"isolatedserver\": \"https://isolateserver.appspot.com\", @@@",
677      "@@@STEP_LOG_LINE@swarming.summary@        \"namespace\": \"default-gzip\", @@@",
678      "@@@STEP_LOG_LINE@swarming.summary@        \"view_url\": \"blah\"@@@",
679      "@@@STEP_LOG_LINE@swarming.summary@      }, @@@",
680      "@@@STEP_LOG_LINE@swarming.summary@      \"modified_ts\": \"2014-09-25 01:42:00\", @@@",
681      "@@@STEP_LOG_LINE@swarming.summary@      \"name\": \"heartbeat-canary-2014-09-25_01:41:55-os=Windows\", @@@",
682      "@@@STEP_LOG_LINE@swarming.summary@      \"outputs\": [@@@",
683      "@@@STEP_LOG_LINE@swarming.summary@        \"Heart beat succeeded on win32.\\n\", @@@",
684      "@@@STEP_LOG_LINE@swarming.summary@        \"Foo\"@@@",
685      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
686      "@@@STEP_LOG_LINE@swarming.summary@      \"outputs_ref\": {@@@",
687      "@@@STEP_LOG_LINE@swarming.summary@        \"view_url\": \"blah\"@@@",
688      "@@@STEP_LOG_LINE@swarming.summary@      }, @@@",
689      "@@@STEP_LOG_LINE@swarming.summary@      \"started_ts\": \"2014-09-25T01:42:11.123\", @@@",
690      "@@@STEP_LOG_LINE@swarming.summary@      \"state\": 112, @@@",
691      "@@@STEP_LOG_LINE@swarming.summary@      \"try_number\": 1, @@@",
692      "@@@STEP_LOG_LINE@swarming.summary@      \"user\": \"unknown\"@@@",
693      "@@@STEP_LOG_LINE@swarming.summary@    }@@@",
694      "@@@STEP_LOG_LINE@swarming.summary@  ]@@@",
695      "@@@STEP_LOG_LINE@swarming.summary@}@@@",
696      "@@@STEP_LOG_END@swarming.summary@@@",
697      "@@@STEP_LINK@shard #0 isolated out@blah@@@",
698      "@@@STEP_LINK@view steps on Milo@https://luci-milo.appspot.com/swarming/task/148aa78d7aa0000@@@"
699    ]
700  },
701  {
702    "cmd": [
703      "python",
704      "-u",
705      "RECIPE_MODULE[skia::swarming]/resources/collect_task.py",
706      "-o",
707      "/path/to/tmp/json",
708      "--task-output-dir",
709      "[START_DIR]/swarming_temp_dir/outputs/task-3",
710      "--merge-script",
711      "RECIPE_MODULE[skia::swarming]/resources/noop_merge.py",
712      "--merge-additional-args",
713      "[]",
714      "--",
715      "python",
716      "-u",
717      "[START_DIR]/swarming.client/swarming.py",
718      "collect",
719      "--swarming",
720      "https://chromium-swarm.appspot.com",
721      "--decorate",
722      "--print-status-updates",
723      "--json",
724      "{\"base_task_name\": \"task-3/Linux/[dummy has\", \"tasks\": {\"task-3/Linux/[dummy has\": {\"shard_index\": 0, \"task_id\": \"10000\", \"view_url\": \"https://chromium-swarm.appspot.com/user/task/10000\"}}}",
725      "--task-summary-json",
726      "/path/to/tmp/json"
727    ],
728    "name": "task-3",
729    "~followup_annotations": [
730      "@@@STEP_TEXT@Run on OS: 'Linux'<br>swarming pending 71s@@@",
731      "@@@STEP_LOG_LINE@json.output@{}@@@",
732      "@@@STEP_LOG_END@json.output@@@",
733      "@@@STEP_LOG_LINE@swarming.summary@{@@@",
734      "@@@STEP_LOG_LINE@swarming.summary@  \"shards\": [@@@",
735      "@@@STEP_LOG_LINE@swarming.summary@    {@@@",
736      "@@@STEP_LOG_LINE@swarming.summary@      \"abandoned_ts\": null, @@@",
737      "@@@STEP_LOG_LINE@swarming.summary@      \"bot_id\": \"vm30\", @@@",
738      "@@@STEP_LOG_LINE@swarming.summary@      \"completed_ts\": \"2014-09-25T01:42:00.123\", @@@",
739      "@@@STEP_LOG_LINE@swarming.summary@      \"created_ts\": \"2014-09-25T01:41:00.123\", @@@",
740      "@@@STEP_LOG_LINE@swarming.summary@      \"durations\": [@@@",
741      "@@@STEP_LOG_LINE@swarming.summary@        5.7, @@@",
742      "@@@STEP_LOG_LINE@swarming.summary@        31.5@@@",
743      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
744      "@@@STEP_LOG_LINE@swarming.summary@      \"exit_codes\": [@@@",
745      "@@@STEP_LOG_LINE@swarming.summary@        0, @@@",
746      "@@@STEP_LOG_LINE@swarming.summary@        0@@@",
747      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
748      "@@@STEP_LOG_LINE@swarming.summary@      \"failure\": false, @@@",
749      "@@@STEP_LOG_LINE@swarming.summary@      \"id\": \"148aa78d7aa0000\", @@@",
750      "@@@STEP_LOG_LINE@swarming.summary@      \"internal_failure\": false, @@@",
751      "@@@STEP_LOG_LINE@swarming.summary@      \"isolated_out\": {@@@",
752      "@@@STEP_LOG_LINE@swarming.summary@        \"isolated\": \"abc123\", @@@",
753      "@@@STEP_LOG_LINE@swarming.summary@        \"isolatedserver\": \"https://isolateserver.appspot.com\", @@@",
754      "@@@STEP_LOG_LINE@swarming.summary@        \"namespace\": \"default-gzip\", @@@",
755      "@@@STEP_LOG_LINE@swarming.summary@        \"view_url\": \"blah\"@@@",
756      "@@@STEP_LOG_LINE@swarming.summary@      }, @@@",
757      "@@@STEP_LOG_LINE@swarming.summary@      \"modified_ts\": \"2014-09-25 01:42:00\", @@@",
758      "@@@STEP_LOG_LINE@swarming.summary@      \"name\": \"heartbeat-canary-2014-09-25_01:41:55-os=Windows\", @@@",
759      "@@@STEP_LOG_LINE@swarming.summary@      \"outputs\": [@@@",
760      "@@@STEP_LOG_LINE@swarming.summary@        \"Heart beat succeeded on win32.\\n\", @@@",
761      "@@@STEP_LOG_LINE@swarming.summary@        \"Foo\"@@@",
762      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
763      "@@@STEP_LOG_LINE@swarming.summary@      \"outputs_ref\": {@@@",
764      "@@@STEP_LOG_LINE@swarming.summary@        \"view_url\": \"blah\"@@@",
765      "@@@STEP_LOG_LINE@swarming.summary@      }, @@@",
766      "@@@STEP_LOG_LINE@swarming.summary@      \"started_ts\": \"2014-09-25T01:42:11.123\", @@@",
767      "@@@STEP_LOG_LINE@swarming.summary@      \"state\": 112, @@@",
768      "@@@STEP_LOG_LINE@swarming.summary@      \"try_number\": 1, @@@",
769      "@@@STEP_LOG_LINE@swarming.summary@      \"user\": \"unknown\"@@@",
770      "@@@STEP_LOG_LINE@swarming.summary@    }@@@",
771      "@@@STEP_LOG_LINE@swarming.summary@  ]@@@",
772      "@@@STEP_LOG_LINE@swarming.summary@}@@@",
773      "@@@STEP_LOG_END@swarming.summary@@@",
774      "@@@STEP_LINK@shard #0 isolated out@blah@@@",
775      "@@@STEP_LINK@view steps on Milo@https://luci-milo.appspot.com/swarming/task/148aa78d7aa0000@@@"
776    ]
777  },
778  {
779    "cmd": [
780      "python",
781      "-u",
782      "RECIPE_MODULE[skia::swarming]/resources/collect_task.py",
783      "-o",
784      "/path/to/tmp/json",
785      "--task-output-dir",
786      "[START_DIR]/swarming_temp_dir/outputs/task-0",
787      "--merge-script",
788      "RECIPE_MODULE[skia::swarming]/resources/noop_merge.py",
789      "--merge-additional-args",
790      "[]",
791      "--",
792      "python",
793      "-u",
794      "[START_DIR]/swarming.client/swarming.py",
795      "collect",
796      "--swarming",
797      "https://chromium-swarm.appspot.com",
798      "--decorate",
799      "--print-status-updates",
800      "--json",
801      "{\"base_task_name\": \"task-0/Linux/[dummy has\", \"tasks\": {\"task-0/Linux/[dummy has\": {\"shard_index\": 0, \"task_id\": \"10000\", \"view_url\": \"https://chromium-swarm.appspot.com/user/task/10000\"}}}",
802      "--task-summary-json",
803      "/path/to/tmp/json"
804    ],
805    "name": "task-0",
806    "~followup_annotations": [
807      "@@@STEP_TEXT@Run on OS: 'Linux'<br>swarming pending 71s@@@",
808      "@@@STEP_LOG_LINE@json.output@{}@@@",
809      "@@@STEP_LOG_END@json.output@@@",
810      "@@@STEP_LOG_LINE@swarming.summary@{@@@",
811      "@@@STEP_LOG_LINE@swarming.summary@  \"shards\": [@@@",
812      "@@@STEP_LOG_LINE@swarming.summary@    {@@@",
813      "@@@STEP_LOG_LINE@swarming.summary@      \"abandoned_ts\": null, @@@",
814      "@@@STEP_LOG_LINE@swarming.summary@      \"bot_id\": \"vm30\", @@@",
815      "@@@STEP_LOG_LINE@swarming.summary@      \"completed_ts\": \"2014-09-25T01:42:00.123\", @@@",
816      "@@@STEP_LOG_LINE@swarming.summary@      \"created_ts\": \"2014-09-25T01:41:00.123\", @@@",
817      "@@@STEP_LOG_LINE@swarming.summary@      \"durations\": [@@@",
818      "@@@STEP_LOG_LINE@swarming.summary@        5.7, @@@",
819      "@@@STEP_LOG_LINE@swarming.summary@        31.5@@@",
820      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
821      "@@@STEP_LOG_LINE@swarming.summary@      \"exit_codes\": [@@@",
822      "@@@STEP_LOG_LINE@swarming.summary@        0, @@@",
823      "@@@STEP_LOG_LINE@swarming.summary@        0@@@",
824      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
825      "@@@STEP_LOG_LINE@swarming.summary@      \"failure\": false, @@@",
826      "@@@STEP_LOG_LINE@swarming.summary@      \"id\": \"148aa78d7aa0000\", @@@",
827      "@@@STEP_LOG_LINE@swarming.summary@      \"internal_failure\": false, @@@",
828      "@@@STEP_LOG_LINE@swarming.summary@      \"isolated_out\": {@@@",
829      "@@@STEP_LOG_LINE@swarming.summary@        \"isolated\": \"abc123\", @@@",
830      "@@@STEP_LOG_LINE@swarming.summary@        \"isolatedserver\": \"https://isolateserver.appspot.com\", @@@",
831      "@@@STEP_LOG_LINE@swarming.summary@        \"namespace\": \"default-gzip\", @@@",
832      "@@@STEP_LOG_LINE@swarming.summary@        \"view_url\": \"blah\"@@@",
833      "@@@STEP_LOG_LINE@swarming.summary@      }, @@@",
834      "@@@STEP_LOG_LINE@swarming.summary@      \"modified_ts\": \"2014-09-25 01:42:00\", @@@",
835      "@@@STEP_LOG_LINE@swarming.summary@      \"name\": \"heartbeat-canary-2014-09-25_01:41:55-os=Windows\", @@@",
836      "@@@STEP_LOG_LINE@swarming.summary@      \"outputs\": [@@@",
837      "@@@STEP_LOG_LINE@swarming.summary@        \"Heart beat succeeded on win32.\\n\", @@@",
838      "@@@STEP_LOG_LINE@swarming.summary@        \"Foo\"@@@",
839      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
840      "@@@STEP_LOG_LINE@swarming.summary@      \"outputs_ref\": {@@@",
841      "@@@STEP_LOG_LINE@swarming.summary@        \"view_url\": \"blah\"@@@",
842      "@@@STEP_LOG_LINE@swarming.summary@      }, @@@",
843      "@@@STEP_LOG_LINE@swarming.summary@      \"started_ts\": \"2014-09-25T01:42:11.123\", @@@",
844      "@@@STEP_LOG_LINE@swarming.summary@      \"state\": 112, @@@",
845      "@@@STEP_LOG_LINE@swarming.summary@      \"try_number\": 1, @@@",
846      "@@@STEP_LOG_LINE@swarming.summary@      \"user\": \"unknown\"@@@",
847      "@@@STEP_LOG_LINE@swarming.summary@    }@@@",
848      "@@@STEP_LOG_LINE@swarming.summary@  ]@@@",
849      "@@@STEP_LOG_LINE@swarming.summary@}@@@",
850      "@@@STEP_LOG_END@swarming.summary@@@",
851      "@@@STEP_LINK@shard #0 isolated out@blah@@@",
852      "@@@STEP_LINK@view steps on Milo@https://luci-milo.appspot.com/swarming/task/148aa78d7aa0000@@@"
853    ]
854  },
855  {
856    "cmd": [
857      "python",
858      "-u",
859      "RECIPE_MODULE[skia::swarming]/resources/collect_task.py",
860      "-o",
861      "/path/to/tmp/json",
862      "--task-output-dir",
863      "[START_DIR]/swarming_temp_dir/outputs/task-1",
864      "--merge-script",
865      "RECIPE_MODULE[skia::swarming]/resources/noop_merge.py",
866      "--merge-additional-args",
867      "[]",
868      "--",
869      "python",
870      "-u",
871      "[START_DIR]/swarming.client/swarming.py",
872      "collect",
873      "--swarming",
874      "https://chromium-swarm.appspot.com",
875      "--decorate",
876      "--print-status-updates",
877      "--json",
878      "{\"base_task_name\": \"task-1/Linux/[dummy has\", \"tasks\": {\"task-1/Linux/[dummy has\": {\"shard_index\": 0, \"task_id\": \"10000\", \"view_url\": \"https://chromium-swarm.appspot.com/user/task/10000\"}}}",
879      "--task-summary-json",
880      "/path/to/tmp/json"
881    ],
882    "name": "task-1",
883    "~followup_annotations": [
884      "@@@STEP_TEXT@Run on OS: 'Linux'<br>swarming pending 71s@@@",
885      "@@@STEP_LOG_LINE@json.output@{}@@@",
886      "@@@STEP_LOG_END@json.output@@@",
887      "@@@STEP_LOG_LINE@swarming.summary@{@@@",
888      "@@@STEP_LOG_LINE@swarming.summary@  \"shards\": [@@@",
889      "@@@STEP_LOG_LINE@swarming.summary@    {@@@",
890      "@@@STEP_LOG_LINE@swarming.summary@      \"abandoned_ts\": null, @@@",
891      "@@@STEP_LOG_LINE@swarming.summary@      \"bot_id\": \"vm30\", @@@",
892      "@@@STEP_LOG_LINE@swarming.summary@      \"completed_ts\": \"2014-09-25T01:42:00.123\", @@@",
893      "@@@STEP_LOG_LINE@swarming.summary@      \"created_ts\": \"2014-09-25T01:41:00.123\", @@@",
894      "@@@STEP_LOG_LINE@swarming.summary@      \"durations\": [@@@",
895      "@@@STEP_LOG_LINE@swarming.summary@        5.7, @@@",
896      "@@@STEP_LOG_LINE@swarming.summary@        31.5@@@",
897      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
898      "@@@STEP_LOG_LINE@swarming.summary@      \"exit_codes\": [@@@",
899      "@@@STEP_LOG_LINE@swarming.summary@        0, @@@",
900      "@@@STEP_LOG_LINE@swarming.summary@        0@@@",
901      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
902      "@@@STEP_LOG_LINE@swarming.summary@      \"failure\": false, @@@",
903      "@@@STEP_LOG_LINE@swarming.summary@      \"id\": \"148aa78d7aa0000\", @@@",
904      "@@@STEP_LOG_LINE@swarming.summary@      \"internal_failure\": false, @@@",
905      "@@@STEP_LOG_LINE@swarming.summary@      \"isolated_out\": {@@@",
906      "@@@STEP_LOG_LINE@swarming.summary@        \"isolated\": \"abc123\", @@@",
907      "@@@STEP_LOG_LINE@swarming.summary@        \"isolatedserver\": \"https://isolateserver.appspot.com\", @@@",
908      "@@@STEP_LOG_LINE@swarming.summary@        \"namespace\": \"default-gzip\", @@@",
909      "@@@STEP_LOG_LINE@swarming.summary@        \"view_url\": \"blah\"@@@",
910      "@@@STEP_LOG_LINE@swarming.summary@      }, @@@",
911      "@@@STEP_LOG_LINE@swarming.summary@      \"modified_ts\": \"2014-09-25 01:42:00\", @@@",
912      "@@@STEP_LOG_LINE@swarming.summary@      \"name\": \"heartbeat-canary-2014-09-25_01:41:55-os=Windows\", @@@",
913      "@@@STEP_LOG_LINE@swarming.summary@      \"outputs\": [@@@",
914      "@@@STEP_LOG_LINE@swarming.summary@        \"Heart beat succeeded on win32.\\n\", @@@",
915      "@@@STEP_LOG_LINE@swarming.summary@        \"Foo\"@@@",
916      "@@@STEP_LOG_LINE@swarming.summary@      ], @@@",
917      "@@@STEP_LOG_LINE@swarming.summary@      \"outputs_ref\": {@@@",
918      "@@@STEP_LOG_LINE@swarming.summary@        \"view_url\": \"blah\"@@@",
919      "@@@STEP_LOG_LINE@swarming.summary@      }, @@@",
920      "@@@STEP_LOG_LINE@swarming.summary@      \"started_ts\": \"2014-09-25T01:42:11.123\", @@@",
921      "@@@STEP_LOG_LINE@swarming.summary@      \"state\": 112, @@@",
922      "@@@STEP_LOG_LINE@swarming.summary@      \"try_number\": 1, @@@",
923      "@@@STEP_LOG_LINE@swarming.summary@      \"user\": \"unknown\"@@@",
924      "@@@STEP_LOG_LINE@swarming.summary@    }@@@",
925      "@@@STEP_LOG_LINE@swarming.summary@  ]@@@",
926      "@@@STEP_LOG_LINE@swarming.summary@}@@@",
927      "@@@STEP_LOG_END@swarming.summary@@@",
928      "@@@STEP_LINK@shard #0 isolated out@blah@@@",
929      "@@@STEP_LINK@view steps on Milo@https://luci-milo.appspot.com/swarming/task/148aa78d7aa0000@@@"
930    ]
931  },
932  {
933    "name": "$result",
934    "recipe_result": null,
935    "status_code": 0
936  }
937]