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/lottie-samples/VERSION", 26 "/path/to/tmp/" 27 ], 28 "infra_step": true, 29 "name": "Get lottie-samples 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/LOTTIE_VERSION" 41 ], 42 "infra_step": true, 43 "name": "write LOTTIE_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 "rmtree", 53 "[START_DIR]/test" 54 ], 55 "infra_step": true, 56 "name": "rmtree test" 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 "ensure-directory", 66 "--mode", 67 "0777", 68 "[START_DIR]/test" 69 ], 70 "infra_step": true, 71 "name": "makedirs test" 72 }, 73 { 74 "cmd": [ 75 "python", 76 "-u", 77 "\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", 78 "https://example.com/hashes.txt", 79 "[START_DIR]/tmp/uninteresting_hashes.txt" 80 ], 81 "env": { 82 "CHROME_HEADLESS": "1", 83 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 84 }, 85 "infra_step": true, 86 "name": "get uninteresting hashes", 87 "~followup_annotations": [ 88 "@@@STEP_LOG_LINE@python.inline@@@@", 89 "@@@STEP_LOG_LINE@python.inline@import contextlib@@@", 90 "@@@STEP_LOG_LINE@python.inline@import math@@@", 91 "@@@STEP_LOG_LINE@python.inline@import socket@@@", 92 "@@@STEP_LOG_LINE@python.inline@import sys@@@", 93 "@@@STEP_LOG_LINE@python.inline@import time@@@", 94 "@@@STEP_LOG_LINE@python.inline@import urllib2@@@", 95 "@@@STEP_LOG_LINE@python.inline@@@@", 96 "@@@STEP_LOG_LINE@python.inline@HASHES_URL = sys.argv[1]@@@", 97 "@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@", 98 "@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@", 99 "@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@", 100 "@@@STEP_LOG_LINE@python.inline@@@@", 101 "@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@", 102 "@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@", 103 "@@@STEP_LOG_LINE@python.inline@ try:@@@", 104 "@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@", 105 "@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@", 106 "@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@", 107 "@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[2], 'w') as f:@@@", 108 "@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@", 109 "@@@STEP_LOG_LINE@python.inline@ break@@@", 110 "@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@", 111 "@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@", 112 "@@@STEP_LOG_LINE@python.inline@ print e@@@", 113 "@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@", 114 "@@@STEP_LOG_LINE@python.inline@ raise@@@", 115 "@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@", 116 "@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@", 117 "@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@", 118 "@@@STEP_LOG_END@python.inline@@@" 119 ] 120 }, 121 { 122 "cmd": [ 123 "python", 124 "-u", 125 "import os\nprint os.environ.get('SWARMING_BOT_ID', '')\n" 126 ], 127 "name": "get swarming bot id", 128 "stdout": "/path/to/tmp/", 129 "~followup_annotations": [ 130 "@@@STEP_LOG_LINE@python.inline@import os@@@", 131 "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_BOT_ID', '')@@@", 132 "@@@STEP_LOG_END@python.inline@@@" 133 ] 134 }, 135 { 136 "cmd": [ 137 "python", 138 "-u", 139 "import os\nprint os.environ.get('SWARMING_TASK_ID', '')\n" 140 ], 141 "name": "get swarming task id", 142 "stdout": "/path/to/tmp/", 143 "~followup_annotations": [ 144 "@@@STEP_LOG_LINE@python.inline@import os@@@", 145 "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_TASK_ID', '')@@@", 146 "@@@STEP_LOG_END@python.inline@@@" 147 ] 148 }, 149 { 150 "cmd": [ 151 "python", 152 "-u", 153 "RECIPE_MODULE[skia::flavor]/resources/symbolize_stack_trace.py", 154 "[START_DIR]", 155 "catchsegv", 156 "[START_DIR]/build/dm", 157 "--resourcePath", 158 "[START_DIR]/skia/resources", 159 "--skps", 160 "[START_DIR]/skp", 161 "--images", 162 "[START_DIR]/skimage/dm", 163 "--colorImages", 164 "[START_DIR]/skimage/colorspace", 165 "--nameByHash", 166 "--properties", 167 "gitHash", 168 "abc123", 169 "builder", 170 "Test-Ubuntu17-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-Lottie", 171 "buildbucket_build_id", 172 "123454321", 173 "task_id", 174 "task_12345", 175 "swarming_bot_id", 176 "skia-bot-123", 177 "swarming_task_id", 178 "123456", 179 "--svgs", 180 "[START_DIR]/svg", 181 "--lotties", 182 "[START_DIR]/lottie-samples", 183 "--key", 184 "arch", 185 "x86_64", 186 "compiler", 187 "Clang", 188 "configuration", 189 "Debug", 190 "cpu_or_gpu", 191 "GPU", 192 "cpu_or_gpu_value", 193 "QuadroP400", 194 "extra_config", 195 "Lottie", 196 "model", 197 "Golo", 198 "os", 199 "Ubuntu17", 200 "renderer", 201 "skottie", 202 "style", 203 "default", 204 "--uninterestingHashesFile", 205 "[START_DIR]/tmp/uninteresting_hashes.txt", 206 "--writePath", 207 "[START_DIR]/[SWARM_OUT_DIR]", 208 "--dont_write", 209 "pdf", 210 "--randomProcessorTest", 211 "--nocpu", 212 "--config", 213 "gl", 214 "--src", 215 "lottie", 216 "--blacklist", 217 "gl1010102", 218 "image", 219 "_", 220 "_", 221 "gltestpersistentcache", 222 "gm", 223 "_", 224 "atlastext", 225 "gltestpersistentcache", 226 "gm", 227 "_", 228 "dftext", 229 "gltestpersistentcache", 230 "gm", 231 "_", 232 "glyph_pos_h_b", 233 "_", 234 "svg", 235 "_", 236 "svgparse_", 237 "_", 238 "image", 239 "gen_platf", 240 "error", 241 "_", 242 "image", 243 "_", 244 "interlaced1.png", 245 "_", 246 "image", 247 "_", 248 "interlaced2.png", 249 "_", 250 "image", 251 "_", 252 "interlaced3.png", 253 "_", 254 "image", 255 "_", 256 ".arw", 257 "_", 258 "image", 259 "_", 260 ".cr2", 261 "_", 262 "image", 263 "_", 264 ".dng", 265 "_", 266 "image", 267 "_", 268 ".nef", 269 "_", 270 "image", 271 "_", 272 ".nrw", 273 "_", 274 "image", 275 "_", 276 ".orf", 277 "_", 278 "image", 279 "_", 280 ".raf", 281 "_", 282 "image", 283 "_", 284 ".rw2", 285 "_", 286 "image", 287 "_", 288 ".pef", 289 "_", 290 "image", 291 "_", 292 ".srw", 293 "_", 294 "image", 295 "_", 296 ".ARW", 297 "_", 298 "image", 299 "_", 300 ".CR2", 301 "_", 302 "image", 303 "_", 304 ".DNG", 305 "_", 306 "image", 307 "_", 308 ".NEF", 309 "_", 310 "image", 311 "_", 312 ".NRW", 313 "_", 314 "image", 315 "_", 316 ".ORF", 317 "_", 318 "image", 319 "_", 320 ".RAF", 321 "_", 322 "image", 323 "_", 324 ".RW2", 325 "_", 326 "image", 327 "_", 328 ".PEF", 329 "_", 330 "image", 331 "_", 332 ".SRW", 333 "--nonativeFonts", 334 "--reduceOpListSplitting", 335 "--verbose" 336 ], 337 "cwd": "[START_DIR]/skia", 338 "env": { 339 "CHROME_HEADLESS": "1", 340 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 341 }, 342 "name": "symbolized dm" 343 }, 344 { 345 "jsonResult": null, 346 "name": "$result" 347 } 348]