1[ 2 { 3 "cmd": [ 4 "adb", 5 "shell", 6 "mkdir", 7 "-p", 8 "/sdcard/revenge_of_the_skiabot/resources" 9 ], 10 "cwd": "[START_DIR]/skia", 11 "env": { 12 "BUILDTYPE": "Debug", 13 "CHROME_HEADLESS": "1", 14 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 15 "SKIA_OUT": "[START_DIR]/out" 16 }, 17 "infra_step": true, 18 "name": "mkdir /sdcard/revenge_of_the_skiabot/resources" 19 }, 20 { 21 "cmd": [ 22 "python", 23 "-u", 24 "\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n", 25 "[START_DIR]/skia/resources", 26 "/sdcard/revenge_of_the_skiabot/resources" 27 ], 28 "env": { 29 "BUILDTYPE": "Debug", 30 "CHROME_HEADLESS": "1", 31 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 32 "SKIA_OUT": "[START_DIR]/out" 33 }, 34 "infra_step": true, 35 "name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources", 36 "~followup_annotations": [ 37 "@@@STEP_LOG_LINE@python.inline@@@@", 38 "@@@STEP_LOG_LINE@python.inline@import os@@@", 39 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 40 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 41 "@@@STEP_LOG_LINE@python.inline@host = sys.argv[1]@@@", 42 "@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@", 43 "@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@", 44 "@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@", 45 "@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@", 46 "@@@STEP_LOG_LINE@python.inline@ continue@@@", 47 "@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@", 48 "@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@", 49 "@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@", 50 "@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@", 51 "@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@", 52 "@@@STEP_LOG_END@python.inline@@@" 53 ] 54 }, 55 { 56 "cmd": [ 57 "python", 58 "-u", 59 "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", 60 "[START_DIR]/skia/infra/bots/assets/skp/VERSION", 61 "/path/to/tmp/" 62 ], 63 "infra_step": true, 64 "name": "Get downloaded SKP VERSION" 65 }, 66 { 67 "cmd": [ 68 "python", 69 "-u", 70 "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", 71 "42", 72 "[START_DIR]/tmp/SKP_VERSION" 73 ], 74 "infra_step": true, 75 "name": "write SKP_VERSION" 76 }, 77 { 78 "cmd": [ 79 "adb", 80 "shell", 81 "cat", 82 "/sdcard/revenge_of_the_skiabot/SKP_VERSION" 83 ], 84 "cwd": "[START_DIR]/skia", 85 "env": { 86 "BUILDTYPE": "Debug", 87 "CHROME_HEADLESS": "1", 88 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 89 "SKIA_OUT": "[START_DIR]/out" 90 }, 91 "infra_step": true, 92 "name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION", 93 "stdout": "/path/to/tmp/" 94 }, 95 { 96 "cmd": [ 97 "adb", 98 "shell", 99 "rm", 100 "-f", 101 "/sdcard/revenge_of_the_skiabot/SKP_VERSION" 102 ], 103 "cwd": "[START_DIR]/skia", 104 "env": { 105 "BUILDTYPE": "Debug", 106 "CHROME_HEADLESS": "1", 107 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 108 "SKIA_OUT": "[START_DIR]/out" 109 }, 110 "infra_step": true, 111 "name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION" 112 }, 113 { 114 "cmd": [ 115 "adb", 116 "shell", 117 "rm", 118 "-rf", 119 "/sdcard/revenge_of_the_skiabot/skps" 120 ], 121 "cwd": "[START_DIR]/skia", 122 "env": { 123 "BUILDTYPE": "Debug", 124 "CHROME_HEADLESS": "1", 125 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 126 "SKIA_OUT": "[START_DIR]/out" 127 }, 128 "infra_step": true, 129 "name": "rm /sdcard/revenge_of_the_skiabot/skps" 130 }, 131 { 132 "cmd": [ 133 "adb", 134 "shell", 135 "mkdir", 136 "-p", 137 "/sdcard/revenge_of_the_skiabot/skps" 138 ], 139 "cwd": "[START_DIR]/skia", 140 "env": { 141 "BUILDTYPE": "Debug", 142 "CHROME_HEADLESS": "1", 143 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 144 "SKIA_OUT": "[START_DIR]/out" 145 }, 146 "infra_step": true, 147 "name": "mkdir /sdcard/revenge_of_the_skiabot/skps" 148 }, 149 { 150 "cmd": [ 151 "python", 152 "-u", 153 "\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n", 154 "[START_DIR]/skp", 155 "/sdcard/revenge_of_the_skiabot/skps" 156 ], 157 "env": { 158 "BUILDTYPE": "Debug", 159 "CHROME_HEADLESS": "1", 160 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 161 "SKIA_OUT": "[START_DIR]/out" 162 }, 163 "infra_step": true, 164 "name": "push [START_DIR]/skp/* /sdcard/revenge_of_the_skiabot/skps", 165 "~followup_annotations": [ 166 "@@@STEP_LOG_LINE@python.inline@@@@", 167 "@@@STEP_LOG_LINE@python.inline@import os@@@", 168 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 169 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 170 "@@@STEP_LOG_LINE@python.inline@host = sys.argv[1]@@@", 171 "@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@", 172 "@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@", 173 "@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@", 174 "@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@", 175 "@@@STEP_LOG_LINE@python.inline@ continue@@@", 176 "@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@", 177 "@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@", 178 "@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@", 179 "@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@", 180 "@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@", 181 "@@@STEP_LOG_END@python.inline@@@" 182 ] 183 }, 184 { 185 "cmd": [ 186 "adb", 187 "push", 188 "[START_DIR]/tmp/SKP_VERSION", 189 "/sdcard/revenge_of_the_skiabot/SKP_VERSION" 190 ], 191 "cwd": "[START_DIR]/skia", 192 "env": { 193 "BUILDTYPE": "Debug", 194 "CHROME_HEADLESS": "1", 195 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 196 "SKIA_OUT": "[START_DIR]/out" 197 }, 198 "infra_step": true, 199 "name": "push [START_DIR]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION" 200 }, 201 { 202 "cmd": [ 203 "python", 204 "-u", 205 "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", 206 "[START_DIR]/skia/infra/bots/assets/skimage/VERSION", 207 "/path/to/tmp/" 208 ], 209 "infra_step": true, 210 "name": "Get downloaded skimage VERSION" 211 }, 212 { 213 "cmd": [ 214 "python", 215 "-u", 216 "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", 217 "42", 218 "[START_DIR]/tmp/SK_IMAGE_VERSION" 219 ], 220 "infra_step": true, 221 "name": "write SK_IMAGE_VERSION" 222 }, 223 { 224 "cmd": [ 225 "adb", 226 "shell", 227 "cat", 228 "/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION" 229 ], 230 "cwd": "[START_DIR]/skia", 231 "env": { 232 "BUILDTYPE": "Debug", 233 "CHROME_HEADLESS": "1", 234 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 235 "SKIA_OUT": "[START_DIR]/out" 236 }, 237 "infra_step": true, 238 "name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION", 239 "stdout": "/path/to/tmp/" 240 }, 241 { 242 "cmd": [ 243 "adb", 244 "shell", 245 "rm", 246 "-f", 247 "/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION" 248 ], 249 "cwd": "[START_DIR]/skia", 250 "env": { 251 "BUILDTYPE": "Debug", 252 "CHROME_HEADLESS": "1", 253 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 254 "SKIA_OUT": "[START_DIR]/out" 255 }, 256 "infra_step": true, 257 "name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION" 258 }, 259 { 260 "cmd": [ 261 "adb", 262 "shell", 263 "rm", 264 "-rf", 265 "/sdcard/revenge_of_the_skiabot/images" 266 ], 267 "cwd": "[START_DIR]/skia", 268 "env": { 269 "BUILDTYPE": "Debug", 270 "CHROME_HEADLESS": "1", 271 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 272 "SKIA_OUT": "[START_DIR]/out" 273 }, 274 "infra_step": true, 275 "name": "rm /sdcard/revenge_of_the_skiabot/images" 276 }, 277 { 278 "cmd": [ 279 "adb", 280 "shell", 281 "mkdir", 282 "-p", 283 "/sdcard/revenge_of_the_skiabot/images" 284 ], 285 "cwd": "[START_DIR]/skia", 286 "env": { 287 "BUILDTYPE": "Debug", 288 "CHROME_HEADLESS": "1", 289 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 290 "SKIA_OUT": "[START_DIR]/out" 291 }, 292 "infra_step": true, 293 "name": "mkdir /sdcard/revenge_of_the_skiabot/images" 294 }, 295 { 296 "cmd": [ 297 "python", 298 "-u", 299 "\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n", 300 "[START_DIR]/skimage", 301 "/sdcard/revenge_of_the_skiabot/images" 302 ], 303 "env": { 304 "BUILDTYPE": "Debug", 305 "CHROME_HEADLESS": "1", 306 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 307 "SKIA_OUT": "[START_DIR]/out" 308 }, 309 "infra_step": true, 310 "name": "push [START_DIR]/skimage/* /sdcard/revenge_of_the_skiabot/images", 311 "~followup_annotations": [ 312 "@@@STEP_LOG_LINE@python.inline@@@@", 313 "@@@STEP_LOG_LINE@python.inline@import os@@@", 314 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 315 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 316 "@@@STEP_LOG_LINE@python.inline@host = sys.argv[1]@@@", 317 "@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@", 318 "@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@", 319 "@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@", 320 "@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@", 321 "@@@STEP_LOG_LINE@python.inline@ continue@@@", 322 "@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@", 323 "@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@", 324 "@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@", 325 "@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@", 326 "@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@", 327 "@@@STEP_LOG_END@python.inline@@@" 328 ] 329 }, 330 { 331 "cmd": [ 332 "adb", 333 "push", 334 "[START_DIR]/tmp/SK_IMAGE_VERSION", 335 "/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION" 336 ], 337 "cwd": "[START_DIR]/skia", 338 "env": { 339 "BUILDTYPE": "Debug", 340 "CHROME_HEADLESS": "1", 341 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 342 "SKIA_OUT": "[START_DIR]/out" 343 }, 344 "infra_step": true, 345 "name": "push [START_DIR]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION" 346 }, 347 { 348 "cmd": [ 349 "python", 350 "-u", 351 "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", 352 "[START_DIR]/skia/infra/bots/assets/svg/VERSION", 353 "/path/to/tmp/" 354 ], 355 "infra_step": true, 356 "name": "Get downloaded SVG VERSION" 357 }, 358 { 359 "cmd": [ 360 "python", 361 "-u", 362 "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", 363 "42", 364 "[START_DIR]/tmp/SVG_VERSION" 365 ], 366 "infra_step": true, 367 "name": "write SVG_VERSION" 368 }, 369 { 370 "cmd": [ 371 "adb", 372 "shell", 373 "cat", 374 "/sdcard/revenge_of_the_skiabot/SVG_VERSION" 375 ], 376 "cwd": "[START_DIR]/skia", 377 "env": { 378 "BUILDTYPE": "Debug", 379 "CHROME_HEADLESS": "1", 380 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 381 "SKIA_OUT": "[START_DIR]/out" 382 }, 383 "infra_step": true, 384 "name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION", 385 "stdout": "/path/to/tmp/" 386 }, 387 { 388 "cmd": [ 389 "adb", 390 "shell", 391 "rm", 392 "-f", 393 "/sdcard/revenge_of_the_skiabot/SVG_VERSION" 394 ], 395 "cwd": "[START_DIR]/skia", 396 "env": { 397 "BUILDTYPE": "Debug", 398 "CHROME_HEADLESS": "1", 399 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 400 "SKIA_OUT": "[START_DIR]/out" 401 }, 402 "infra_step": true, 403 "name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION" 404 }, 405 { 406 "cmd": [ 407 "adb", 408 "shell", 409 "rm", 410 "-rf", 411 "/sdcard/revenge_of_the_skiabot/svgs" 412 ], 413 "cwd": "[START_DIR]/skia", 414 "env": { 415 "BUILDTYPE": "Debug", 416 "CHROME_HEADLESS": "1", 417 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 418 "SKIA_OUT": "[START_DIR]/out" 419 }, 420 "infra_step": true, 421 "name": "rm /sdcard/revenge_of_the_skiabot/svgs" 422 }, 423 { 424 "cmd": [ 425 "adb", 426 "shell", 427 "mkdir", 428 "-p", 429 "/sdcard/revenge_of_the_skiabot/svgs" 430 ], 431 "cwd": "[START_DIR]/skia", 432 "env": { 433 "BUILDTYPE": "Debug", 434 "CHROME_HEADLESS": "1", 435 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 436 "SKIA_OUT": "[START_DIR]/out" 437 }, 438 "infra_step": true, 439 "name": "mkdir /sdcard/revenge_of_the_skiabot/svgs" 440 }, 441 { 442 "cmd": [ 443 "python", 444 "-u", 445 "\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n", 446 "[START_DIR]/svg", 447 "/sdcard/revenge_of_the_skiabot/svgs" 448 ], 449 "env": { 450 "BUILDTYPE": "Debug", 451 "CHROME_HEADLESS": "1", 452 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 453 "SKIA_OUT": "[START_DIR]/out" 454 }, 455 "infra_step": true, 456 "name": "push [START_DIR]/svg/* /sdcard/revenge_of_the_skiabot/svgs", 457 "~followup_annotations": [ 458 "@@@STEP_LOG_LINE@python.inline@@@@", 459 "@@@STEP_LOG_LINE@python.inline@import os@@@", 460 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 461 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 462 "@@@STEP_LOG_LINE@python.inline@host = sys.argv[1]@@@", 463 "@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@", 464 "@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@", 465 "@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@", 466 "@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@", 467 "@@@STEP_LOG_LINE@python.inline@ continue@@@", 468 "@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@", 469 "@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@", 470 "@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@", 471 "@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@", 472 "@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@", 473 "@@@STEP_LOG_END@python.inline@@@" 474 ] 475 }, 476 { 477 "cmd": [ 478 "adb", 479 "push", 480 "[START_DIR]/tmp/SVG_VERSION", 481 "/sdcard/revenge_of_the_skiabot/SVG_VERSION" 482 ], 483 "cwd": "[START_DIR]/skia", 484 "env": { 485 "BUILDTYPE": "Debug", 486 "CHROME_HEADLESS": "1", 487 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 488 "SKIA_OUT": "[START_DIR]/out" 489 }, 490 "infra_step": true, 491 "name": "push [START_DIR]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION" 492 }, 493 { 494 "cmd": [ 495 "adb", 496 "push", 497 "[START_DIR]/out/Debug/nanobench", 498 "/data/local/tmp/" 499 ], 500 "cwd": "[START_DIR]/skia", 501 "env": { 502 "BUILDTYPE": "Debug", 503 "CHROME_HEADLESS": "1", 504 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 505 "SKIA_OUT": "[START_DIR]/out" 506 }, 507 "infra_step": true, 508 "name": "push nanobench" 509 }, 510 { 511 "cmd": [ 512 "python", 513 "-u", 514 "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", 515 "set -x; /data/local/tmp/nanobench --undefok -i /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/nanobench --svgs /sdcard/revenge_of_the_skiabot/svgs --nocpu --pre_log --images --gpuStatsDump true --useThermalManager 1,1,10,1000 --scales 1.0 1.1 --config 8888 nonrendering hwui gles glesmsaa4 glesnvpr4 glesnvprdit4 --match ~blurroundrect ~patch_grid ~desk_carsvg ~keymobi_shop_mobileweb_ebay_com.skp ~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; echo $? >/data/local/tmp/rc", 516 "[START_DIR]/tmp/nanobench.sh" 517 ], 518 "env": { 519 "BUILDTYPE": "Debug", 520 "CHROME_HEADLESS": "1", 521 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 522 "SKIA_OUT": "[START_DIR]/out" 523 }, 524 "infra_step": true, 525 "name": "write nanobench.sh" 526 }, 527 { 528 "cmd": [ 529 "adb", 530 "push", 531 "[START_DIR]/tmp/nanobench.sh", 532 "/data/local/tmp/" 533 ], 534 "cwd": "[START_DIR]/skia", 535 "env": { 536 "BUILDTYPE": "Debug", 537 "CHROME_HEADLESS": "1", 538 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 539 "SKIA_OUT": "[START_DIR]/out" 540 }, 541 "infra_step": true, 542 "name": "push nanobench.sh" 543 }, 544 { 545 "cmd": [ 546 "adb", 547 "logcat", 548 "-c" 549 ], 550 "cwd": "[START_DIR]/skia", 551 "env": { 552 "BUILDTYPE": "Debug", 553 "CHROME_HEADLESS": "1", 554 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 555 "SKIA_OUT": "[START_DIR]/out" 556 }, 557 "infra_step": true, 558 "name": "clear log" 559 }, 560 { 561 "cmd": [ 562 "python", 563 "-u", 564 "\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',\n bin_dir + 'rc'])))\nexcept ValueError:\n print \"Couldn't read the return code. Probably killed for OOM.\"\n sys.exit(1)\n", 565 "/data/local/tmp/", 566 "nanobench.sh" 567 ], 568 "env": { 569 "BUILDTYPE": "Debug", 570 "CHROME_HEADLESS": "1", 571 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 572 "SKIA_OUT": "[START_DIR]/out" 573 }, 574 "name": "nanobench", 575 "~followup_annotations": [ 576 "@@@STEP_LOG_LINE@python.inline@@@@", 577 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 578 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 579 "@@@STEP_LOG_LINE@python.inline@bin_dir = sys.argv[1]@@@", 580 "@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@", 581 "@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@", 582 "@@@STEP_LOG_LINE@python.inline@try:@@@", 583 "@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@", 584 "@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@", 585 "@@@STEP_LOG_LINE@python.inline@except ValueError:@@@", 586 "@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@", 587 "@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@", 588 "@@@STEP_LOG_END@python.inline@@@" 589 ] 590 }, 591 { 592 "cmd": [ 593 "python", 594 "-u", 595 "\nimport os\nimport subprocess\nimport sys\nout = sys.argv[1]\nlog = subprocess.check_output(['adb', 'logcat', '-d'])\nfor line in log.split('\\n'):\n tokens = line.split()\n if len(tokens) == 11 and tokens[-7] == 'F' and tokens[-3] == 'pc':\n addr, path = tokens[-2:]\n local = os.path.join(out, os.path.basename(path))\n if os.path.exists(local):\n sym = subprocess.check_output(['addr2line', '-Cfpe', local, addr])\n line = line.replace(addr, addr + ' ' + sym.strip())\n print line\n", 596 "[START_DIR]/out/Debug" 597 ], 598 "env": { 599 "BUILDTYPE": "Debug", 600 "CHROME_HEADLESS": "1", 601 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 602 "SKIA_OUT": "[START_DIR]/out" 603 }, 604 "infra_step": true, 605 "name": "dump log", 606 "~followup_annotations": [ 607 "@@@STEP_LOG_LINE@python.inline@@@@", 608 "@@@STEP_LOG_LINE@python.inline@import os@@@", 609 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 610 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 611 "@@@STEP_LOG_LINE@python.inline@out = sys.argv[1]@@@", 612 "@@@STEP_LOG_LINE@python.inline@log = subprocess.check_output(['adb', 'logcat', '-d'])@@@", 613 "@@@STEP_LOG_LINE@python.inline@for line in log.split('\\n'):@@@", 614 "@@@STEP_LOG_LINE@python.inline@ tokens = line.split()@@@", 615 "@@@STEP_LOG_LINE@python.inline@ if len(tokens) == 11 and tokens[-7] == 'F' and tokens[-3] == 'pc':@@@", 616 "@@@STEP_LOG_LINE@python.inline@ addr, path = tokens[-2:]@@@", 617 "@@@STEP_LOG_LINE@python.inline@ local = os.path.join(out, os.path.basename(path))@@@", 618 "@@@STEP_LOG_LINE@python.inline@ if os.path.exists(local):@@@", 619 "@@@STEP_LOG_LINE@python.inline@ sym = subprocess.check_output(['addr2line', '-Cfpe', local, addr])@@@", 620 "@@@STEP_LOG_LINE@python.inline@ line = line.replace(addr, addr + ' ' + sym.strip())@@@", 621 "@@@STEP_LOG_LINE@python.inline@ print line@@@", 622 "@@@STEP_LOG_END@python.inline@@@" 623 ] 624 }, 625 { 626 "cmd": [ 627 "adb", 628 "kill-server" 629 ], 630 "cwd": "[START_DIR]/skia", 631 "env": { 632 "BUILDTYPE": "Debug", 633 "CHROME_HEADLESS": "1", 634 "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", 635 "SKIA_OUT": "[START_DIR]/out" 636 }, 637 "infra_step": true, 638 "name": "kill adb server" 639 }, 640 { 641 "name": "$result", 642 "recipe_result": null, 643 "status_code": 0 644 } 645]