| Index: scripts/slave/recipes/skia/skia.expected/Test-Android-GCC-Nexus10-GPU-MaliT604-Arm7-Release.json | 
| diff --git a/scripts/slave/recipes/skia/skia.expected/Test-Android-GCC-Nexus10-GPU-MaliT604-Arm7-Release.json b/scripts/slave/recipes/skia/skia.expected/Test-Android-GCC-Nexus10-GPU-MaliT604-Arm7-Release.json | 
| deleted file mode 100644 | 
| index 02f79752ba10b68729a8dac306b2d03540e48c79..0000000000000000000000000000000000000000 | 
| --- a/scripts/slave/recipes/skia/skia.expected/Test-Android-GCC-Nexus10-GPU-MaliT604-Arm7-Release.json | 
| +++ /dev/null | 
| @@ -1,575 +0,0 @@ | 
| -[ | 
| -  { | 
| -    "cmd": [ | 
| -      "git", | 
| -      "fetch" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]/skia", | 
| -    "name": "git fetch" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "git", | 
| -      "reset", | 
| -      "--hard", | 
| -      "abc123" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]/skia", | 
| -    "name": "git reset" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "git", | 
| -      "clean", | 
| -      "-d", | 
| -      "-f" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]/skia", | 
| -    "name": "git clean" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "python", | 
| -      "-u", | 
| -      "[DEPOT_TOOLS]/gclient.py", | 
| -      "config", | 
| -      "--spec", | 
| -      "cache_dir = None\nsolutions = [{'deps_file': 'DEPS', 'managed': True, 'name': 'skia', 'url': 'https://skia.googlesource.com/skia.git'}]\ntarget_os = ['android']" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "gclient setup" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "python", | 
| -      "-u", | 
| -      "[DEPOT_TOOLS]/gclient.py", | 
| -      "sync", | 
| -      "--nohooks", | 
| -      "--force", | 
| -      "--verbose", | 
| -      "--delete_unversioned_trees", | 
| -      "--revision", | 
| -      "skia@abc123", | 
| -      "--output-json", | 
| -      "/path/to/tmp/json" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "gclient sync", | 
| -    "~followup_annotations": [ | 
| -      "@@@STEP_LOG_LINE@json.output@{@@@", | 
| -      "@@@STEP_LOG_LINE@json.output@  \"solutions\": {@@@", | 
| -      "@@@STEP_LOG_LINE@json.output@    \"skia/\": {@@@", | 
| -      "@@@STEP_LOG_LINE@json.output@      \"revision\": 164710@@@", | 
| -      "@@@STEP_LOG_LINE@json.output@    }@@@", | 
| -      "@@@STEP_LOG_LINE@json.output@  }@@@", | 
| -      "@@@STEP_LOG_LINE@json.output@}@@@", | 
| -      "@@@STEP_LOG_END@json.output@@@", | 
| -      "@@@SET_BUILD_PROPERTY@got_revision@164710@@@" | 
| -    ] | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "which", | 
| -      "ccache" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "has ccache?", | 
| -    "stdout": "/path/to/tmp/", | 
| -    "~followup_annotations": [ | 
| -      "step returned non-zero exit code: 1", | 
| -      "@@@STEP_FAILURE@@@" | 
| -    ] | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "[SLAVE_BUILD]/skia/platform_tools/android/bin/android_ninja", | 
| -      "dm", | 
| -      "-d", | 
| -      "nexus_10" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]/skia", | 
| -    "env": { | 
| -      "ANDROID_SDK_ROOT": "/home/chrome-bot/android-sdk-linux", | 
| -      "BUILDTYPE": "Release", | 
| -      "GYP_DEFINES": "skia_arch_type=arm skia_arch_width=32 skia_warnings_as_errors=0", | 
| -      "SKIA_ANDROID_VERBOSE_SETUP": "1" | 
| -    }, | 
| -    "name": "build dm" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "[SLAVE_BUILD]/skia/platform_tools/android/bin/android_ninja", | 
| -      "nanobench", | 
| -      "-d", | 
| -      "nexus_10" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]/skia", | 
| -    "env": { | 
| -      "ANDROID_SDK_ROOT": "/home/chrome-bot/android-sdk-linux", | 
| -      "BUILDTYPE": "Release", | 
| -      "GYP_DEFINES": "skia_arch_type=arm skia_arch_width=32 skia_warnings_as_errors=0", | 
| -      "SKIA_ANDROID_VERBOSE_SETUP": "1" | 
| -    }, | 
| -    "name": "build nanobench" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "/home/chrome-bot/android-sdk-linux/platform-tools/adb", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "wait-for-device" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "wait for device (1)" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "/home/chrome-bot/android-sdk-linux/platform-tools/adb", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "shell", | 
| -      "echo", | 
| -      "$EXTERNAL_STORAGE" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "get EXTERNAL_STORAGE dir", | 
| -    "stdout": "/path/to/tmp/" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "/home/chrome-bot/android-sdk-linux/platform-tools/adb", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "root" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "adb root" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "sleep", | 
| -      "10" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "wait" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "/home/chrome-bot/android-sdk-linux/platform-tools/adb", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "wait-for-device" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "wait for device (2)" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia", | 
| -      "-s", | 
| -      "R32CB017X2L" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "env": { | 
| -      "ANDROID_SDK_ROOT": "/home/chrome-bot/android-sdk-linux", | 
| -      "SKIA_ANDROID_VERBOSE_SETUP": "1" | 
| -    }, | 
| -    "name": "kill skia" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "/home/chrome-bot/android-sdk-linux/platform-tools/adb", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "shell", | 
| -      "stop" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "stop shell" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "[SLAVE_BUILD]/skia/resources", | 
| -      "/storage/emulated/legacy/skiabot/skia_resources" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "env": { | 
| -      "ANDROID_SDK_ROOT": "/home/chrome-bot/android-sdk-linux", | 
| -      "SKIA_ANDROID_VERBOSE_SETUP": "1" | 
| -    }, | 
| -    "name": "push resources" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "python", | 
| -      "-u", | 
| -      "\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", | 
| -      "[SLAVE_BUILD]/tmp", | 
| -      "511" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "makedirs tmp_dir", | 
| -    "~followup_annotations": [ | 
| -      "@@@STEP_LOG_LINE@python.inline@@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@import sys, os@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@  if os.path.exists(path):@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@    print \"%s exists but is not a dir\" % path@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@    sys.exit(1)@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@  os.makedirs(path, mode)@@@", | 
| -      "@@@STEP_LOG_END@python.inline@@@" | 
| -    ] | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "python", | 
| -      "-u", | 
| -      "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", | 
| -      "[SLAVE_BUILD]/skia/SKP_VERSION", | 
| -      "/path/to/tmp/" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "Get expected SKP_VERSION" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "python", | 
| -      "-u", | 
| -      "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", | 
| -      "[SLAVE_BUILD]/tmp/SKP_VERSION", | 
| -      "/path/to/tmp/" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "Get downloaded SKP_VERSION" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "/home/chrome-bot/android-sdk-linux/platform-tools/adb", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "shell", | 
| -      "cat", | 
| -      "/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "read SKP_VERSION", | 
| -    "stdout": "/path/to/tmp/" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "python", | 
| -      "-u", | 
| -      "RECIPE_MODULE[gsutil]/resources/gsutil_wrapper.py", | 
| -      "--", | 
| -      "[DEPOT_TOOLS]/gsutil.py", | 
| -      "--force-version", | 
| -      "3.25", | 
| -      "----", | 
| -      "cat", | 
| -      "gs://chromium-skia-gm/skimage/input/TIMESTAMP_LAST_UPLOAD_COMPLETED" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "gsutil cat TIMESTAMP_LAST_UPLOAD_COMPLETED", | 
| -    "stdout": "/path/to/tmp/" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "python", | 
| -      "-u", | 
| -      "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", | 
| -      "[SLAVE_BUILD]/tmp/SKIMAGE_VERSION", | 
| -      "/path/to/tmp/" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "Get downloaded SKIMAGE_VERSION" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "/home/chrome-bot/android-sdk-linux/platform-tools/adb", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "shell", | 
| -      "cat", | 
| -      "/storage/emulated/legacy/skiabot/skia_tmp_dir/SKIMAGE_VERSION" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "read SKIMAGE_VERSION", | 
| -    "stdout": "/path/to/tmp/" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "python", | 
| -      "-u", | 
| -      "\nimport os, sys\nfrom common import chromium_utils\n\nif os.path.exists(sys.argv[1]):\n  chromium_utils.RemoveDirectory(sys.argv[1])\n", | 
| -      "[SLAVE_BUILD]/dm" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "rmtree dm", | 
| -    "~followup_annotations": [ | 
| -      "@@@STEP_LOG_LINE@python.inline@@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@import os, sys@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@from common import chromium_utils@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@  chromium_utils.RemoveDirectory(sys.argv[1])@@@", | 
| -      "@@@STEP_LOG_END@python.inline@@@" | 
| -    ] | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "python", | 
| -      "-u", | 
| -      "\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", | 
| -      "[SLAVE_BUILD]/dm", | 
| -      "511" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "makedirs dm", | 
| -    "~followup_annotations": [ | 
| -      "@@@STEP_LOG_LINE@python.inline@@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@import sys, os@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@  if os.path.exists(path):@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@    print \"%s exists but is not a dir\" % path@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@    sys.exit(1)@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@  os.makedirs(path, mode)@@@", | 
| -      "@@@STEP_LOG_END@python.inline@@@" | 
| -    ] | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "/home/chrome-bot/android-sdk-linux/platform-tools/adb", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "shell", | 
| -      "rm", | 
| -      "-r", | 
| -      "/storage/emulated/legacy/skiabot/skia_dm" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "rmdir skia_dm" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "/home/chrome-bot/android-sdk-linux/platform-tools/adb", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "shell", | 
| -      "if", | 
| -      "[", | 
| -      "-e", | 
| -      "/storage/emulated/legacy/skiabot/skia_dm", | 
| -      "];", | 
| -      "then", | 
| -      "echo", | 
| -      "FILE_EXISTS;", | 
| -      "fi" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "exists skia_dm", | 
| -    "stdout": "/path/to/tmp/" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "/home/chrome-bot/android-sdk-linux/platform-tools/adb", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "shell", | 
| -      "mkdir", | 
| -      "-p", | 
| -      "/storage/emulated/legacy/skiabot/skia_dm" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "mkdir skia_dm" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "python", | 
| -      "-u", | 
| -      "\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(sys.argv[1], 'w') as f:\n        f.write(hashes)\n        break\n  except:\n    print 'Failed to get uninteresting hashes from %s' % HASHES_URL\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", | 
| -      "[SLAVE_BUILD]/tmp/uninteresting_hashes.txt" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]/skia", | 
| -    "name": "get uninteresting hashes", | 
| -    "~followup_annotations": [ | 
| -      "@@@STEP_LOG_LINE@python.inline@@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@import contextlib@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@import math@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@import socket@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@import sys@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@import time@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@import urllib2@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/2/_/hashes'@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@  try:@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@    with contextlib.closing(@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@        urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@      hashes = w.read()@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@      with open(sys.argv[1], 'w') as f:@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@        f.write(hashes)@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@        break@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@  except:@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@    print 'Failed to get uninteresting hashes from %s' % HASHES_URL@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@    if retry == RETRIES:@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@      raise@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@    waittime = WAIT_BASE * math.pow(2, retry)@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@    print 'Retry in %d seconds.' % waittime@@@", | 
| -      "@@@STEP_LOG_LINE@python.inline@    time.sleep(waittime)@@@", | 
| -      "@@@STEP_LOG_END@python.inline@@@" | 
| -    ] | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "/home/chrome-bot/android-sdk-linux/platform-tools/adb", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "push", | 
| -      "[SLAVE_BUILD]/tmp/uninteresting_hashes.txt", | 
| -      "/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "push uninteresting_hashes.txt" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "python", | 
| -      "-u", | 
| -      "[SLAVE_BUILD]/skia/tools/dm_flags.py", | 
| -      "/path/to/tmp/json", | 
| -      "Test-Android-GCC-Nexus10-GPU-MaliT604-Arm7-Release" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]/skia", | 
| -    "name": "exec dm_flags.py", | 
| -    "~followup_annotations": [ | 
| -      "@@@STEP_LOG_LINE@json.output@[@@@", | 
| -      "@@@STEP_LOG_LINE@json.output@  \"--dummy-flags\"@@@", | 
| -      "@@@STEP_LOG_LINE@json.output@]@@@", | 
| -      "@@@STEP_LOG_END@json.output@@@" | 
| -    ] | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia", | 
| -      "--logcat", | 
| -      "-d", | 
| -      "nexus_10", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "--release", | 
| -      "dm", | 
| -      "--undefok", | 
| -      "--verbose", | 
| -      "--resourcePath", | 
| -      "/storage/emulated/legacy/skiabot/skia_resources", | 
| -      "--skps", | 
| -      "/storage/emulated/legacy/skiabot/skia_skp/skps", | 
| -      "--images", | 
| -      "/storage/emulated/legacy/skiabot/skia_images", | 
| -      "--writePath", | 
| -      "/storage/emulated/legacy/skiabot/skia_dm", | 
| -      "--nameByHash", | 
| -      "--properties", | 
| -      "gitHash", | 
| -      "164710", | 
| -      "build_number", | 
| -      "5", | 
| -      "--key", | 
| -      "arch", | 
| -      "Arm7", | 
| -      "compiler", | 
| -      "GCC", | 
| -      "configuration", | 
| -      "Release", | 
| -      "cpu_or_gpu", | 
| -      "GPU", | 
| -      "cpu_or_gpu_value", | 
| -      "MaliT604", | 
| -      "model", | 
| -      "Nexus10", | 
| -      "os", | 
| -      "Android", | 
| -      "--uninterestingHashesFile", | 
| -      "/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt", | 
| -      "--nocpu", | 
| -      "--dummy-flags" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "env": { | 
| -      "ANDROID_SDK_ROOT": "/home/chrome-bot/android-sdk-linux", | 
| -      "SKIA_ANDROID_VERBOSE_SETUP": "1" | 
| -    }, | 
| -    "name": "dm" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "/storage/emulated/legacy/skiabot/skia_dm", | 
| -      "[SLAVE_BUILD]/dm" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "env": { | 
| -      "ANDROID_SDK_ROOT": "/home/chrome-bot/android-sdk-linux", | 
| -      "SKIA_ANDROID_VERBOSE_SETUP": "1" | 
| -    }, | 
| -    "name": "pull skia_dm" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "python", | 
| -      "-u", | 
| -      "RECIPE_MODULE[skia]/resources/upload_dm_results.py", | 
| -      "[SLAVE_BUILD]/dm", | 
| -      "164710", | 
| -      "Test-Android-GCC-Nexus10-GPU-MaliT604-Arm7-Release", | 
| -      "5", | 
| -      "", | 
| -      "[SLAVE_BUILD]/skia/common/py/utils" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]/skia", | 
| -    "name": "Upload DM Results" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "/home/chrome-bot/android-sdk-linux/platform-tools/adb", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "reboot" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "reboot" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "sleep", | 
| -      "10" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "wait for reboot" | 
| -  }, | 
| -  { | 
| -    "cmd": [ | 
| -      "/home/chrome-bot/android-sdk-linux/platform-tools/adb", | 
| -      "-s", | 
| -      "R32CB017X2L", | 
| -      "wait-for-device" | 
| -    ], | 
| -    "cwd": "[SLAVE_BUILD]", | 
| -    "name": "wait for device (3)" | 
| -  } | 
| -] | 
|  |