1[ 2 { 3 "cmd": [ 4 "python", 5 "-u", 6 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 7 "--json-output", 8 "/path/to/tmp/json", 9 "ensure-directory", 10 "--mode", 11 "0777", 12 "[START_DIR]/tmp" 13 ], 14 "infra_step": true, 15 "name": "makedirs tmp_dir" 16 }, 17 { 18 "cmd": [ 19 "python", 20 "-u", 21 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 22 "--json-output", 23 "/path/to/tmp/json", 24 "copy", 25 "[HOME]/ssh_machine.json", 26 "/path/to/tmp/" 27 ], 28 "infra_step": true, 29 "name": "read ssh_machine.json" 30 }, 31 { 32 "cmd": [ 33 "ssh", 34 "-oConnectTimeout=15", 35 "-oBatchMode=yes", 36 "-t", 37 "-t", 38 "foo@127.0.0.1", 39 "mkdir", 40 "-p", 41 "/home/chronos/user/resources" 42 ], 43 "env": { 44 "CHROME_HEADLESS": "1", 45 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 46 }, 47 "infra_step": true, 48 "name": "mkdir /home/chronos/user/resources" 49 }, 50 { 51 "cmd": [ 52 "ssh", 53 "-oConnectTimeout=15", 54 "-oBatchMode=yes", 55 "-t", 56 "-t", 57 "foo@127.0.0.1", 58 "rm", 59 "-rf", 60 "/home/chronos/user/bin" 61 ], 62 "env": { 63 "CHROME_HEADLESS": "1", 64 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 65 }, 66 "infra_step": true, 67 "name": "rm /home/chronos/user/bin" 68 }, 69 { 70 "cmd": [ 71 "ssh", 72 "-oConnectTimeout=15", 73 "-oBatchMode=yes", 74 "-t", 75 "-t", 76 "foo@127.0.0.1", 77 "mkdir", 78 "-p", 79 "/home/chronos/user/bin" 80 ], 81 "env": { 82 "CHROME_HEADLESS": "1", 83 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 84 }, 85 "infra_step": true, 86 "name": "mkdir /home/chronos/user/bin" 87 }, 88 { 89 "cmd": [ 90 "ssh", 91 "-oConnectTimeout=15", 92 "-oBatchMode=yes", 93 "-t", 94 "-t", 95 "foo@127.0.0.1", 96 "sudo", 97 "mount", 98 "-i", 99 "-o", 100 "remount,exec", 101 "/home/chronos" 102 ], 103 "env": { 104 "CHROME_HEADLESS": "1", 105 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 106 }, 107 "infra_step": true, 108 "name": "remount /home/chronos/user/ as exec" 109 }, 110 { 111 "cmd": [ 112 "python", 113 "-u", 114 "\nimport subprocess\nimport sys\nsrc = sys.argv[1] + '/*'\ndest = sys.argv[2]\nprint subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)\n", 115 "[START_DIR]/skia/resources", 116 "foo@127.0.0.1:/home/chronos/user/resources" 117 ], 118 "infra_step": true, 119 "name": "scp -r [START_DIR]/skia/resources foo@127.0.0.1:/home/chronos/user/resources", 120 "~followup_annotations": [ 121 "@@@STEP_LOG_LINE@python.inline@@@@", 122 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 123 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 124 "@@@STEP_LOG_LINE@python.inline@src = sys.argv[1] + '/*'@@@", 125 "@@@STEP_LOG_LINE@python.inline@dest = sys.argv[2]@@@", 126 "@@@STEP_LOG_LINE@python.inline@print subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)@@@", 127 "@@@STEP_LOG_END@python.inline@@@" 128 ] 129 }, 130 { 131 "cmd": [ 132 "python", 133 "-u", 134 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 135 "--json-output", 136 "/path/to/tmp/json", 137 "copy", 138 "[START_DIR]/skia/infra/bots/assets/skp/VERSION", 139 "/path/to/tmp/" 140 ], 141 "infra_step": true, 142 "name": "Get skp VERSION" 143 }, 144 { 145 "cmd": [ 146 "python", 147 "-u", 148 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 149 "--json-output", 150 "/path/to/tmp/json", 151 "copy", 152 "42", 153 "[START_DIR]/tmp/SKP_VERSION" 154 ], 155 "infra_step": true, 156 "name": "write SKP_VERSION", 157 "~followup_annotations": [ 158 "@@@STEP_LOG_LINE@SKP_VERSION@42@@@", 159 "@@@STEP_LOG_END@SKP_VERSION@@@" 160 ] 161 }, 162 { 163 "cmd": [ 164 "ssh", 165 "-oConnectTimeout=15", 166 "-oBatchMode=yes", 167 "-t", 168 "-t", 169 "foo@127.0.0.1", 170 "cat", 171 "/home/chronos/user/SKP_VERSION" 172 ], 173 "env": { 174 "CHROME_HEADLESS": "1", 175 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 176 }, 177 "infra_step": true, 178 "name": "read /home/chronos/user/SKP_VERSION" 179 }, 180 { 181 "cmd": [ 182 "ssh", 183 "-oConnectTimeout=15", 184 "-oBatchMode=yes", 185 "-t", 186 "-t", 187 "foo@127.0.0.1", 188 "rm", 189 "-f", 190 "/home/chronos/user/SKP_VERSION" 191 ], 192 "env": { 193 "CHROME_HEADLESS": "1", 194 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 195 }, 196 "infra_step": true, 197 "name": "rm /home/chronos/user/SKP_VERSION" 198 }, 199 { 200 "cmd": [ 201 "ssh", 202 "-oConnectTimeout=15", 203 "-oBatchMode=yes", 204 "-t", 205 "-t", 206 "foo@127.0.0.1", 207 "rm", 208 "-rf", 209 "/home/chronos/user/skps" 210 ], 211 "env": { 212 "CHROME_HEADLESS": "1", 213 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 214 }, 215 "infra_step": true, 216 "name": "rm /home/chronos/user/skps" 217 }, 218 { 219 "cmd": [ 220 "ssh", 221 "-oConnectTimeout=15", 222 "-oBatchMode=yes", 223 "-t", 224 "-t", 225 "foo@127.0.0.1", 226 "mkdir", 227 "-p", 228 "/home/chronos/user/skps" 229 ], 230 "env": { 231 "CHROME_HEADLESS": "1", 232 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 233 }, 234 "infra_step": true, 235 "name": "mkdir /home/chronos/user/skps" 236 }, 237 { 238 "cmd": [ 239 "python", 240 "-u", 241 "\nimport subprocess\nimport sys\nsrc = sys.argv[1] + '/*'\ndest = sys.argv[2]\nprint subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)\n", 242 "[START_DIR]/skp", 243 "foo@127.0.0.1:/home/chronos/user/skps" 244 ], 245 "infra_step": true, 246 "name": "scp -r [START_DIR]/skp foo@127.0.0.1:/home/chronos/user/skps", 247 "~followup_annotations": [ 248 "@@@STEP_LOG_LINE@python.inline@@@@", 249 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 250 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 251 "@@@STEP_LOG_LINE@python.inline@src = sys.argv[1] + '/*'@@@", 252 "@@@STEP_LOG_LINE@python.inline@dest = sys.argv[2]@@@", 253 "@@@STEP_LOG_LINE@python.inline@print subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)@@@", 254 "@@@STEP_LOG_END@python.inline@@@" 255 ] 256 }, 257 { 258 "cmd": [ 259 "scp", 260 "[START_DIR]/tmp/SKP_VERSION", 261 "foo@127.0.0.1:/home/chronos/user/SKP_VERSION" 262 ], 263 "env": { 264 "CHROME_HEADLESS": "1", 265 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 266 }, 267 "infra_step": true, 268 "name": "scp [START_DIR]/tmp/SKP_VERSION foo@127.0.0.1:/home/chronos/user/SKP_VERSION" 269 }, 270 { 271 "cmd": [ 272 "python", 273 "-u", 274 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 275 "--json-output", 276 "/path/to/tmp/json", 277 "copy", 278 "[START_DIR]/skia/infra/bots/assets/skimage/VERSION", 279 "/path/to/tmp/" 280 ], 281 "infra_step": true, 282 "name": "Get skimage VERSION" 283 }, 284 { 285 "cmd": [ 286 "python", 287 "-u", 288 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 289 "--json-output", 290 "/path/to/tmp/json", 291 "copy", 292 "42", 293 "[START_DIR]/tmp/SK_IMAGE_VERSION" 294 ], 295 "infra_step": true, 296 "name": "write SK_IMAGE_VERSION", 297 "~followup_annotations": [ 298 "@@@STEP_LOG_LINE@SK_IMAGE_VERSION@42@@@", 299 "@@@STEP_LOG_END@SK_IMAGE_VERSION@@@" 300 ] 301 }, 302 { 303 "cmd": [ 304 "ssh", 305 "-oConnectTimeout=15", 306 "-oBatchMode=yes", 307 "-t", 308 "-t", 309 "foo@127.0.0.1", 310 "cat", 311 "/home/chronos/user/SK_IMAGE_VERSION" 312 ], 313 "env": { 314 "CHROME_HEADLESS": "1", 315 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 316 }, 317 "infra_step": true, 318 "name": "read /home/chronos/user/SK_IMAGE_VERSION" 319 }, 320 { 321 "cmd": [ 322 "ssh", 323 "-oConnectTimeout=15", 324 "-oBatchMode=yes", 325 "-t", 326 "-t", 327 "foo@127.0.0.1", 328 "rm", 329 "-f", 330 "/home/chronos/user/SK_IMAGE_VERSION" 331 ], 332 "env": { 333 "CHROME_HEADLESS": "1", 334 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 335 }, 336 "infra_step": true, 337 "name": "rm /home/chronos/user/SK_IMAGE_VERSION" 338 }, 339 { 340 "cmd": [ 341 "ssh", 342 "-oConnectTimeout=15", 343 "-oBatchMode=yes", 344 "-t", 345 "-t", 346 "foo@127.0.0.1", 347 "rm", 348 "-rf", 349 "/home/chronos/user/images" 350 ], 351 "env": { 352 "CHROME_HEADLESS": "1", 353 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 354 }, 355 "infra_step": true, 356 "name": "rm /home/chronos/user/images" 357 }, 358 { 359 "cmd": [ 360 "ssh", 361 "-oConnectTimeout=15", 362 "-oBatchMode=yes", 363 "-t", 364 "-t", 365 "foo@127.0.0.1", 366 "mkdir", 367 "-p", 368 "/home/chronos/user/images" 369 ], 370 "env": { 371 "CHROME_HEADLESS": "1", 372 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 373 }, 374 "infra_step": true, 375 "name": "mkdir /home/chronos/user/images" 376 }, 377 { 378 "cmd": [ 379 "python", 380 "-u", 381 "\nimport subprocess\nimport sys\nsrc = sys.argv[1] + '/*'\ndest = sys.argv[2]\nprint subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)\n", 382 "[START_DIR]/skimage", 383 "foo@127.0.0.1:/home/chronos/user/images" 384 ], 385 "infra_step": true, 386 "name": "scp -r [START_DIR]/skimage foo@127.0.0.1:/home/chronos/user/images", 387 "~followup_annotations": [ 388 "@@@STEP_LOG_LINE@python.inline@@@@", 389 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 390 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 391 "@@@STEP_LOG_LINE@python.inline@src = sys.argv[1] + '/*'@@@", 392 "@@@STEP_LOG_LINE@python.inline@dest = sys.argv[2]@@@", 393 "@@@STEP_LOG_LINE@python.inline@print subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)@@@", 394 "@@@STEP_LOG_END@python.inline@@@" 395 ] 396 }, 397 { 398 "cmd": [ 399 "scp", 400 "[START_DIR]/tmp/SK_IMAGE_VERSION", 401 "foo@127.0.0.1:/home/chronos/user/SK_IMAGE_VERSION" 402 ], 403 "env": { 404 "CHROME_HEADLESS": "1", 405 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 406 }, 407 "infra_step": true, 408 "name": "scp [START_DIR]/tmp/SK_IMAGE_VERSION foo@127.0.0.1:/home/chronos/user/SK_IMAGE_VERSION" 409 }, 410 { 411 "cmd": [ 412 "python", 413 "-u", 414 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 415 "--json-output", 416 "/path/to/tmp/json", 417 "copy", 418 "[START_DIR]/skia/infra/bots/assets/svg/VERSION", 419 "/path/to/tmp/" 420 ], 421 "infra_step": true, 422 "name": "Get svg VERSION" 423 }, 424 { 425 "cmd": [ 426 "python", 427 "-u", 428 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 429 "--json-output", 430 "/path/to/tmp/json", 431 "copy", 432 "42", 433 "[START_DIR]/tmp/SVG_VERSION" 434 ], 435 "infra_step": true, 436 "name": "write SVG_VERSION", 437 "~followup_annotations": [ 438 "@@@STEP_LOG_LINE@SVG_VERSION@42@@@", 439 "@@@STEP_LOG_END@SVG_VERSION@@@" 440 ] 441 }, 442 { 443 "cmd": [ 444 "ssh", 445 "-oConnectTimeout=15", 446 "-oBatchMode=yes", 447 "-t", 448 "-t", 449 "foo@127.0.0.1", 450 "cat", 451 "/home/chronos/user/SVG_VERSION" 452 ], 453 "env": { 454 "CHROME_HEADLESS": "1", 455 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 456 }, 457 "infra_step": true, 458 "name": "read /home/chronos/user/SVG_VERSION" 459 }, 460 { 461 "cmd": [ 462 "ssh", 463 "-oConnectTimeout=15", 464 "-oBatchMode=yes", 465 "-t", 466 "-t", 467 "foo@127.0.0.1", 468 "rm", 469 "-f", 470 "/home/chronos/user/SVG_VERSION" 471 ], 472 "env": { 473 "CHROME_HEADLESS": "1", 474 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 475 }, 476 "infra_step": true, 477 "name": "rm /home/chronos/user/SVG_VERSION" 478 }, 479 { 480 "cmd": [ 481 "ssh", 482 "-oConnectTimeout=15", 483 "-oBatchMode=yes", 484 "-t", 485 "-t", 486 "foo@127.0.0.1", 487 "rm", 488 "-rf", 489 "/home/chronos/user/svgs" 490 ], 491 "env": { 492 "CHROME_HEADLESS": "1", 493 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 494 }, 495 "infra_step": true, 496 "name": "rm /home/chronos/user/svgs" 497 }, 498 { 499 "cmd": [ 500 "ssh", 501 "-oConnectTimeout=15", 502 "-oBatchMode=yes", 503 "-t", 504 "-t", 505 "foo@127.0.0.1", 506 "mkdir", 507 "-p", 508 "/home/chronos/user/svgs" 509 ], 510 "env": { 511 "CHROME_HEADLESS": "1", 512 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 513 }, 514 "infra_step": true, 515 "name": "mkdir /home/chronos/user/svgs" 516 }, 517 { 518 "cmd": [ 519 "python", 520 "-u", 521 "\nimport subprocess\nimport sys\nsrc = sys.argv[1] + '/*'\ndest = sys.argv[2]\nprint subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)\n", 522 "[START_DIR]/svg", 523 "foo@127.0.0.1:/home/chronos/user/svgs" 524 ], 525 "infra_step": true, 526 "name": "scp -r [START_DIR]/svg foo@127.0.0.1:/home/chronos/user/svgs", 527 "~followup_annotations": [ 528 "@@@STEP_LOG_LINE@python.inline@@@@", 529 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 530 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 531 "@@@STEP_LOG_LINE@python.inline@src = sys.argv[1] + '/*'@@@", 532 "@@@STEP_LOG_LINE@python.inline@dest = sys.argv[2]@@@", 533 "@@@STEP_LOG_LINE@python.inline@print subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)@@@", 534 "@@@STEP_LOG_END@python.inline@@@" 535 ] 536 }, 537 { 538 "cmd": [ 539 "scp", 540 "[START_DIR]/tmp/SVG_VERSION", 541 "foo@127.0.0.1:/home/chronos/user/SVG_VERSION" 542 ], 543 "env": { 544 "CHROME_HEADLESS": "1", 545 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 546 }, 547 "infra_step": true, 548 "name": "scp [START_DIR]/tmp/SVG_VERSION foo@127.0.0.1:/home/chronos/user/SVG_VERSION" 549 }, 550 { 551 "cmd": [ 552 "python", 553 "-u", 554 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 555 "--json-output", 556 "/path/to/tmp/json", 557 "rmtree", 558 "[START_DIR]/test" 559 ], 560 "infra_step": true, 561 "name": "rmtree test" 562 }, 563 { 564 "cmd": [ 565 "python", 566 "-u", 567 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 568 "--json-output", 569 "/path/to/tmp/json", 570 "ensure-directory", 571 "--mode", 572 "0777", 573 "[START_DIR]/test" 574 ], 575 "infra_step": true, 576 "name": "makedirs test" 577 }, 578 { 579 "cmd": [ 580 "ssh", 581 "-oConnectTimeout=15", 582 "-oBatchMode=yes", 583 "-t", 584 "-t", 585 "foo@127.0.0.1", 586 "rm", 587 "-rf", 588 "/home/chronos/user/dm_out" 589 ], 590 "env": { 591 "CHROME_HEADLESS": "1", 592 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 593 }, 594 "infra_step": true, 595 "name": "rm /home/chronos/user/dm_out" 596 }, 597 { 598 "cmd": [ 599 "ssh", 600 "-oConnectTimeout=15", 601 "-oBatchMode=yes", 602 "-t", 603 "-t", 604 "foo@127.0.0.1", 605 "mkdir", 606 "-p", 607 "/home/chronos/user/dm_out" 608 ], 609 "env": { 610 "CHROME_HEADLESS": "1", 611 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 612 }, 613 "infra_step": true, 614 "name": "mkdir /home/chronos/user/dm_out" 615 }, 616 { 617 "cmd": [ 618 "python", 619 "-u", 620 "\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = sys.argv[1]\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[2], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n", 621 "https://example.com/hashes.txt", 622 "[START_DIR]/tmp/uninteresting_hashes.txt" 623 ], 624 "env": { 625 "CHROME_HEADLESS": "1", 626 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 627 }, 628 "infra_step": true, 629 "name": "get uninteresting hashes", 630 "~followup_annotations": [ 631 "@@@STEP_LOG_LINE@python.inline@@@@", 632 "@@@STEP_LOG_LINE@python.inline@import contextlib@@@", 633 "@@@STEP_LOG_LINE@python.inline@import math@@@", 634 "@@@STEP_LOG_LINE@python.inline@import socket@@@", 635 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 636 "@@@STEP_LOG_LINE@python.inline@import time@@@", 637 "@@@STEP_LOG_LINE@python.inline@import urllib2@@@", 638 "@@@STEP_LOG_LINE@python.inline@@@@", 639 "@@@STEP_LOG_LINE@python.inline@HASHES_URL = sys.argv[1]@@@", 640 "@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@", 641 "@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@", 642 "@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@", 643 "@@@STEP_LOG_LINE@python.inline@@@@", 644 "@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@", 645 "@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@", 646 "@@@STEP_LOG_LINE@python.inline@ try:@@@", 647 "@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@", 648 "@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@", 649 "@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@", 650 "@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[2], 'w') as f:@@@", 651 "@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@", 652 "@@@STEP_LOG_LINE@python.inline@ break@@@", 653 "@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@", 654 "@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@", 655 "@@@STEP_LOG_LINE@python.inline@ print e@@@", 656 "@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@", 657 "@@@STEP_LOG_LINE@python.inline@ raise@@@", 658 "@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@", 659 "@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@", 660 "@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@", 661 "@@@STEP_LOG_END@python.inline@@@" 662 ] 663 }, 664 { 665 "cmd": [ 666 "scp", 667 "[START_DIR]/tmp/uninteresting_hashes.txt", 668 "foo@127.0.0.1:/home/chronos/user/uninteresting_hashes.txt" 669 ], 670 "env": { 671 "CHROME_HEADLESS": "1", 672 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 673 }, 674 "infra_step": true, 675 "name": "scp [START_DIR]/tmp/uninteresting_hashes.txt foo@127.0.0.1:/home/chronos/user/uninteresting_hashes.txt" 676 }, 677 { 678 "cmd": [ 679 "python", 680 "-u", 681 "import os\nprint os.environ.get('SWARMING_BOT_ID', '')\n" 682 ], 683 "name": "get swarming bot id", 684 "~followup_annotations": [ 685 "@@@STEP_LOG_LINE@python.inline@import os@@@", 686 "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_BOT_ID', '')@@@", 687 "@@@STEP_LOG_END@python.inline@@@" 688 ] 689 }, 690 { 691 "cmd": [ 692 "python", 693 "-u", 694 "import os\nprint os.environ.get('SWARMING_TASK_ID', '')\n" 695 ], 696 "name": "get swarming task id", 697 "~followup_annotations": [ 698 "@@@STEP_LOG_LINE@python.inline@import os@@@", 699 "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_TASK_ID', '')@@@", 700 "@@@STEP_LOG_END@python.inline@@@" 701 ] 702 }, 703 { 704 "cmd": [ 705 "scp", 706 "[START_DIR]/build/dm", 707 "foo@127.0.0.1:/home/chronos/user/bin/dm" 708 ], 709 "env": { 710 "CHROME_HEADLESS": "1", 711 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 712 }, 713 "infra_step": true, 714 "name": "scp [START_DIR]/build/dm foo@127.0.0.1:/home/chronos/user/bin/dm" 715 }, 716 { 717 "cmd": [ 718 "ssh", 719 "-oConnectTimeout=15", 720 "-oBatchMode=yes", 721 "-t", 722 "-t", 723 "foo@127.0.0.1", 724 "chmod", 725 "+x", 726 "/home/chronos/user/bin/dm" 727 ], 728 "env": { 729 "CHROME_HEADLESS": "1", 730 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 731 }, 732 "infra_step": true, 733 "name": "make dm executable" 734 }, 735 { 736 "cmd": [ 737 "ssh", 738 "-oConnectTimeout=15", 739 "-oBatchMode=yes", 740 "-t", 741 "-t", 742 "foo@127.0.0.1", 743 "/home/chronos/user/bin/dm", 744 "--resourcePath", 745 "/home/chronos/user/resources", 746 "--skps", 747 "/home/chronos/user/skps", 748 "--images", 749 "/home/chronos/user/images/dm", 750 "--colorImages", 751 "/home/chronos/user/images/colorspace", 752 "--nameByHash", 753 "--properties", 754 "gitHash", 755 "abc123", 756 "builder", 757 "Test-ChromeOS-Clang-AcerChromebookR13Convertible-GPU-PowerVRGX6250-arm-Debug-All", 758 "buildbucket_build_id", 759 "123454321", 760 "task_id", 761 "task_12345", 762 "swarming_bot_id", 763 "skia-bot-123", 764 "swarming_task_id", 765 "123456", 766 "--svgs", 767 "/home/chronos/user/svgs", 768 "--key", 769 "arch", 770 "arm", 771 "compiler", 772 "Clang", 773 "configuration", 774 "Debug", 775 "cpu_or_gpu", 776 "GPU", 777 "cpu_or_gpu_value", 778 "PowerVRGX6250", 779 "model", 780 "AcerChromebookR13Convertible", 781 "os", 782 "ChromeOS", 783 "style", 784 "default", 785 "--uninterestingHashesFile", 786 "/home/chronos/user/uninteresting_hashes.txt", 787 "--writePath", 788 "/home/chronos/user/dm_out", 789 "--dont_write", 790 "pdf", 791 "--randomProcessorTest", 792 "--nocpu", 793 "--config", 794 "gles", 795 "--src", 796 "tests", 797 "gm", 798 "image", 799 "colorImage", 800 "svg", 801 "--blacklist", 802 "_", 803 "svg", 804 "_", 805 "svgparse_", 806 "_", 807 "image", 808 "gen_platf", 809 "error", 810 "_", 811 "image", 812 "_", 813 "interlaced1.png", 814 "_", 815 "image", 816 "_", 817 "interlaced2.png", 818 "_", 819 "image", 820 "_", 821 "interlaced3.png", 822 "_", 823 "image", 824 "_", 825 ".arw", 826 "_", 827 "image", 828 "_", 829 ".cr2", 830 "_", 831 "image", 832 "_", 833 ".dng", 834 "_", 835 "image", 836 "_", 837 ".nef", 838 "_", 839 "image", 840 "_", 841 ".nrw", 842 "_", 843 "image", 844 "_", 845 ".orf", 846 "_", 847 "image", 848 "_", 849 ".raf", 850 "_", 851 "image", 852 "_", 853 ".rw2", 854 "_", 855 "image", 856 "_", 857 ".pef", 858 "_", 859 "image", 860 "_", 861 ".srw", 862 "_", 863 "image", 864 "_", 865 ".ARW", 866 "_", 867 "image", 868 "_", 869 ".CR2", 870 "_", 871 "image", 872 "_", 873 ".DNG", 874 "_", 875 "image", 876 "_", 877 ".NEF", 878 "_", 879 "image", 880 "_", 881 ".NRW", 882 "_", 883 "image", 884 "_", 885 ".ORF", 886 "_", 887 "image", 888 "_", 889 ".RAF", 890 "_", 891 "image", 892 "_", 893 ".RW2", 894 "_", 895 "image", 896 "_", 897 ".PEF", 898 "_", 899 "image", 900 "_", 901 ".SRW", 902 "--match", 903 "~gradients_view_perspective_nodither", 904 "--nonativeFonts", 905 "--verbose" 906 ], 907 "env": { 908 "CHROME_HEADLESS": "1", 909 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 910 }, 911 "infra_step": true, 912 "name": "dm" 913 }, 914 { 915 "cmd": [ 916 "python", 917 "-u", 918 "\nimport subprocess\nimport sys\nsrc = sys.argv[1] + '/*'\ndest = sys.argv[2]\nprint subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)\n", 919 "foo@127.0.0.1:/home/chronos/user/dm_out", 920 "[START_DIR]/[SWARM_OUT_DIR]" 921 ], 922 "infra_step": true, 923 "name": "scp -r foo@127.0.0.1:/home/chronos/user/dm_out [START_DIR]/[SWARM_OUT_DIR]", 924 "~followup_annotations": [ 925 "@@@STEP_LOG_LINE@python.inline@@@@", 926 "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 927 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 928 "@@@STEP_LOG_LINE@python.inline@src = sys.argv[1] + '/*'@@@", 929 "@@@STEP_LOG_LINE@python.inline@dest = sys.argv[2]@@@", 930 "@@@STEP_LOG_LINE@python.inline@print subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)@@@", 931 "@@@STEP_LOG_END@python.inline@@@" 932 ] 933 }, 934 { 935 "name": "$result" 936 } 937]