| OLD | NEW | 
| (Empty) |  | 
 |    1 [ | 
 |    2   { | 
 |    3     "cmd": [ | 
 |    4       "python", | 
 |    5       "-u", | 
 |    6       "\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", | 
 |    7       "[CUSTOM_/_B_WORK]", | 
 |    8       "511" | 
 |    9     ], | 
 |   10     "name": "makedirs checkout_path", | 
 |   11     "~followup_annotations": [ | 
 |   12       "@@@STEP_LOG_LINE@python.inline@@@@", | 
 |   13       "@@@STEP_LOG_LINE@python.inline@import sys, os@@@", | 
 |   14       "@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@", | 
 |   15       "@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@", | 
 |   16       "@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@", | 
 |   17       "@@@STEP_LOG_LINE@python.inline@  if os.path.exists(path):@@@", | 
 |   18       "@@@STEP_LOG_LINE@python.inline@    print \"%s exists but is not a dir\" %
      path@@@", | 
 |   19       "@@@STEP_LOG_LINE@python.inline@    sys.exit(1)@@@", | 
 |   20       "@@@STEP_LOG_LINE@python.inline@  os.makedirs(path, mode)@@@", | 
 |   21       "@@@STEP_LOG_END@python.inline@@@" | 
 |   22     ] | 
 |   23   }, | 
 |   24   { | 
 |   25     "cmd": [ | 
 |   26       "python", | 
 |   27       "-u", | 
 |   28       "RECIPE_PACKAGE_REPO[depot_tools]/gclient.py", | 
 |   29       "config", | 
 |   30       "--spec", | 
 |   31       "cache_dir = '[CUSTOM_/_B_CACHE]'\nsolutions = [{'deps_file': 'DEPS', 'man
     aged': False, 'name': 'skia', 'url': 'https://skia.googlesource.com/skia.git'}]\
     ntarget_os = ['llvm']" | 
 |   32     ], | 
 |   33     "cwd": "[CUSTOM_/_B_WORK]", | 
 |   34     "env": { | 
 |   35       "CHROME_HEADLESS": "1", | 
 |   36       "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]" | 
 |   37     }, | 
 |   38     "name": "gclient setup" | 
 |   39   }, | 
 |   40   { | 
 |   41     "cmd": [ | 
 |   42       "python", | 
 |   43       "-u", | 
 |   44       "RECIPE_PACKAGE_REPO[depot_tools]/gclient.py", | 
 |   45       "sync", | 
 |   46       "--nohooks", | 
 |   47       "--force", | 
 |   48       "--verbose", | 
 |   49       "--delete_unversioned_trees", | 
 |   50       "--revision", | 
 |   51       "skia@abc123", | 
 |   52       "--output-json", | 
 |   53       "/path/to/tmp/json" | 
 |   54     ], | 
 |   55     "cwd": "[CUSTOM_/_B_WORK]", | 
 |   56     "env": { | 
 |   57       "CHROME_HEADLESS": "1", | 
 |   58       "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[dep
     ot_tools]" | 
 |   59     }, | 
 |   60     "name": "gclient sync", | 
 |   61     "~followup_annotations": [ | 
 |   62       "@@@STEP_LOG_LINE@json.output@{@@@", | 
 |   63       "@@@STEP_LOG_LINE@json.output@  \"solutions\": {@@@", | 
 |   64       "@@@STEP_LOG_LINE@json.output@    \"skia/\": {@@@", | 
 |   65       "@@@STEP_LOG_LINE@json.output@      \"revision\": 164710@@@", | 
 |   66       "@@@STEP_LOG_LINE@json.output@    }@@@", | 
 |   67       "@@@STEP_LOG_LINE@json.output@  }@@@", | 
 |   68       "@@@STEP_LOG_LINE@json.output@}@@@", | 
 |   69       "@@@STEP_LOG_END@json.output@@@", | 
 |   70       "@@@SET_BUILD_PROPERTY@got_revision@164710@@@" | 
 |   71     ] | 
 |   72   }, | 
 |   73   { | 
 |   74     "cmd": [ | 
 |   75       "python", | 
 |   76       "-u", | 
 |   77       "[CUSTOM_/_B_WORK]/skia/tools/buildbot_spec.py", | 
 |   78       "/path/to/tmp/json", | 
 |   79       "Build-Mac-Clang-Arm7-Debug-Android" | 
 |   80     ], | 
 |   81     "cwd": "[CUSTOM_/_B_WORK]/skia", | 
 |   82     "name": "exec buildbot_spec.py", | 
 |   83     "~followup_annotations": [ | 
 |   84       "@@@STEP_LOG_LINE@json.output@{@@@", | 
 |   85       "@@@STEP_LOG_LINE@json.output@  \"build_targets\": [@@@", | 
 |   86       "@@@STEP_LOG_LINE@json.output@    \"most\"@@@", | 
 |   87       "@@@STEP_LOG_LINE@json.output@  ], @@@", | 
 |   88       "@@@STEP_LOG_LINE@json.output@  \"builder_cfg\": {@@@", | 
 |   89       "@@@STEP_LOG_LINE@json.output@    \"compiler\": \"Clang\", @@@", | 
 |   90       "@@@STEP_LOG_LINE@json.output@    \"configuration\": \"Debug\", @@@", | 
 |   91       "@@@STEP_LOG_LINE@json.output@    \"extra_config\": \"Android\", @@@", | 
 |   92       "@@@STEP_LOG_LINE@json.output@    \"is_trybot\": false, @@@", | 
 |   93       "@@@STEP_LOG_LINE@json.output@    \"os\": \"Mac\", @@@", | 
 |   94       "@@@STEP_LOG_LINE@json.output@    \"role\": \"Build\", @@@", | 
 |   95       "@@@STEP_LOG_LINE@json.output@    \"target_arch\": \"Arm7\"@@@", | 
 |   96       "@@@STEP_LOG_LINE@json.output@  }, @@@", | 
 |   97       "@@@STEP_LOG_LINE@json.output@  \"configuration\": \"Debug\", @@@", | 
 |   98       "@@@STEP_LOG_LINE@json.output@  \"device_cfg\": \"arm_v7_neon\", @@@", | 
 |   99       "@@@STEP_LOG_LINE@json.output@  \"dm_flags\": [@@@", | 
 |  100       "@@@STEP_LOG_LINE@json.output@    \"--dummy-flags\"@@@", | 
 |  101       "@@@STEP_LOG_LINE@json.output@  ], @@@", | 
 |  102       "@@@STEP_LOG_LINE@json.output@  \"do_perf_steps\": false, @@@", | 
 |  103       "@@@STEP_LOG_LINE@json.output@  \"do_test_steps\": false, @@@", | 
 |  104       "@@@STEP_LOG_LINE@json.output@  \"env\": {@@@", | 
 |  105       "@@@STEP_LOG_LINE@json.output@    \"CC\": \"/usr/bin/clang\", @@@", | 
 |  106       "@@@STEP_LOG_LINE@json.output@    \"CXX\": \"/usr/bin/clang++\", @@@", | 
 |  107       "@@@STEP_LOG_LINE@json.output@    \"GYP_DEFINES\": \"skia_arch_type=arm sk
     ia_clang_build=1 skia_warnings_as_errors=0\"@@@", | 
 |  108       "@@@STEP_LOG_LINE@json.output@  }, @@@", | 
 |  109       "@@@STEP_LOG_LINE@json.output@  \"nanobench_flags\": [@@@", | 
 |  110       "@@@STEP_LOG_LINE@json.output@    \"--dummy-flags\"@@@", | 
 |  111       "@@@STEP_LOG_LINE@json.output@  ], @@@", | 
 |  112       "@@@STEP_LOG_LINE@json.output@  \"upload_dm_results\": true, @@@", | 
 |  113       "@@@STEP_LOG_LINE@json.output@  \"upload_perf_results\": false@@@", | 
 |  114       "@@@STEP_LOG_LINE@json.output@}@@@", | 
 |  115       "@@@STEP_LOG_END@json.output@@@" | 
 |  116     ] | 
 |  117   }, | 
 |  118   { | 
 |  119     "cmd": [ | 
 |  120       "which", | 
 |  121       "adb" | 
 |  122     ], | 
 |  123     "name": "which adb", | 
 |  124     "stdout": "/path/to/tmp/", | 
 |  125     "~followup_annotations": [ | 
 |  126       "step returned non-zero exit code: 1", | 
 |  127       "@@@STEP_EXCEPTION@@@" | 
 |  128     ] | 
 |  129   }, | 
 |  130   { | 
 |  131     "cmd": [ | 
 |  132       "python", | 
 |  133       "-u", | 
 |  134       "import json\nimport subprocess\nimport sys\n\nccache = None\ntry:\n  ccac
     he = subprocess.check_output(['which', 'ccache']).rstrip()\nexcept:\n  pass\npri
     nt json.dumps({'ccache': ccache})\n" | 
 |  135     ], | 
 |  136     "env": { | 
 |  137       "BUILDTYPE": "Debug", | 
 |  138       "CC": "/usr/bin/clang", | 
 |  139       "CHROME_HEADLESS": "1", | 
 |  140       "CXX": "/usr/bin/clang++", | 
 |  141       "GYP_DEFINES": "skia_arch_type=arm skia_clang_build=1 skia_warnings_as_err
     ors=0", | 
 |  142       "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[dep
     ot_tools]", | 
 |  143       "SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Mac-Clang-Arm7-Debug-Android
     " | 
 |  144     }, | 
 |  145     "name": "has ccache?", | 
 |  146     "stdout": "/path/to/tmp/json", | 
 |  147     "~followup_annotations": [ | 
 |  148       "@@@STEP_LOG_LINE@json.output@{@@@", | 
 |  149       "@@@STEP_LOG_LINE@json.output@  \"ccache\": \"/usr/bin/ccache\"@@@", | 
 |  150       "@@@STEP_LOG_LINE@json.output@}@@@", | 
 |  151       "@@@STEP_LOG_END@json.output@@@", | 
 |  152       "@@@STEP_LOG_LINE@python.inline@import json@@@", | 
 |  153       "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", | 
 |  154       "@@@STEP_LOG_LINE@python.inline@import sys@@@", | 
 |  155       "@@@STEP_LOG_LINE@python.inline@@@@", | 
 |  156       "@@@STEP_LOG_LINE@python.inline@ccache = None@@@", | 
 |  157       "@@@STEP_LOG_LINE@python.inline@try:@@@", | 
 |  158       "@@@STEP_LOG_LINE@python.inline@  ccache = subprocess.check_output(['which
     ', 'ccache']).rstrip()@@@", | 
 |  159       "@@@STEP_LOG_LINE@python.inline@except:@@@", | 
 |  160       "@@@STEP_LOG_LINE@python.inline@  pass@@@", | 
 |  161       "@@@STEP_LOG_LINE@python.inline@print json.dumps({'ccache': ccache})@@@", | 
 |  162       "@@@STEP_LOG_END@python.inline@@@" | 
 |  163     ] | 
 |  164   }, | 
 |  165   { | 
 |  166     "cmd": [ | 
 |  167       "[CUSTOM_/_B_WORK]/skia/platform_tools/android/bin/android_ninja", | 
 |  168       "most", | 
 |  169       "-d", | 
 |  170       "arm_v7_neon", | 
 |  171       "--clang" | 
 |  172     ], | 
 |  173     "cwd": "[CUSTOM_/_B_WORK]/skia", | 
 |  174     "env": { | 
 |  175       "ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk", | 
 |  176       "ANDROID_MAKE_CCACHE": "/usr/bin/ccache", | 
 |  177       "ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk", | 
 |  178       "BUILDTYPE": "Debug", | 
 |  179       "CC": "/usr/bin/clang", | 
 |  180       "CHROME_HEADLESS": "1", | 
 |  181       "CXX": "/usr/bin/clang++", | 
 |  182       "GYP_DEFINES": "skia_arch_type=arm skia_clang_build=1 skia_warnings_as_err
     ors=0", | 
 |  183       "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[dep
     ot_tools]", | 
 |  184       "SKIA_ANDROID_VERBOSE_SETUP": "1", | 
 |  185       "SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Mac-Clang-Arm7-Debug-Android
     " | 
 |  186     }, | 
 |  187     "name": "build most" | 
 |  188   }, | 
 |  189   { | 
 |  190     "cmd": [ | 
 |  191       "python", | 
 |  192       "-u", | 
 |  193       "import errno\nimport glob\nimport os\nimport shutil\nimport sys\n\nsrc = 
     sys.argv[1]\ndst = sys.argv[2]\nbuild_products_whitelist = ['dm', 'dm.exe', 'nan
     obench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so
     ', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe']\n\ntry:\n  
     os.makedirs(dst)\nexcept OSError as e:\n  if e.errno != errno.EEXIST:\n    raise
     \n\nfor pattern in build_products_whitelist:\n  path = os.path.join(src, pattern
     )\n  for f in glob.glob(path):\n    dst_path = os.path.join(dst, os.path.relpath
     (f, src))\n    if not os.path.isdir(os.path.dirname(dst_path)):\n      os.makedi
     rs(os.path.dirname(dst_path))\n    print 'Copying build product %s to %s' % (f, 
     dst_path)\n    shutil.move(f, dst_path)\n", | 
 |  194       "[CUSTOM_/_B_WORK]/skia/out/Build-Mac-Clang-Arm7-Debug-Android/Debug", | 
 |  195       "[CUSTOM_[SWARM_OUT_DIR]]/out/Debug" | 
 |  196     ], | 
 |  197     "name": "copy build products", | 
 |  198     "~followup_annotations": [ | 
 |  199       "@@@STEP_LOG_LINE@python.inline@import errno@@@", | 
 |  200       "@@@STEP_LOG_LINE@python.inline@import glob@@@", | 
 |  201       "@@@STEP_LOG_LINE@python.inline@import os@@@", | 
 |  202       "@@@STEP_LOG_LINE@python.inline@import shutil@@@", | 
 |  203       "@@@STEP_LOG_LINE@python.inline@import sys@@@", | 
 |  204       "@@@STEP_LOG_LINE@python.inline@@@@", | 
 |  205       "@@@STEP_LOG_LINE@python.inline@src = sys.argv[1]@@@", | 
 |  206       "@@@STEP_LOG_LINE@python.inline@dst = sys.argv[2]@@@", | 
 |  207       "@@@STEP_LOG_LINE@python.inline@build_products_whitelist = ['dm', 'dm.exe'
     , 'nanobench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'li
     b/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe']@@@", | 
 |  208       "@@@STEP_LOG_LINE@python.inline@@@@", | 
 |  209       "@@@STEP_LOG_LINE@python.inline@try:@@@", | 
 |  210       "@@@STEP_LOG_LINE@python.inline@  os.makedirs(dst)@@@", | 
 |  211       "@@@STEP_LOG_LINE@python.inline@except OSError as e:@@@", | 
 |  212       "@@@STEP_LOG_LINE@python.inline@  if e.errno != errno.EEXIST:@@@", | 
 |  213       "@@@STEP_LOG_LINE@python.inline@    raise@@@", | 
 |  214       "@@@STEP_LOG_LINE@python.inline@@@@", | 
 |  215       "@@@STEP_LOG_LINE@python.inline@for pattern in build_products_whitelist:@@
     @", | 
 |  216       "@@@STEP_LOG_LINE@python.inline@  path = os.path.join(src, pattern)@@@", | 
 |  217       "@@@STEP_LOG_LINE@python.inline@  for f in glob.glob(path):@@@", | 
 |  218       "@@@STEP_LOG_LINE@python.inline@    dst_path = os.path.join(dst, os.path.r
     elpath(f, src))@@@", | 
 |  219       "@@@STEP_LOG_LINE@python.inline@    if not os.path.isdir(os.path.dirname(d
     st_path)):@@@", | 
 |  220       "@@@STEP_LOG_LINE@python.inline@      os.makedirs(os.path.dirname(dst_path
     ))@@@", | 
 |  221       "@@@STEP_LOG_LINE@python.inline@    print 'Copying build product %s to %s'
      % (f, dst_path)@@@", | 
 |  222       "@@@STEP_LOG_LINE@python.inline@    shutil.move(f, dst_path)@@@", | 
 |  223       "@@@STEP_LOG_END@python.inline@@@" | 
 |  224     ] | 
 |  225   }, | 
 |  226   { | 
 |  227     "name": "$result", | 
 |  228     "recipe_result": null, | 
 |  229     "status_code": 0 | 
 |  230   } | 
 |  231 ] | 
| OLD | NEW |