[
  {
    "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": [
      "ios.py"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "setup_device"
  },
  {
    "cmd": [
      "ideviceinstaller",
      "-i",
      "[START_DIR]/build/dm.app"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "install_dm"
  },
  {
    "cmd": [
      "ideviceinstaller",
      "-i",
      "[START_DIR]/build/nanobench.app"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "install_nanobench"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_if_needed",
      "[START_DIR]/skia/resources",
      "resources"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "push_if_needed [START_DIR]/skia/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/"
    ],
    "env": {
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice"
    },
    "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"
    ],
    "env": {
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice"
    },
    "infra_step": true,
    "name": "write SKP_VERSION"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_cat_file",
      "tmp/SKP_VERSION"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "cat_file tmp/SKP_VERSION",
    "stdout": "/path/to/tmp/"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
      "tmp/SKP_VERSION"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "rm tmp/SKP_VERSION"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
      "skps"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "rm skps"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_mkdir",
      "skps"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "mkdir skps"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_if_needed",
      "[START_DIR]/skp",
      "skps"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "push_if_needed [START_DIR]/skp"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_file",
      "[START_DIR]/tmp/SKP_VERSION",
      "tmp/SKP_VERSION"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "push_file [START_DIR]/tmp/SKP_VERSION"
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "copy",
      "[START_DIR]/skia/infra/bots/assets/skimage/VERSION",
      "/path/to/tmp/"
    ],
    "env": {
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice"
    },
    "infra_step": true,
    "name": "Get skimage VERSION"
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "copy",
      "42",
      "[START_DIR]/tmp/SK_IMAGE_VERSION"
    ],
    "env": {
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice"
    },
    "infra_step": true,
    "name": "write SK_IMAGE_VERSION"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_cat_file",
      "tmp/SK_IMAGE_VERSION"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "cat_file tmp/SK_IMAGE_VERSION",
    "stdout": "/path/to/tmp/"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
      "tmp/SK_IMAGE_VERSION"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "rm tmp/SK_IMAGE_VERSION"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
      "images"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "rm images"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_mkdir",
      "images"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "mkdir images"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_if_needed",
      "[START_DIR]/skimage",
      "images"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "push_if_needed [START_DIR]/skimage"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_file",
      "[START_DIR]/tmp/SK_IMAGE_VERSION",
      "tmp/SK_IMAGE_VERSION"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "push_file [START_DIR]/tmp/SK_IMAGE_VERSION"
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "copy",
      "[START_DIR]/skia/infra/bots/assets/svg/VERSION",
      "/path/to/tmp/"
    ],
    "env": {
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice"
    },
    "infra_step": true,
    "name": "Get svg VERSION"
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "copy",
      "42",
      "[START_DIR]/tmp/SVG_VERSION"
    ],
    "env": {
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice"
    },
    "infra_step": true,
    "name": "write SVG_VERSION"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_cat_file",
      "tmp/SVG_VERSION"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "cat_file tmp/SVG_VERSION",
    "stdout": "/path/to/tmp/"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
      "tmp/SVG_VERSION"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "rm tmp/SVG_VERSION"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
      "svgs"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "rm svgs"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_mkdir",
      "svgs"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "mkdir svgs"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_if_needed",
      "[START_DIR]/svg",
      "svgs"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "push_if_needed [START_DIR]/svg"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_push_file",
      "[START_DIR]/tmp/SVG_VERSION",
      "tmp/SVG_VERSION"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "push_file [START_DIR]/tmp/SVG_VERSION"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_rm",
      "perf"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "rm perf"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_mkdir",
      "perf"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "mkdir perf"
  },
  {
    "cmd": [
      "python",
      "-u",
      "import os\nprint os.environ.get('SWARMING_BOT_ID', '')\n"
    ],
    "env": {
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice"
    },
    "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": [
      "python",
      "-u",
      "import os\nprint os.environ.get('SWARMING_TASK_ID', '')\n"
    ],
    "env": {
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice"
    },
    "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": [
      "idevice-app-runner",
      "-s",
      "com.google.nanobench",
      "--args",
      "-i",
      "resources",
      "--skps",
      "skps",
      "--images",
      "images/nanobench",
      "--svgs",
      "svgs",
      "--pre_log",
      "--images",
      "--gpuStatsDump",
      "true",
      "--scales",
      "1.0",
      "1.1",
      "--skps",
      "ignore_skps",
      "--nocpu",
      "--config",
      "gles",
      "glessrgb",
      "--match",
      "~blurroundrect",
      "~patch_grid",
      "~desk_carsvg",
      "~keymobi",
      "~path_hairline",
      "~GLInstancedArraysBench",
      "~inc0.gif",
      "~inc1.gif",
      "~incInterlaced.gif",
      "~inc0.jpg",
      "~incGray.jpg",
      "~inc0.wbmp",
      "~inc1.wbmp",
      "~inc0.webp",
      "~inc1.webp",
      "~inc0.ico",
      "~inc1.ico",
      "~inc0.png",
      "~inc1.png",
      "~inc2.png",
      "~inc12.png",
      "~inc13.png",
      "~inc14.png",
      "~inc0.webp",
      "~inc1.webp",
      "--outResultsFile",
      "perf/nanobench_abc123_1337000001.json",
      "--properties",
      "gitHash",
      "abc123",
      "swarming_bot_id",
      "skia-bot-123",
      "swarming_task_id",
      "123456",
      "--key",
      "arch",
      "arm64",
      "compiler",
      "Clang",
      "cpu_or_gpu",
      "GPU",
      "cpu_or_gpu_value",
      "PowerVRGT7800",
      "model",
      "iPadPro",
      "os",
      "iOS"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "name": "nanobench"
  },
  {
    "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]"
    ],
    "env": {
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice"
    },
    "infra_step": true,
    "name": "makedirs perf_dir"
  },
  {
    "cmd": [
      "[START_DIR]/skia/platform_tools/ios/bin/ios_pull_if_needed",
      "perf",
      "[START_DIR]/[SWARM_OUT_DIR]"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "IOS_BUNDLE_ID": "com.google.nanobench",
      "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
    },
    "infra_step": true,
    "name": "pull_if_needed perf"
  },
  {
    "jsonResult": null,
    "name": "$result"
  }
]