| OLD | NEW | 
|---|
|  | (Empty) | 
| 1 [ |  | 
| 2   { |  | 
| 3     "cmd": [ |  | 
| 4       "git.bat", |  | 
| 5       "fetch" |  | 
| 6     ], |  | 
| 7     "cwd": "[SLAVE_BUILD]\\skia", |  | 
| 8     "name": "git fetch" |  | 
| 9   }, |  | 
| 10   { |  | 
| 11     "cmd": [ |  | 
| 12       "git.bat", |  | 
| 13       "reset", |  | 
| 14       "--hard", |  | 
| 15       "abc123" |  | 
| 16     ], |  | 
| 17     "cwd": "[SLAVE_BUILD]\\skia", |  | 
| 18     "name": "git reset" |  | 
| 19   }, |  | 
| 20   { |  | 
| 21     "cmd": [ |  | 
| 22       "git.bat", |  | 
| 23       "clean", |  | 
| 24       "-d", |  | 
| 25       "-f" |  | 
| 26     ], |  | 
| 27     "cwd": "[SLAVE_BUILD]\\skia", |  | 
| 28     "name": "git clean" |  | 
| 29   }, |  | 
| 30   { |  | 
| 31     "cmd": [ |  | 
| 32       "python", |  | 
| 33       "-u", |  | 
| 34       "[DEPOT_TOOLS]\\gclient.py", |  | 
| 35       "config", |  | 
| 36       "--spec", |  | 
| 37       "cache_dir = None\nsolutions = [{'deps_file': 'DEPS', 'managed': True, 'na
     me': 'skia', 'url': 'https://skia.googlesource.com/skia.git'}]" |  | 
| 38     ], |  | 
| 39     "cwd": "[SLAVE_BUILD]", |  | 
| 40     "name": "gclient setup" |  | 
| 41   }, |  | 
| 42   { |  | 
| 43     "cmd": [ |  | 
| 44       "python", |  | 
| 45       "-u", |  | 
| 46       "[DEPOT_TOOLS]\\gclient.py", |  | 
| 47       "sync", |  | 
| 48       "--nohooks", |  | 
| 49       "--force", |  | 
| 50       "--verbose", |  | 
| 51       "--delete_unversioned_trees", |  | 
| 52       "--revision", |  | 
| 53       "skia@abc123", |  | 
| 54       "--output-json", |  | 
| 55       "/path/to/tmp/json" |  | 
| 56     ], |  | 
| 57     "cwd": "[SLAVE_BUILD]", |  | 
| 58     "name": "gclient sync", |  | 
| 59     "~followup_annotations": [ |  | 
| 60       "@@@STEP_LOG_LINE@json.output@{@@@", |  | 
| 61       "@@@STEP_LOG_LINE@json.output@  \"solutions\": {@@@", |  | 
| 62       "@@@STEP_LOG_LINE@json.output@    \"skia/\": {@@@", |  | 
| 63       "@@@STEP_LOG_LINE@json.output@      \"revision\": 164710@@@", |  | 
| 64       "@@@STEP_LOG_LINE@json.output@    }@@@", |  | 
| 65       "@@@STEP_LOG_LINE@json.output@  }@@@", |  | 
| 66       "@@@STEP_LOG_LINE@json.output@}@@@", |  | 
| 67       "@@@STEP_LOG_END@json.output@@@", |  | 
| 68       "@@@SET_BUILD_PROPERTY@got_revision@164710@@@" |  | 
| 69     ] |  | 
| 70   }, |  | 
| 71   { |  | 
| 72     "cmd": [ |  | 
| 73       "python", |  | 
| 74       "-u", |  | 
| 75       "\nimport os\nimport sys\nwith open(sys.argv[1], 'w') as f:\n  f.write(os.
     path.join(os.path.expanduser('~'), 'src'))\n", |  | 
| 76       "/path/to/tmp/" |  | 
| 77     ], |  | 
| 78     "cwd": "[SLAVE_BUILD]", |  | 
| 79     "name": "get CHROME_PATH", |  | 
| 80     "~followup_annotations": [ |  | 
| 81       "@@@STEP_LOG_LINE@python.inline@@@@", |  | 
| 82       "@@@STEP_LOG_LINE@python.inline@import os@@@", |  | 
| 83       "@@@STEP_LOG_LINE@python.inline@import sys@@@", |  | 
| 84       "@@@STEP_LOG_LINE@python.inline@with open(sys.argv[1], 'w') as f:@@@", |  | 
| 85       "@@@STEP_LOG_LINE@python.inline@  f.write(os.path.join(os.path.expanduser(
     '~'), 'src'))@@@", |  | 
| 86       "@@@STEP_LOG_END@python.inline@@@" |  | 
| 87     ] |  | 
| 88   }, |  | 
| 89   { |  | 
| 90     "cmd": [ |  | 
| 91       "python", |  | 
| 92       "make.py", |  | 
| 93       "dm", |  | 
| 94       "BUILDTYPE=Debug_x64" |  | 
| 95     ], |  | 
| 96     "cwd": "[SLAVE_BUILD]\\skia", |  | 
| 97     "env": { |  | 
| 98       "CHROME_PATH": "/home/chrome-bot/src", |  | 
| 99       "GYP_DEFINES": "qt_sdk=C:/Qt/Qt5.1.0/5.1.0/msvc2012_64/ skia_arch_type=x86
     _64 skia_arch_width=64 skia_gpu=0 skia_warnings_as_errors=0 skia_win_debuggers_p
     ath=c:/DbgHelp" |  | 
| 100     }, |  | 
| 101     "name": "build dm" |  | 
| 102   }, |  | 
| 103   { |  | 
| 104     "cmd": [ |  | 
| 105       "python", |  | 
| 106       "make.py", |  | 
| 107       "nanobench", |  | 
| 108       "BUILDTYPE=Debug_x64" |  | 
| 109     ], |  | 
| 110     "cwd": "[SLAVE_BUILD]\\skia", |  | 
| 111     "env": { |  | 
| 112       "CHROME_PATH": "/home/chrome-bot/src", |  | 
| 113       "GYP_DEFINES": "qt_sdk=C:/Qt/Qt5.1.0/5.1.0/msvc2012_64/ skia_arch_type=x86
     _64 skia_arch_width=64 skia_gpu=0 skia_warnings_as_errors=0 skia_win_debuggers_p
     ath=c:/DbgHelp" |  | 
| 114     }, |  | 
| 115     "name": "build nanobench" |  | 
| 116   }, |  | 
| 117   { |  | 
| 118     "cmd": [ |  | 
| 119       "python", |  | 
| 120       "-u", |  | 
| 121       "\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.
     path.isdir(path):\n  if os.path.exists(path):\n    print \"%s exists but is not 
     a dir\" % path\n    sys.exit(1)\n  os.makedirs(path, mode)\n", |  | 
| 122       "[SLAVE_BUILD]\\tmp", |  | 
| 123       "511" |  | 
| 124     ], |  | 
| 125     "cwd": "[SLAVE_BUILD]", |  | 
| 126     "name": "makedirs tmp_dir", |  | 
| 127     "~followup_annotations": [ |  | 
| 128       "@@@STEP_LOG_LINE@python.inline@@@@", |  | 
| 129       "@@@STEP_LOG_LINE@python.inline@import sys, os@@@", |  | 
| 130       "@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@", |  | 
| 131       "@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@", |  | 
| 132       "@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@", |  | 
| 133       "@@@STEP_LOG_LINE@python.inline@  if os.path.exists(path):@@@", |  | 
| 134       "@@@STEP_LOG_LINE@python.inline@    print \"%s exists but is not a dir\" %
      path@@@", |  | 
| 135       "@@@STEP_LOG_LINE@python.inline@    sys.exit(1)@@@", |  | 
| 136       "@@@STEP_LOG_LINE@python.inline@  os.makedirs(path, mode)@@@", |  | 
| 137       "@@@STEP_LOG_END@python.inline@@@" |  | 
| 138     ] |  | 
| 139   }, |  | 
| 140   { |  | 
| 141     "cmd": [ |  | 
| 142       "python", |  | 
| 143       "-u", |  | 
| 144       "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", |  | 
| 145       "[SLAVE_BUILD]\\skia\\SKP_VERSION", |  | 
| 146       "/path/to/tmp/" |  | 
| 147     ], |  | 
| 148     "cwd": "[SLAVE_BUILD]", |  | 
| 149     "name": "Get expected SKP_VERSION" |  | 
| 150   }, |  | 
| 151   { |  | 
| 152     "cmd": [ |  | 
| 153       "python", |  | 
| 154       "-u", |  | 
| 155       "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", |  | 
| 156       "[SLAVE_BUILD]\\tmp\\SKP_VERSION", |  | 
| 157       "/path/to/tmp/" |  | 
| 158     ], |  | 
| 159     "cwd": "[SLAVE_BUILD]", |  | 
| 160     "name": "Get downloaded SKP_VERSION" |  | 
| 161   }, |  | 
| 162   { |  | 
| 163     "cmd": [ |  | 
| 164       "python", |  | 
| 165       "-u", |  | 
| 166       "RECIPE_MODULE[gsutil]\\resources\\gsutil_wrapper.py", |  | 
| 167       "--", |  | 
| 168       "[DEPOT_TOOLS]\\gsutil.py", |  | 
| 169       "--force-version", |  | 
| 170       "3.25", |  | 
| 171       "----", |  | 
| 172       "cat", |  | 
| 173       "gs://chromium-skia-gm/skimage/input/TIMESTAMP_LAST_UPLOAD_COMPLETED" |  | 
| 174     ], |  | 
| 175     "cwd": "[SLAVE_BUILD]", |  | 
| 176     "name": "gsutil cat TIMESTAMP_LAST_UPLOAD_COMPLETED", |  | 
| 177     "stdout": "/path/to/tmp/" |  | 
| 178   }, |  | 
| 179   { |  | 
| 180     "cmd": [ |  | 
| 181       "python", |  | 
| 182       "-u", |  | 
| 183       "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", |  | 
| 184       "[SLAVE_BUILD]\\tmp\\SKIMAGE_VERSION", |  | 
| 185       "/path/to/tmp/" |  | 
| 186     ], |  | 
| 187     "cwd": "[SLAVE_BUILD]", |  | 
| 188     "name": "Get downloaded SKIMAGE_VERSION" |  | 
| 189   }, |  | 
| 190   { |  | 
| 191     "cmd": [ |  | 
| 192       "python", |  | 
| 193       "-u", |  | 
| 194       "\nimport os, sys\nfrom common import chromium_utils\n\nif os.path.exists(
     sys.argv[1]):\n  chromium_utils.RemoveDirectory(sys.argv[1])\n", |  | 
| 195       "[SLAVE_BUILD]\\dm" |  | 
| 196     ], |  | 
| 197     "cwd": "[SLAVE_BUILD]", |  | 
| 198     "name": "rmtree dm", |  | 
| 199     "~followup_annotations": [ |  | 
| 200       "@@@STEP_LOG_LINE@python.inline@@@@", |  | 
| 201       "@@@STEP_LOG_LINE@python.inline@import os, sys@@@", |  | 
| 202       "@@@STEP_LOG_LINE@python.inline@from common import chromium_utils@@@", |  | 
| 203       "@@@STEP_LOG_LINE@python.inline@@@@", |  | 
| 204       "@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@", |  | 
| 205       "@@@STEP_LOG_LINE@python.inline@  chromium_utils.RemoveDirectory(sys.argv[
     1])@@@", |  | 
| 206       "@@@STEP_LOG_END@python.inline@@@" |  | 
| 207     ] |  | 
| 208   }, |  | 
| 209   { |  | 
| 210     "cmd": [ |  | 
| 211       "python", |  | 
| 212       "-u", |  | 
| 213       "\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.
     path.isdir(path):\n  if os.path.exists(path):\n    print \"%s exists but is not 
     a dir\" % path\n    sys.exit(1)\n  os.makedirs(path, mode)\n", |  | 
| 214       "[SLAVE_BUILD]\\dm", |  | 
| 215       "511" |  | 
| 216     ], |  | 
| 217     "cwd": "[SLAVE_BUILD]", |  | 
| 218     "name": "makedirs dm", |  | 
| 219     "~followup_annotations": [ |  | 
| 220       "@@@STEP_LOG_LINE@python.inline@@@@", |  | 
| 221       "@@@STEP_LOG_LINE@python.inline@import sys, os@@@", |  | 
| 222       "@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@", |  | 
| 223       "@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@", |  | 
| 224       "@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@", |  | 
| 225       "@@@STEP_LOG_LINE@python.inline@  if os.path.exists(path):@@@", |  | 
| 226       "@@@STEP_LOG_LINE@python.inline@    print \"%s exists but is not a dir\" %
      path@@@", |  | 
| 227       "@@@STEP_LOG_LINE@python.inline@    sys.exit(1)@@@", |  | 
| 228       "@@@STEP_LOG_LINE@python.inline@  os.makedirs(path, mode)@@@", |  | 
| 229       "@@@STEP_LOG_END@python.inline@@@" |  | 
| 230     ] |  | 
| 231   }, |  | 
| 232   { |  | 
| 233     "cmd": [ |  | 
| 234       "python", |  | 
| 235       "-u", |  | 
| 236       "\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\
     nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/2/_/hashes'\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(sy
     s.argv[1], 'w') as f:\n        f.write(hashes)\n        break\n  except:\n    pr
     int 'Failed to get uninteresting hashes from %s' % HASHES_URL\n    if retry == R
     ETRIES:\n      raise\n    waittime = WAIT_BASE * math.pow(2, retry)\n    print '
     Retry in %d seconds.' % waittime\n    time.sleep(waittime)\n", |  | 
| 237       "[SLAVE_BUILD]\\tmp\\uninteresting_hashes.txt" |  | 
| 238     ], |  | 
| 239     "cwd": "[SLAVE_BUILD]\\skia", |  | 
| 240     "name": "get uninteresting hashes", |  | 
| 241     "~followup_annotations": [ |  | 
| 242       "@@@STEP_LOG_LINE@python.inline@@@@", |  | 
| 243       "@@@STEP_LOG_LINE@python.inline@import contextlib@@@", |  | 
| 244       "@@@STEP_LOG_LINE@python.inline@import math@@@", |  | 
| 245       "@@@STEP_LOG_LINE@python.inline@import socket@@@", |  | 
| 246       "@@@STEP_LOG_LINE@python.inline@import sys@@@", |  | 
| 247       "@@@STEP_LOG_LINE@python.inline@import time@@@", |  | 
| 248       "@@@STEP_LOG_LINE@python.inline@import urllib2@@@", |  | 
| 249       "@@@STEP_LOG_LINE@python.inline@@@@", |  | 
| 250       "@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/2/_/ha
     shes'@@@", |  | 
| 251       "@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@", |  | 
| 252       "@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@", |  | 
| 253       "@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@", |  | 
| 254       "@@@STEP_LOG_LINE@python.inline@@@@", |  | 
| 255       "@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@", |  | 
| 256       "@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@", |  | 
| 257       "@@@STEP_LOG_LINE@python.inline@  try:@@@", |  | 
| 258       "@@@STEP_LOG_LINE@python.inline@    with contextlib.closing(@@@", |  | 
| 259       "@@@STEP_LOG_LINE@python.inline@        urllib2.urlopen(HASHES_URL, timeou
     t=TIMEOUT)) as w:@@@", |  | 
| 260       "@@@STEP_LOG_LINE@python.inline@      hashes = w.read()@@@", |  | 
| 261       "@@@STEP_LOG_LINE@python.inline@      with open(sys.argv[1], 'w') as f:@@@
     ", |  | 
| 262       "@@@STEP_LOG_LINE@python.inline@        f.write(hashes)@@@", |  | 
| 263       "@@@STEP_LOG_LINE@python.inline@        break@@@", |  | 
| 264       "@@@STEP_LOG_LINE@python.inline@  except:@@@", |  | 
| 265       "@@@STEP_LOG_LINE@python.inline@    print 'Failed to get uninteresting has
     hes from %s' % HASHES_URL@@@", |  | 
| 266       "@@@STEP_LOG_LINE@python.inline@    if retry == RETRIES:@@@", |  | 
| 267       "@@@STEP_LOG_LINE@python.inline@      raise@@@", |  | 
| 268       "@@@STEP_LOG_LINE@python.inline@    waittime = WAIT_BASE * math.pow(2, ret
     ry)@@@", |  | 
| 269       "@@@STEP_LOG_LINE@python.inline@    print 'Retry in %d seconds.' % waittim
     e@@@", |  | 
| 270       "@@@STEP_LOG_LINE@python.inline@    time.sleep(waittime)@@@", |  | 
| 271       "@@@STEP_LOG_END@python.inline@@@" |  | 
| 272     ] |  | 
| 273   }, |  | 
| 274   { |  | 
| 275     "cmd": [ |  | 
| 276       "python", |  | 
| 277       "-u", |  | 
| 278       "[SLAVE_BUILD]\\skia\\tools/dm_flags.py", |  | 
| 279       "/path/to/tmp/json", |  | 
| 280       "Test-Win8-MSVC-ShuttleA-CPU-AVX-x86_64-Debug" |  | 
| 281     ], |  | 
| 282     "cwd": "[SLAVE_BUILD]\\skia", |  | 
| 283     "name": "exec dm_flags.py", |  | 
| 284     "~followup_annotations": [ |  | 
| 285       "@@@STEP_LOG_LINE@json.output@[@@@", |  | 
| 286       "@@@STEP_LOG_LINE@json.output@  \"--dummy-flags\"@@@", |  | 
| 287       "@@@STEP_LOG_LINE@json.output@]@@@", |  | 
| 288       "@@@STEP_LOG_END@json.output@@@" |  | 
| 289     ] |  | 
| 290   }, |  | 
| 291   { |  | 
| 292     "cmd": [ |  | 
| 293       "[SLAVE_BUILD]\\skia\\out\\Debug_x64\\dm", |  | 
| 294       "--undefok", |  | 
| 295       "--verbose", |  | 
| 296       "--resourcePath", |  | 
| 297       "[SLAVE_BUILD]\\skia\\resources", |  | 
| 298       "--skps", |  | 
| 299       "[SLAVE_BUILD]\\playback\\skps", |  | 
| 300       "--images", |  | 
| 301       "[SLAVE_BUILD]\\images", |  | 
| 302       "--writePath", |  | 
| 303       "[SLAVE_BUILD]\\dm", |  | 
| 304       "--nameByHash", |  | 
| 305       "--properties", |  | 
| 306       "gitHash", |  | 
| 307       "164710", |  | 
| 308       "build_number", |  | 
| 309       "5", |  | 
| 310       "--key", |  | 
| 311       "arch", |  | 
| 312       "x86_64", |  | 
| 313       "compiler", |  | 
| 314       "MSVC", |  | 
| 315       "configuration", |  | 
| 316       "Debug", |  | 
| 317       "cpu_or_gpu", |  | 
| 318       "CPU", |  | 
| 319       "cpu_or_gpu_value", |  | 
| 320       "AVX", |  | 
| 321       "model", |  | 
| 322       "ShuttleA", |  | 
| 323       "os", |  | 
| 324       "Win8", |  | 
| 325       "--uninterestingHashesFile", |  | 
| 326       "[SLAVE_BUILD]\\tmp\\uninteresting_hashes.txt", |  | 
| 327       "--nogpu", |  | 
| 328       "--dummy-flags" |  | 
| 329     ], |  | 
| 330     "cwd": "[SLAVE_BUILD]", |  | 
| 331     "name": "dm" |  | 
| 332   }, |  | 
| 333   { |  | 
| 334     "cmd": [ |  | 
| 335       "python", |  | 
| 336       "-u", |  | 
| 337       "RECIPE_MODULE[skia]\\resources\\upload_dm_results.py", |  | 
| 338       "[SLAVE_BUILD]\\dm", |  | 
| 339       "164710", |  | 
| 340       "Test-Win8-MSVC-ShuttleA-CPU-AVX-x86_64-Debug", |  | 
| 341       "5", |  | 
| 342       "", |  | 
| 343       "[SLAVE_BUILD]\\skia\\common\\py\\utils" |  | 
| 344     ], |  | 
| 345     "cwd": "[SLAVE_BUILD]\\skia", |  | 
| 346     "name": "Upload DM Results" |  | 
| 347   }, |  | 
| 348   { |  | 
| 349     "cmd": [ |  | 
| 350       "python", |  | 
| 351       "-u", |  | 
| 352       "[SLAVE_BUILD]\\skia\\tools/nanobench_flags.py", |  | 
| 353       "/path/to/tmp/json", |  | 
| 354       "Test-Win8-MSVC-ShuttleA-CPU-AVX-x86_64-Debug" |  | 
| 355     ], |  | 
| 356     "cwd": "[SLAVE_BUILD]\\skia", |  | 
| 357     "name": "exec nanobench_flags.py", |  | 
| 358     "~followup_annotations": [ |  | 
| 359       "@@@STEP_LOG_LINE@json.output@[@@@", |  | 
| 360       "@@@STEP_LOG_LINE@json.output@  \"--dummy-flags\"@@@", |  | 
| 361       "@@@STEP_LOG_LINE@json.output@]@@@", |  | 
| 362       "@@@STEP_LOG_END@json.output@@@" |  | 
| 363     ] |  | 
| 364   }, |  | 
| 365   { |  | 
| 366     "cmd": [ |  | 
| 367       "[SLAVE_BUILD]\\skia\\out\\Debug_x64\\nanobench", |  | 
| 368       "--undefok", |  | 
| 369       "-i", |  | 
| 370       "[SLAVE_BUILD]\\skia\\resources", |  | 
| 371       "--skps", |  | 
| 372       "[SLAVE_BUILD]\\playback\\skps", |  | 
| 373       "--nogpu", |  | 
| 374       "--dummy-flags" |  | 
| 375     ], |  | 
| 376     "cwd": "[SLAVE_BUILD]", |  | 
| 377     "name": "nanobench" |  | 
| 378   } |  | 
| 379 ] |  | 
| OLD | NEW | 
|---|