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