[
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "ensure-directory",
      "--mode",
      "0777",
      "[START_DIR]/tmp"
    ],
    "infra_step": true,
    "name": "makedirs tmp_dir"
  },
  {
    "cmd": [
      "python",
      "-u",
      "import os\nprint os.environ.get('SWARMING_BOT_ID', '')\n"
    ],
    "name": "get swarming bot id",
    "stdout": "/path/to/tmp/",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@python.inline@import os@@@",
      "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_BOT_ID', '')@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "cmd": [
      "/usr/bin/adb.1.0.35",
      "shell",
      "mkdir",
      "-p",
      "/sdcard/revenge_of_the_skiabot/resources"
    ],
    "cwd": "[START_DIR]/skia",
    "env": {
      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "copy",
      "[START_DIR]/skia/infra/bots/assets/skp/VERSION",
      "/path/to/tmp/"
    ],
    "infra_step": true,
    "name": "Get skp VERSION"
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "copy",
      "42",
      "[START_DIR]/tmp/SKP_VERSION"
    ],
    "infra_step": true,
    "name": "write SKP_VERSION"
  },
  {
    "cmd": [
      "/usr/bin/adb.1.0.35",
      "shell",
      "cat",
      "/sdcard/revenge_of_the_skiabot/SKP_VERSION"
    ],
    "cwd": "[START_DIR]/skia",
    "env": {
      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
    "stdout": "/path/to/tmp/"
  },
  {
    "cmd": [
      "/usr/bin/adb.1.0.35",
      "shell",
      "rm",
      "-f",
      "/sdcard/revenge_of_the_skiabot/SKP_VERSION"
    ],
    "cwd": "[START_DIR]/skia",
    "env": {
      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
  },
  {
    "cmd": [
      "/usr/bin/adb.1.0.35",
      "shell",
      "rm",
      "-rf",
      "/sdcard/revenge_of_the_skiabot/skps"
    ],
    "cwd": "[START_DIR]/skia",
    "env": {
      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "rm /sdcard/revenge_of_the_skiabot/skps"
  },
  {
    "cmd": [
      "/usr/bin/adb.1.0.35",
      "shell",
      "mkdir",
      "-p",
      "/sdcard/revenge_of_the_skiabot/skps"
    ],
    "cwd": "[START_DIR]/skia",
    "env": {
      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
  },
  {
    "cmd": [
      "python",
      "-u",
      "\nimport os\nimport subprocess\nimport sys\nhost   = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n  p = os.path.relpath(d, host)\n  if p != '.' and p.startswith('.'):\n    continue\n  for f in fs:\n    print os.path.join(p,f)\n    subprocess.check_call(['/usr/bin/adb.1.0.35', 'push',\n                           os.path.realpath(os.path.join(host, p, f)),\n                           os.path.join(device, p, f)])\n",
      "[START_DIR]/skp",
      "/sdcard/revenge_of_the_skiabot/skps"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "push [START_DIR]/skp/* /sdcard/revenge_of_the_skiabot/skps",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@import os@@@",
      "@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
      "@@@STEP_LOG_LINE@python.inline@import sys@@@",
      "@@@STEP_LOG_LINE@python.inline@host   = sys.argv[1]@@@",
      "@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
      "@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
      "@@@STEP_LOG_LINE@python.inline@  p = os.path.relpath(d, host)@@@",
      "@@@STEP_LOG_LINE@python.inline@  if p != '.' and p.startswith('.'):@@@",
      "@@@STEP_LOG_LINE@python.inline@    continue@@@",
      "@@@STEP_LOG_LINE@python.inline@  for f in fs:@@@",
      "@@@STEP_LOG_LINE@python.inline@    print os.path.join(p,f)@@@",
      "@@@STEP_LOG_LINE@python.inline@    subprocess.check_call(['/usr/bin/adb.1.0.35', 'push',@@@",
      "@@@STEP_LOG_LINE@python.inline@                           os.path.realpath(os.path.join(host, p, f)),@@@",
      "@@@STEP_LOG_LINE@python.inline@                           os.path.join(device, p, f)])@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "cmd": [
      "/usr/bin/adb.1.0.35",
      "push",
      "[START_DIR]/tmp/SKP_VERSION",
      "/sdcard/revenge_of_the_skiabot/SKP_VERSION"
    ],
    "cwd": "[START_DIR]/skia",
    "env": {
      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "push [START_DIR]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "ensure-directory",
      "--mode",
      "0777",
      "[START_DIR]/[SWARM_OUT_DIR]"
    ],
    "infra_step": true,
    "name": "makedirs perf_dir"
  },
  {
    "cmd": [
      "adb.1.0.35",
      "push",
      "[START_DIR]/build/skpbench",
      "/data/local/tmp/"
    ],
    "cwd": "[START_DIR]/skia",
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "push skpbench"
  },
  {
    "cmd": [
      "python",
      "-u",
      "[START_DIR]/skia/tools/skpbench/skpbench.py",
      "/data/local/tmp/skpbench",
      "--resultsfile",
      "[START_DIR]/[SWARM_OUT_DIR]/table",
      "--config",
      "gles",
      "-v5",
      "--adb",
      "--adb_binary",
      "adb.1.0.35",
      "--pr",
      "ccpr",
      "--nocache",
      "/sdcard/revenge_of_the_skiabot/skps/desk_*svg.skp",
      "/sdcard/revenge_of_the_skiabot/skps/desk_chalkboard.skp"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "name": "skpbench"
  },
  {
    "cmd": [
      "python",
      "-u",
      "import os\nprint os.environ.get('SWARMING_TASK_ID', '')\n"
    ],
    "name": "get swarming task id",
    "stdout": "/path/to/tmp/",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@python.inline@import os@@@",
      "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_TASK_ID', '')@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "cmd": [
      "python",
      "-u",
      "[START_DIR]/skia/tools/skpbench/skiaperf.py",
      "[START_DIR]/[SWARM_OUT_DIR]/table",
      "--properties",
      "gitHash",
      "abc123",
      "swarming_bot_id",
      "skia-bot-123",
      "swarming_task_id",
      "123456",
      "--outfile",
      "[START_DIR]/[SWARM_OUT_DIR]/skpbench_abc123_1337000001.json",
      "--key",
      "arch",
      "arm64",
      "compiler",
      "Clang",
      "cpu_or_gpu",
      "GPU",
      "cpu_or_gpu_value",
      "Adreno530",
      "extra_config",
      "Android_CCPR_Skpbench",
      "model",
      "Pixel",
      "os",
      "Android",
      "test_filter",
      "All"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "name": "Parse skpbench output into Perf json"
  },
  {
    "cmd": [
      "python",
      "-u",
      "\nimport os\nimport subprocess\nimport sys\nout = sys.argv[1]\nlog = subprocess.check_output(['/usr/bin/adb.1.0.35', 'logcat', '-d'])\nfor line in log.split('\\n'):\n  tokens = line.split()\n  if len(tokens) == 11 and tokens[-7] == 'F' and tokens[-3] == 'pc':\n    addr, path = tokens[-2:]\n    local = os.path.join(out, os.path.basename(path))\n    if os.path.exists(local):\n      sym = subprocess.check_output(['addr2line', '-Cfpe', local, addr])\n      line = line.replace(addr, addr + ' ' + sym.strip())\n  print line\n",
      "[START_DIR]/build"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "dump log",
    "timeout": 300,
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@import os@@@",
      "@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
      "@@@STEP_LOG_LINE@python.inline@import sys@@@",
      "@@@STEP_LOG_LINE@python.inline@out = sys.argv[1]@@@",
      "@@@STEP_LOG_LINE@python.inline@log = subprocess.check_output(['/usr/bin/adb.1.0.35', 'logcat', '-d'])@@@",
      "@@@STEP_LOG_LINE@python.inline@for line in log.split('\\n'):@@@",
      "@@@STEP_LOG_LINE@python.inline@  tokens = line.split()@@@",
      "@@@STEP_LOG_LINE@python.inline@  if len(tokens) == 11 and tokens[-7] == 'F' and tokens[-3] == 'pc':@@@",
      "@@@STEP_LOG_LINE@python.inline@    addr, path = tokens[-2:]@@@",
      "@@@STEP_LOG_LINE@python.inline@    local = os.path.join(out, os.path.basename(path))@@@",
      "@@@STEP_LOG_LINE@python.inline@    if os.path.exists(local):@@@",
      "@@@STEP_LOG_LINE@python.inline@      sym = subprocess.check_output(['addr2line', '-Cfpe', local, addr])@@@",
      "@@@STEP_LOG_LINE@python.inline@      line = line.replace(addr, addr + ' ' + sym.strip())@@@",
      "@@@STEP_LOG_LINE@python.inline@  print line@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "cmd": [
      "/usr/bin/adb.1.0.35",
      "kill-server"
    ],
    "cwd": "[START_DIR]/skia",
    "env": {
      "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey",
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "kill adb server"
  },
  {
    "jsonResult": null,
    "name": "$result"
  }
]