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 "[START_DIR]/skia/infra/bots/assets/skp/VERSION", 26 "/path/to/tmp/" 27 ], 28 "infra_step": true, 29 "name": "Get skp VERSION" 30 }, 31 { 32 "cmd": [ 33 "python", 34 "-u", 35 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 36 "--json-output", 37 "/path/to/tmp/json", 38 "copy", 39 "42", 40 "[START_DIR]/tmp/SKP_VERSION" 41 ], 42 "infra_step": true, 43 "name": "write SKP_VERSION" 44 }, 45 { 46 "cmd": [ 47 "python", 48 "-u", 49 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 50 "--json-output", 51 "/path/to/tmp/json", 52 "copy", 53 "[START_DIR]/skia/infra/bots/assets/skimage/VERSION", 54 "/path/to/tmp/" 55 ], 56 "infra_step": true, 57 "name": "Get skimage VERSION" 58 }, 59 { 60 "cmd": [ 61 "python", 62 "-u", 63 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 64 "--json-output", 65 "/path/to/tmp/json", 66 "copy", 67 "42", 68 "[START_DIR]/tmp/SK_IMAGE_VERSION" 69 ], 70 "infra_step": true, 71 "name": "write SK_IMAGE_VERSION" 72 }, 73 { 74 "cmd": [ 75 "python", 76 "-u", 77 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 78 "--json-output", 79 "/path/to/tmp/json", 80 "copy", 81 "[START_DIR]/skia/infra/bots/assets/svg/VERSION", 82 "/path/to/tmp/" 83 ], 84 "infra_step": true, 85 "name": "Get svg VERSION" 86 }, 87 { 88 "cmd": [ 89 "python", 90 "-u", 91 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 92 "--json-output", 93 "/path/to/tmp/json", 94 "copy", 95 "42", 96 "[START_DIR]/tmp/SVG_VERSION" 97 ], 98 "infra_step": true, 99 "name": "write SVG_VERSION" 100 }, 101 { 102 "cmd": [ 103 "python", 104 "-u", 105 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 106 "--json-output", 107 "/path/to/tmp/json", 108 "rmtree", 109 "[START_DIR]/test" 110 ], 111 "infra_step": true, 112 "name": "rmtree test" 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]/test" 125 ], 126 "infra_step": true, 127 "name": "makedirs test" 128 }, 129 { 130 "cmd": [ 131 "python", 132 "-u", 133 "\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", 134 "https://example.com/hashes.txt", 135 "[START_DIR]/tmp/uninteresting_hashes.txt" 136 ], 137 "env": { 138 "CHROME_HEADLESS": "1", 139 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]" 140 }, 141 "infra_step": true, 142 "name": "get uninteresting hashes", 143 "~followup_annotations": [ 144 "@@@STEP_LOG_LINE@python.inline@@@@", 145 "@@@STEP_LOG_LINE@python.inline@import contextlib@@@", 146 "@@@STEP_LOG_LINE@python.inline@import math@@@", 147 "@@@STEP_LOG_LINE@python.inline@import socket@@@", 148 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 149 "@@@STEP_LOG_LINE@python.inline@import time@@@", 150 "@@@STEP_LOG_LINE@python.inline@import urllib2@@@", 151 "@@@STEP_LOG_LINE@python.inline@@@@", 152 "@@@STEP_LOG_LINE@python.inline@HASHES_URL = sys.argv[1]@@@", 153 "@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@", 154 "@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@", 155 "@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@", 156 "@@@STEP_LOG_LINE@python.inline@@@@", 157 "@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@", 158 "@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@", 159 "@@@STEP_LOG_LINE@python.inline@ try:@@@", 160 "@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@", 161 "@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@", 162 "@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@", 163 "@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[2], 'w') as f:@@@", 164 "@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@", 165 "@@@STEP_LOG_LINE@python.inline@ break@@@", 166 "@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@", 167 "@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@", 168 "@@@STEP_LOG_LINE@python.inline@ print e@@@", 169 "@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@", 170 "@@@STEP_LOG_LINE@python.inline@ raise@@@", 171 "@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@", 172 "@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@", 173 "@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@", 174 "@@@STEP_LOG_END@python.inline@@@" 175 ] 176 }, 177 { 178 "cmd": [ 179 "python", 180 "-u", 181 "import os\nprint os.environ.get('SWARMING_BOT_ID', '')\n" 182 ], 183 "name": "get swarming bot id", 184 "stdout": "/path/to/tmp/", 185 "~followup_annotations": [ 186 "@@@STEP_LOG_LINE@python.inline@import os@@@", 187 "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_BOT_ID', '')@@@", 188 "@@@STEP_LOG_END@python.inline@@@" 189 ] 190 }, 191 { 192 "cmd": [ 193 "python", 194 "-u", 195 "import os\nprint os.environ.get('SWARMING_TASK_ID', '')\n" 196 ], 197 "name": "get swarming task id", 198 "stdout": "/path/to/tmp/", 199 "~followup_annotations": [ 200 "@@@STEP_LOG_LINE@python.inline@import os@@@", 201 "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_TASK_ID', '')@@@", 202 "@@@STEP_LOG_END@python.inline@@@" 203 ] 204 }, 205 { 206 "cmd": [ 207 "[START_DIR]/build/dm", 208 "--resourcePath", 209 "[START_DIR]/skia/resources", 210 "--skps", 211 "[START_DIR]/skp", 212 "--images", 213 "[START_DIR]/skimage/dm", 214 "--colorImages", 215 "[START_DIR]/skimage/colorspace", 216 "--nameByHash", 217 "--properties", 218 "gitHash", 219 "abc123", 220 "builder", 221 "Test-Mac-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-MoltenVK_Vulkan", 222 "buildbucket_build_id", 223 "123454321", 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 "Clang", 235 "configuration", 236 "Release", 237 "cpu_or_gpu", 238 "GPU", 239 "cpu_or_gpu_value", 240 "RadeonHD8870M", 241 "extra_config", 242 "MoltenVK_Vulkan", 243 "model", 244 "MacBookPro11.5", 245 "os", 246 "Mac", 247 "--uninterestingHashesFile", 248 "[START_DIR]/tmp/uninteresting_hashes.txt", 249 "--writePath", 250 "[START_DIR]/[SWARM_OUT_DIR]", 251 "--dont_write", 252 "pdf", 253 "--randomProcessorTest", 254 "--nocpu", 255 "--config", 256 "vk", 257 "--src", 258 "tests", 259 "gm", 260 "image", 261 "colorImage", 262 "svg", 263 "--blacklist", 264 "_", 265 "svg", 266 "_", 267 "svgparse_", 268 "_", 269 "image", 270 "gen_platf", 271 "rgba32abf.bmp", 272 "_", 273 "image", 274 "gen_platf", 275 "rgb24prof.bmp", 276 "_", 277 "image", 278 "gen_platf", 279 "rgb24lprof.bmp", 280 "_", 281 "image", 282 "gen_platf", 283 "8bpp-pixeldata-cropped.bmp", 284 "_", 285 "image", 286 "gen_platf", 287 "4bpp-pixeldata-cropped.bmp", 288 "_", 289 "image", 290 "gen_platf", 291 "32bpp-pixeldata-cropped.bmp", 292 "_", 293 "image", 294 "gen_platf", 295 "24bpp-pixeldata-cropped.bmp", 296 "_", 297 "image", 298 "gen_platf", 299 "frame_larger_than_image.gif", 300 "_", 301 "image", 302 "gen_platf", 303 "inc0.png", 304 "_", 305 "image", 306 "gen_platf", 307 "inc1.png", 308 "_", 309 "image", 310 "gen_platf", 311 "inc2.png", 312 "_", 313 "image", 314 "gen_platf", 315 "inc3.png", 316 "_", 317 "image", 318 "gen_platf", 319 "inc4.png", 320 "_", 321 "image", 322 "gen_platf", 323 "inc5.png", 324 "_", 325 "image", 326 "gen_platf", 327 "inc6.png", 328 "_", 329 "image", 330 "gen_platf", 331 "inc7.png", 332 "_", 333 "image", 334 "gen_platf", 335 "inc8.png", 336 "_", 337 "image", 338 "gen_platf", 339 "inc9.png", 340 "_", 341 "image", 342 "gen_platf", 343 "inc10.png", 344 "_", 345 "image", 346 "gen_platf", 347 "inc11.png", 348 "_", 349 "image", 350 "gen_platf", 351 "inc12.png", 352 "_", 353 "image", 354 "gen_platf", 355 "inc13.png", 356 "_", 357 "image", 358 "gen_platf", 359 "inc14.png", 360 "_", 361 "image", 362 "gen_platf", 363 "incInterlaced.png", 364 "_", 365 "image", 366 "gen_platf", 367 "incInterlaced.gif", 368 "_", 369 "image", 370 "gen_platf", 371 "inc1.gif", 372 "_", 373 "image", 374 "gen_platf", 375 "inc0.gif", 376 "_", 377 "image", 378 "gen_platf", 379 "butterfly.gif", 380 "_", 381 "image", 382 "gen_platf", 383 "testimgari.jpg", 384 "_", 385 "image", 386 "gen_platf", 387 "rle8-height-negative.bmp", 388 "_", 389 "image", 390 "gen_platf", 391 "rle4-height-negative.bmp", 392 "_", 393 "image", 394 "gen_platf", 395 "error", 396 "_", 397 "image", 398 "_", 399 "interlaced1.png", 400 "_", 401 "image", 402 "_", 403 "interlaced2.png", 404 "_", 405 "image", 406 "_", 407 "interlaced3.png", 408 "_", 409 "image", 410 "_", 411 ".arw", 412 "_", 413 "image", 414 "_", 415 ".cr2", 416 "_", 417 "image", 418 "_", 419 ".dng", 420 "_", 421 "image", 422 "_", 423 ".nef", 424 "_", 425 "image", 426 "_", 427 ".nrw", 428 "_", 429 "image", 430 "_", 431 ".orf", 432 "_", 433 "image", 434 "_", 435 ".raf", 436 "_", 437 "image", 438 "_", 439 ".rw2", 440 "_", 441 "image", 442 "_", 443 ".pef", 444 "_", 445 "image", 446 "_", 447 ".srw", 448 "_", 449 "image", 450 "_", 451 ".ARW", 452 "_", 453 "image", 454 "_", 455 ".CR2", 456 "_", 457 "image", 458 "_", 459 ".DNG", 460 "_", 461 "image", 462 "_", 463 ".NEF", 464 "_", 465 "image", 466 "_", 467 ".NRW", 468 "_", 469 "image", 470 "_", 471 ".ORF", 472 "_", 473 "image", 474 "_", 475 ".RAF", 476 "_", 477 "image", 478 "_", 479 ".RW2", 480 "_", 481 "image", 482 "_", 483 ".PEF", 484 "_", 485 "image", 486 "_", 487 ".SRW", 488 "_", 489 "gm", 490 "_", 491 "vertices_scaled_shader", 492 "_", 493 "gm", 494 "_", 495 "vertices", 496 "--match", 497 "~^InitialTextureClear$", 498 "~^RGB565TextureTest$", 499 "~^RGBA4444TextureTest$", 500 "~^WritePixelsNonTextureMSAA_Gpu$", 501 "--nonativeFonts", 502 "--verbose" 503 ], 504 "env": { 505 "CHROME_HEADLESS": "1", 506 "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]" 507 }, 508 "name": "dm" 509 }, 510 { 511 "jsonResult": null, 512 "name": "$result" 513 } 514]