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 "copy", 10 "[START_DIR]\\skia\\infra\\bots\\assets\\skp\\VERSION", 11 "/path/to/tmp/" 12 ], 13 "infra_step": true, 14 "name": "Get downloaded SKP VERSION" 15 }, 16 { 17 "cmd": [ 18 "python", 19 "-u", 20 "RECIPE_MODULE[recipe_engine::file]\\resources\\fileutil.py", 21 "--json-output", 22 "/path/to/tmp/json", 23 "copy", 24 "42", 25 "[START_DIR]\\tmp\\SKP_VERSION" 26 ], 27 "infra_step": true, 28 "name": "write SKP_VERSION" 29 }, 30 { 31 "cmd": [ 32 "python", 33 "-u", 34 "RECIPE_MODULE[recipe_engine::file]\\resources\\fileutil.py", 35 "--json-output", 36 "/path/to/tmp/json", 37 "copy", 38 "[START_DIR]\\skia\\infra\\bots\\assets\\skimage\\VERSION", 39 "/path/to/tmp/" 40 ], 41 "infra_step": true, 42 "name": "Get downloaded skimage VERSION" 43 }, 44 { 45 "cmd": [ 46 "python", 47 "-u", 48 "RECIPE_MODULE[recipe_engine::file]\\resources\\fileutil.py", 49 "--json-output", 50 "/path/to/tmp/json", 51 "copy", 52 "42", 53 "[START_DIR]\\tmp\\SK_IMAGE_VERSION" 54 ], 55 "infra_step": true, 56 "name": "write SK_IMAGE_VERSION" 57 }, 58 { 59 "cmd": [ 60 "python", 61 "-u", 62 "RECIPE_MODULE[recipe_engine::file]\\resources\\fileutil.py", 63 "--json-output", 64 "/path/to/tmp/json", 65 "copy", 66 "[START_DIR]\\skia\\infra\\bots\\assets\\svg\\VERSION", 67 "/path/to/tmp/" 68 ], 69 "infra_step": true, 70 "name": "Get downloaded SVG VERSION" 71 }, 72 { 73 "cmd": [ 74 "python", 75 "-u", 76 "RECIPE_MODULE[recipe_engine::file]\\resources\\fileutil.py", 77 "--json-output", 78 "/path/to/tmp/json", 79 "copy", 80 "42", 81 "[START_DIR]\\tmp\\SVG_VERSION" 82 ], 83 "infra_step": true, 84 "name": "write SVG_VERSION" 85 }, 86 { 87 "cmd": [ 88 "python", 89 "-u", 90 "RECIPE_MODULE[recipe_engine::file]\\resources\\fileutil.py", 91 "--json-output", 92 "/path/to/tmp/json", 93 "rmtree", 94 "[CUSTOM_[SWARM_OUT_DIR]]\\dm" 95 ], 96 "infra_step": true, 97 "name": "rmtree dm" 98 }, 99 { 100 "cmd": [ 101 "python", 102 "-u", 103 "RECIPE_MODULE[recipe_engine::file]\\resources\\fileutil.py", 104 "--json-output", 105 "/path/to/tmp/json", 106 "ensure-directory", 107 "--mode", 108 "0777", 109 "[CUSTOM_[SWARM_OUT_DIR]]\\dm" 110 ], 111 "infra_step": true, 112 "name": "makedirs dm" 113 }, 114 { 115 "cmd": [ 116 "python", 117 "-u", 118 "RECIPE_MODULE[recipe_engine::file]\\resources\\fileutil.py", 119 "--json-output", 120 "/path/to/tmp/json", 121 "ensure-directory", 122 "--mode", 123 "0777", 124 "[START_DIR]\\tmp" 125 ], 126 "infra_step": true, 127 "name": "makedirs tmp_dir" 128 }, 129 { 130 "cmd": [ 131 "python", 132 "-u", 133 "\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://storage.googleapis.com/skia-infra-gm/hash_files/gold-prod-hashes.txt'\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[1], '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", 134 "[START_DIR]\\tmp\\uninteresting_hashes.txt" 135 ], 136 "env": { 137 "BUILDTYPE": "Release_x64", 138 "CHROME_HEADLESS": "1", 139 "PATH": "<PATH>;RECIPE_PACKAGE_REPO[depot_tools]", 140 "SKIA_OUT": "[START_DIR]\\out" 141 }, 142 "infra_step": true, 143 "name": "get uninteresting hashes", 144 "~followup_annotations": [ 145 "@@@STEP_LOG_LINE (a] python.inline@@@@", 146 "@@@STEP_LOG_LINE (a] python.inline@import contextlib@@@", 147 "@@@STEP_LOG_LINE (a] python.inline@import math@@@", 148 "@@@STEP_LOG_LINE (a] python.inline@import socket@@@", 149 "@@@STEP_LOG_LINE (a] python.inline@import sys@@@", 150 "@@@STEP_LOG_LINE (a] python.inline@import time@@@", 151 "@@@STEP_LOG_LINE (a] python.inline@import urllib2@@@", 152 "@@@STEP_LOG_LINE (a] python.inline@@@@", 153 "@@@STEP_LOG_LINE (a] python.inline@HASHES_URL = 'https://storage.googleapis.com/skia-infra-gm/hash_files/gold-prod-hashes.txt'@@@", 154 "@@@STEP_LOG_LINE (a] python.inline@RETRIES = 5@@@", 155 "@@@STEP_LOG_LINE (a] python.inline@TIMEOUT = 60@@@", 156 "@@@STEP_LOG_LINE (a] python.inline@WAIT_BASE = 15@@@", 157 "@@@STEP_LOG_LINE (a] python.inline@@@@", 158 "@@@STEP_LOG_LINE (a] python.inline@socket.setdefaulttimeout(TIMEOUT)@@@", 159 "@@@STEP_LOG_LINE (a] python.inline@for retry in range(RETRIES):@@@", 160 "@@@STEP_LOG_LINE (a] python.inline@ try:@@@", 161 "@@@STEP_LOG_LINE (a] python.inline@ with contextlib.closing(@@@", 162 "@@@STEP_LOG_LINE (a] python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@", 163 "@@@STEP_LOG_LINE (a] python.inline@ hashes = w.read()@@@", 164 "@@@STEP_LOG_LINE (a] python.inline@ with open(sys.argv[1], 'w') as f:@@@", 165 "@@@STEP_LOG_LINE (a] python.inline@ f.write(hashes)@@@", 166 "@@@STEP_LOG_LINE (a] python.inline@ break@@@", 167 "@@@STEP_LOG_LINE (a] python.inline@ except Exception as e:@@@", 168 "@@@STEP_LOG_LINE (a] python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@", 169 "@@@STEP_LOG_LINE (a] python.inline@ print e@@@", 170 "@@@STEP_LOG_LINE (a] python.inline@ if retry == RETRIES:@@@", 171 "@@@STEP_LOG_LINE (a] python.inline@ raise@@@", 172 "@@@STEP_LOG_LINE (a] python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@", 173 "@@@STEP_LOG_LINE (a] python.inline@ print 'Retry in %d seconds.' % waittime@@@", 174 "@@@STEP_LOG_LINE (a] python.inline@ time.sleep(waittime)@@@", 175 "@@@STEP_LOG_END (a] python.inline@@@" 176 ] 177 }, 178 { 179 "cmd": [ 180 "python", 181 "-u", 182 "import os\nprint os.environ.get('SWARMING_BOT_ID', '')\n" 183 ], 184 "name": "get swarming bot id", 185 "stdout": "/path/to/tmp/", 186 "~followup_annotations": [ 187 "@@@STEP_LOG_LINE (a] python.inline@import os@@@", 188 "@@@STEP_LOG_LINE (a] python.inline@print os.environ.get('SWARMING_BOT_ID', '')@@@", 189 "@@@STEP_LOG_END (a] python.inline@@@" 190 ] 191 }, 192 { 193 "cmd": [ 194 "python", 195 "-u", 196 "import os\nprint os.environ.get('SWARMING_TASK_ID', '')\n" 197 ], 198 "name": "get swarming task id", 199 "stdout": "/path/to/tmp/", 200 "~followup_annotations": [ 201 "@@@STEP_LOG_LINE (a] python.inline@import os@@@", 202 "@@@STEP_LOG_LINE (a] python.inline@print os.environ.get('SWARMING_TASK_ID', '')@@@", 203 "@@@STEP_LOG_END (a] python.inline@@@" 204 ] 205 }, 206 { 207 "cmd": [ 208 "[START_DIR]\\out\\Release_x64\\dm", 209 "--undefok", 210 "--resourcePath", 211 "[START_DIR]\\skia\\resources", 212 "--skps", 213 "[START_DIR]\\skp", 214 "--images", 215 "[START_DIR]\\skimage\\dm", 216 "--colorImages", 217 "[START_DIR]\\skimage\\colorspace", 218 "--nameByHash", 219 "--properties", 220 "gitHash", 221 "abc123", 222 "builder", 223 "Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Release-ReleaseAndAbandonGpuContext", 224 "swarming_bot_id", 225 "skia-bot-123", 226 "swarming_task_id", 227 "123456", 228 "--svgs", 229 "[START_DIR]\\svg", 230 "--key", 231 "arch", 232 "x86_64", 233 "compiler", 234 "MSVC", 235 "configuration", 236 "Release", 237 "cpu_or_gpu", 238 "GPU", 239 "cpu_or_gpu_value", 240 "IntelIris6100", 241 "extra_config", 242 "ReleaseAndAbandonGpuContext", 243 "model", 244 "NUC5i7RYH", 245 "os", 246 "Win10", 247 "--uninterestingHashesFile", 248 "[START_DIR]\\tmp\\uninteresting_hashes.txt", 249 "--writePath", 250 "[CUSTOM_[SWARM_OUT_DIR]]\\dm", 251 "--nocpu", 252 "--randomProcessorTest", 253 "--config", 254 "8888", 255 "srgb", 256 "pdf", 257 "gl", 258 "gldft", 259 "glsrgb", 260 "serialize-8888", 261 "tiles_rt-8888", 262 "pic-8888", 263 "--src", 264 "tests", 265 "gm", 266 "image", 267 "colorImage", 268 "svg", 269 "--blacklist", 270 "glsrgb", 271 "image", 272 "_", 273 "_", 274 "_", 275 "image", 276 "gen_platf", 277 "rle8-height-negative.bmp", 278 "_", 279 "image", 280 "gen_platf", 281 "rle4-height-negative.bmp", 282 "_", 283 "image", 284 "gen_platf", 285 "pal8os2v2.bmp", 286 "_", 287 "image", 288 "gen_platf", 289 "pal8os2v2-16.bmp", 290 "_", 291 "image", 292 "gen_platf", 293 "rgba32abf.bmp", 294 "_", 295 "image", 296 "gen_platf", 297 "rgb24prof.bmp", 298 "_", 299 "image", 300 "gen_platf", 301 "rgb24lprof.bmp", 302 "_", 303 "image", 304 "gen_platf", 305 "8bpp-pixeldata-cropped.bmp", 306 "_", 307 "image", 308 "gen_platf", 309 "4bpp-pixeldata-cropped.bmp", 310 "_", 311 "image", 312 "gen_platf", 313 "32bpp-pixeldata-cropped.bmp", 314 "_", 315 "image", 316 "gen_platf", 317 "24bpp-pixeldata-cropped.bmp", 318 "_", 319 "image", 320 "gen_platf", 321 "testimgari.jpg", 322 "serialize-8888", 323 "gm", 324 "_", 325 "bleed_image", 326 "serialize-8888", 327 "gm", 328 "_", 329 "c_gms", 330 "serialize-8888", 331 "gm", 332 "_", 333 "colortype", 334 "serialize-8888", 335 "gm", 336 "_", 337 "colortype_xfermodes", 338 "serialize-8888", 339 "gm", 340 "_", 341 "drawfilter", 342 "serialize-8888", 343 "gm", 344 "_", 345 "fontmgr_bounds_0.75_0", 346 "serialize-8888", 347 "gm", 348 "_", 349 "fontmgr_bounds_1_-0.25", 350 "serialize-8888", 351 "gm", 352 "_", 353 "fontmgr_bounds", 354 "serialize-8888", 355 "gm", 356 "_", 357 "fontmgr_match", 358 "serialize-8888", 359 "gm", 360 "_", 361 "fontmgr_iter", 362 "serialize-8888", 363 "gm", 364 "_", 365 "imagemasksubset", 366 "serialize-8888", 367 "gm", 368 "_", 369 "bitmapfilters", 370 "serialize-8888", 371 "gm", 372 "_", 373 "bitmapshaders", 374 "serialize-8888", 375 "gm", 376 "_", 377 "bleed", 378 "serialize-8888", 379 "gm", 380 "_", 381 "bleed_alpha_bmp", 382 "serialize-8888", 383 "gm", 384 "_", 385 "bleed_alpha_bmp_shader", 386 "serialize-8888", 387 "gm", 388 "_", 389 "convex_poly_clip", 390 "serialize-8888", 391 "gm", 392 "_", 393 "extractalpha", 394 "serialize-8888", 395 "gm", 396 "_", 397 "filterbitmap_checkerboard_32_32_g8", 398 "serialize-8888", 399 "gm", 400 "_", 401 "filterbitmap_image_mandrill_64", 402 "serialize-8888", 403 "gm", 404 "_", 405 "shadows", 406 "serialize-8888", 407 "gm", 408 "_", 409 "simpleaaclip_aaclip", 410 "serialize-8888", 411 "gm", 412 "_", 413 "composeshader_bitmap", 414 "serialize-8888", 415 "gm", 416 "_", 417 "scaled_tilemodes_npot", 418 "serialize-8888", 419 "gm", 420 "_", 421 "scaled_tilemodes", 422 "serialize-8888", 423 "gm", 424 "_", 425 "typefacerendering_pfaMac", 426 "serialize-8888", 427 "gm", 428 "_", 429 "parsedpaths", 430 "serialize-8888", 431 "gm", 432 "_", 433 "ImageGeneratorExternal_rect", 434 "serialize-8888", 435 "gm", 436 "_", 437 "ImageGeneratorExternal_shader", 438 "serialize-8888", 439 "gm", 440 "_", 441 "shadow_utils", 442 "serialize-8888", 443 "gm", 444 "_", 445 "makecolorspace", 446 "serialize-8888", 447 "gm", 448 "_", 449 "bleed_alpha_image", 450 "serialize-8888", 451 "gm", 452 "_", 453 "bleed_alpha_image_shader", 454 "serialize-8888", 455 "gm", 456 "_", 457 "verylargebitmap", 458 "serialize-8888", 459 "gm", 460 "_", 461 "verylarge_picture_image", 462 "pic-8888", 463 "gm", 464 "_", 465 "drawfilter", 466 "pic-8888", 467 "gm", 468 "_", 469 "image-cacherator-from-picture", 470 "serialize-8888", 471 "gm", 472 "_", 473 "image-cacherator-from-picture", 474 "pic-8888", 475 "gm", 476 "_", 477 "image-cacherator-from-raster", 478 "serialize-8888", 479 "gm", 480 "_", 481 "image-cacherator-from-raster", 482 "pic-8888", 483 "gm", 484 "_", 485 "image-cacherator-from-ctable", 486 "serialize-8888", 487 "gm", 488 "_", 489 "image-cacherator-from-ctable", 490 "pic-8888", 491 "gm", 492 "_", 493 "gamut", 494 "serialize-8888", 495 "gm", 496 "_", 497 "gamut", 498 "pic-8888", 499 "gm", 500 "_", 501 "complexclip4_bw", 502 "serialize-8888", 503 "gm", 504 "_", 505 "complexclip4_bw", 506 "pic-8888", 507 "gm", 508 "_", 509 "complexclip4_aa", 510 "serialize-8888", 511 "gm", 512 "_", 513 "complexclip4_aa", 514 "tiles_rt-8888", 515 "gm", 516 "_", 517 "complexclip4_bw", 518 "tiles_rt-8888", 519 "gm", 520 "_", 521 "complexclip4_aa", 522 "_", 523 "image", 524 "_", 525 "interlaced1.png", 526 "_", 527 "image", 528 "_", 529 "interlaced2.png", 530 "_", 531 "image", 532 "_", 533 "interlaced3.png", 534 "_", 535 "image", 536 "_", 537 ".arw", 538 "_", 539 "image", 540 "_", 541 ".cr2", 542 "_", 543 "image", 544 "_", 545 ".dng", 546 "_", 547 "image", 548 "_", 549 ".nef", 550 "_", 551 "image", 552 "_", 553 ".nrw", 554 "_", 555 "image", 556 "_", 557 ".orf", 558 "_", 559 "image", 560 "_", 561 ".raf", 562 "_", 563 "image", 564 "_", 565 ".rw2", 566 "_", 567 "image", 568 "_", 569 ".pef", 570 "_", 571 "image", 572 "_", 573 ".srw", 574 "_", 575 "image", 576 "_", 577 ".ARW", 578 "_", 579 "image", 580 "_", 581 ".CR2", 582 "_", 583 "image", 584 "_", 585 ".DNG", 586 "_", 587 "image", 588 "_", 589 ".NEF", 590 "_", 591 "image", 592 "_", 593 ".NRW", 594 "_", 595 "image", 596 "_", 597 ".ORF", 598 "_", 599 "image", 600 "_", 601 ".RAF", 602 "_", 603 "image", 604 "_", 605 ".RW2", 606 "_", 607 "image", 608 "_", 609 ".PEF", 610 "_", 611 "image", 612 "_", 613 ".SRW", 614 "--releaseAndAbandonGpuContext" 615 ], 616 "env": { 617 "BUILDTYPE": "Release_x64", 618 "CHROME_HEADLESS": "1", 619 "PATH": "<PATH>;RECIPE_PACKAGE_REPO[depot_tools]", 620 "SKIA_OUT": "[START_DIR]\\out" 621 }, 622 "name": "dm" 623 }, 624 { 625 "name": "$result", 626 "recipe_result": null, 627 "status_code": 0 628 } 629 ]