[
  {
    "cmd": [
      "vpython",
      "-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",
    "~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": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "copy",
      "[START_DIR]/skia/infra/bots/assets/mskp/VERSION",
      "/path/to/tmp/"
    ],
    "infra_step": true,
    "name": "Get mskp VERSION",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@VERSION@42@@@",
      "@@@STEP_LOG_END@VERSION@@@"
    ]
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "copy",
      "42",
      "[START_DIR]/tmp/MSKP_VERSION"
    ],
    "infra_step": true,
    "name": "write MSKP_VERSION",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@MSKP_VERSION@42@@@",
      "@@@STEP_LOG_END@MSKP_VERSION@@@"
    ]
  },
  {
    "cmd": [
      "/usr/bin/adb.1.0.35",
      "shell",
      "cat",
      "/sdcard/revenge_of_the_skiabot/MSKP_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/MSKP_VERSION"
  },
  {
    "cmd": [
      "python",
      "-u",
      "\nimport subprocess\nimport sys\n\n# Remove the path.\nadb = sys.argv[1]\npath = sys.argv[2]\nprint('Removing %s' % path)\ncmd = [adb, 'shell', 'rm', '-rf', path]\nprint(' '.join(cmd))\nsubprocess.check_call(cmd)\n\n# Verify that the path was deleted.\nprint('Checking for existence of %s' % path)\ncmd = [adb, 'shell', 'ls', path]\nprint(' '.join(cmd))\ntry:\n  output = subprocess.check_output(\n      cmd, stderr=subprocess.STDOUT).decode('utf-8')\nexcept subprocess.CalledProcessError as e:\n  output = e.output.decode('utf-8')\nprint('Output was:')\nprint('======')\nprint(output)\nprint('======')\nif 'No such file or directory' not in output:\n  raise Exception('%s exists despite being deleted' % path)\n",
      "/usr/bin/adb.1.0.35",
      "/sdcard/revenge_of_the_skiabot/MSKP_VERSION"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "rm /sdcard/revenge_of_the_skiabot/MSKP_VERSION",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
      "@@@STEP_LOG_LINE@python.inline@import sys@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@# Remove the path.@@@",
      "@@@STEP_LOG_LINE@python.inline@adb = sys.argv[1]@@@",
      "@@@STEP_LOG_LINE@python.inline@path = sys.argv[2]@@@",
      "@@@STEP_LOG_LINE@python.inline@print('Removing %s' % path)@@@",
      "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'rm', '-rf', path]@@@",
      "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@",
      "@@@STEP_LOG_LINE@python.inline@subprocess.check_call(cmd)@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@# Verify that the path was deleted.@@@",
      "@@@STEP_LOG_LINE@python.inline@print('Checking for existence of %s' % path)@@@",
      "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'ls', path]@@@",
      "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@",
      "@@@STEP_LOG_LINE@python.inline@try:@@@",
      "@@@STEP_LOG_LINE@python.inline@  output = subprocess.check_output(@@@",
      "@@@STEP_LOG_LINE@python.inline@      cmd, stderr=subprocess.STDOUT).decode('utf-8')@@@",
      "@@@STEP_LOG_LINE@python.inline@except subprocess.CalledProcessError as e:@@@",
      "@@@STEP_LOG_LINE@python.inline@  output = e.output.decode('utf-8')@@@",
      "@@@STEP_LOG_LINE@python.inline@print('Output was:')@@@",
      "@@@STEP_LOG_LINE@python.inline@print('======')@@@",
      "@@@STEP_LOG_LINE@python.inline@print(output)@@@",
      "@@@STEP_LOG_LINE@python.inline@print('======')@@@",
      "@@@STEP_LOG_LINE@python.inline@if 'No such file or directory' not in output:@@@",
      "@@@STEP_LOG_LINE@python.inline@  raise Exception('%s exists despite being deleted' % path)@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "cmd": [
      "python",
      "-u",
      "\nimport subprocess\nimport sys\n\n# Remove the path.\nadb = sys.argv[1]\npath = sys.argv[2]\nprint('Removing %s' % path)\ncmd = [adb, 'shell', 'rm', '-rf', path]\nprint(' '.join(cmd))\nsubprocess.check_call(cmd)\n\n# Verify that the path was deleted.\nprint('Checking for existence of %s' % path)\ncmd = [adb, 'shell', 'ls', path]\nprint(' '.join(cmd))\ntry:\n  output = subprocess.check_output(\n      cmd, stderr=subprocess.STDOUT).decode('utf-8')\nexcept subprocess.CalledProcessError as e:\n  output = e.output.decode('utf-8')\nprint('Output was:')\nprint('======')\nprint(output)\nprint('======')\nif 'No such file or directory' not in output:\n  raise Exception('%s exists despite being deleted' % path)\n",
      "/usr/bin/adb.1.0.35",
      "/sdcard/revenge_of_the_skiabot/mskp"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "rm /sdcard/revenge_of_the_skiabot/mskp",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
      "@@@STEP_LOG_LINE@python.inline@import sys@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@# Remove the path.@@@",
      "@@@STEP_LOG_LINE@python.inline@adb = sys.argv[1]@@@",
      "@@@STEP_LOG_LINE@python.inline@path = sys.argv[2]@@@",
      "@@@STEP_LOG_LINE@python.inline@print('Removing %s' % path)@@@",
      "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'rm', '-rf', path]@@@",
      "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@",
      "@@@STEP_LOG_LINE@python.inline@subprocess.check_call(cmd)@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@# Verify that the path was deleted.@@@",
      "@@@STEP_LOG_LINE@python.inline@print('Checking for existence of %s' % path)@@@",
      "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'ls', path]@@@",
      "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@",
      "@@@STEP_LOG_LINE@python.inline@try:@@@",
      "@@@STEP_LOG_LINE@python.inline@  output = subprocess.check_output(@@@",
      "@@@STEP_LOG_LINE@python.inline@      cmd, stderr=subprocess.STDOUT).decode('utf-8')@@@",
      "@@@STEP_LOG_LINE@python.inline@except subprocess.CalledProcessError as e:@@@",
      "@@@STEP_LOG_LINE@python.inline@  output = e.output.decode('utf-8')@@@",
      "@@@STEP_LOG_LINE@python.inline@print('Output was:')@@@",
      "@@@STEP_LOG_LINE@python.inline@print('======')@@@",
      "@@@STEP_LOG_LINE@python.inline@print(output)@@@",
      "@@@STEP_LOG_LINE@python.inline@print('======')@@@",
      "@@@STEP_LOG_LINE@python.inline@if 'No such file or directory' not in output:@@@",
      "@@@STEP_LOG_LINE@python.inline@  raise Exception('%s exists despite being deleted' % path)@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "cmd": [
      "/usr/bin/adb.1.0.35",
      "shell",
      "mkdir",
      "-p",
      "/sdcard/revenge_of_the_skiabot/mskp"
    ],
    "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/mskp"
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "glob",
      "[START_DIR]/mskp",
      "*"
    ],
    "infra_step": true,
    "name": "ls [START_DIR]/mskp/*",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@glob@[START_DIR]/mskp/bar.jpg@@@",
      "@@@STEP_LOG_LINE@glob@[START_DIR]/mskp/foo.png@@@",
      "@@@STEP_LOG_END@glob@@@"
    ]
  },
  {
    "cmd": [
      "/usr/bin/adb.1.0.35",
      "push",
      "[START_DIR]/mskp/bar.jpg",
      "[START_DIR]/mskp/foo.png",
      "/sdcard/revenge_of_the_skiabot/mskp"
    ],
    "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 --sync [START_DIR]/mskp/* /sdcard/revenge_of_the_skiabot/mskp"
  },
  {
    "cmd": [
      "/usr/bin/adb.1.0.35",
      "push",
      "[START_DIR]/tmp/MSKP_VERSION",
      "/sdcard/revenge_of_the_skiabot/MSKP_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/MSKP_VERSION /sdcard/revenge_of_the_skiabot/MSKP_VERSION"
  },
  {
    "cmd": [
      "vpython",
      "-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",
      "--internalSamples",
      "4",
      "-v5",
      "--adb",
      "--adb_binary",
      "adb.1.0.35",
      "/sdcard/revenge_of_the_skiabot/mskp"
    ],
    "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",
    "~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",
      "Adreno540",
      "extra_config",
      "Android_Skpbench_Mskp",
      "model",
      "Pixel2XL",
      "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([\n    '/usr/bin/adb.1.0.35', 'logcat', '-d']).decode('utf-8', errors='ignore')\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      try:\n        sym = subprocess.check_output([\n            'addr2line', '-Cfpe', local, addr]).decode('utf-8')\n        line = line.replace(addr, addr + ' ' + sym.strip())\n      except subprocess.CalledProcessError:\n        pass\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([@@@",
      "@@@STEP_LOG_LINE@python.inline@    '/usr/bin/adb.1.0.35', 'logcat', '-d']).decode('utf-8', errors='ignore')@@@",
      "@@@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@      try:@@@",
      "@@@STEP_LOG_LINE@python.inline@        sym = subprocess.check_output([@@@",
      "@@@STEP_LOG_LINE@python.inline@            'addr2line', '-Cfpe', local, addr]).decode('utf-8')@@@",
      "@@@STEP_LOG_LINE@python.inline@        line = line.replace(addr, addr + ' ' + sym.strip())@@@",
      "@@@STEP_LOG_LINE@python.inline@      except subprocess.CalledProcessError:@@@",
      "@@@STEP_LOG_LINE@python.inline@        pass@@@",
      "@@@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"
  },
  {
    "name": "$result"
  }
]