[
  {
    "cmd": [
      "python",
      "-u",
      "\nimport subprocess\nimport sys\n\nwhich = 'where' if sys.platform == 'win32' else 'which'\ngit = subprocess.check_output([which, 'git'])\nprint 'git was found at %s' % git\nif 'cipd_bin_packages' not in git:\n  print >> sys.stderr, 'Git must be obtained through CIPD.'\n  sys.exit(1)\n"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "name": "Assert that Git is from CIPD",
    "~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@which = 'where' if sys.platform == 'win32' else 'which'@@@",
      "@@@STEP_LOG_LINE@python.inline@git = subprocess.check_output([which, 'git'])@@@",
      "@@@STEP_LOG_LINE@python.inline@print 'git was found at %s' % git@@@",
      "@@@STEP_LOG_LINE@python.inline@if 'cipd_bin_packages' not in git:@@@",
      "@@@STEP_LOG_LINE@python.inline@  print >> sys.stderr, 'Git must be obtained through CIPD.'@@@",
      "@@@STEP_LOG_LINE@python.inline@  sys.exit(1)@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "rmtree",
      "[START_DIR]/cache/work/flutter"
    ],
    "infra_step": true,
    "name": "rmtree flutter"
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "ensure-directory",
      "--mode",
      "0777",
      "[START_DIR]/cache/work/flutter"
    ],
    "infra_step": true,
    "name": "makedirs checkout_path"
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "remove",
      "[START_DIR]/cache/work/flutter/.gclient_entries"
    ],
    "infra_step": true,
    "name": "remove [START_DIR]/cache/work/flutter/.gclient_entries"
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[depot_tools::bot_update]/resources/bot_update.py",
      "--spec-path",
      "cache_dir = '[START_DIR]/cache/git'\nsolutions = [{'deps_file': '.DEPS.git', 'managed': True, 'name': 'src/flutter', 'url': 'https://github.com/flutter/engine.git'}]\ntarget_os = ['android']",
      "--patch_root",
      "src/third_party/skia",
      "--revision_mapping_file",
      "{\"got_flutter_revision\": \"src/flutter\", \"got_revision\": \"src/third_party/skia\"}",
      "--git-cache-dir",
      "[START_DIR]/cache/git",
      "--cleanup-dir",
      "[CLEANUP]/bot_update",
      "--output_json",
      "/path/to/tmp/json",
      "--revision",
      "src/flutter@origin/master",
      "--revision",
      "src/third_party/skia@abc123"
    ],
    "cwd": "[START_DIR]/cache/work/flutter",
    "env": {
      "DEPOT_TOOLS_COLLECT_METRICS": "0",
      "GIT_HTTP_LOW_SPEED_LIMIT": "102400",
      "GIT_HTTP_LOW_SPEED_TIME": "1800"
    },
    "env_suffixes": {
      "DEPOT_TOOLS_UPDATE": [
        "0"
      ],
      "PATH": [
        "RECIPE_REPO[depot_tools]"
      ]
    },
    "infra_step": true,
    "name": "bot_update",
    "~followup_annotations": [
      "@@@STEP_TEXT@Some step text@@@",
      "@@@STEP_LOG_LINE@json.output@{@@@",
      "@@@STEP_LOG_LINE@json.output@  \"did_run\": true, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"fixed_revisions\": {@@@",
      "@@@STEP_LOG_LINE@json.output@    \"src/flutter\": \"origin/master\", @@@",
      "@@@STEP_LOG_LINE@json.output@    \"src/third_party/skia\": \"abc123\"@@@",
      "@@@STEP_LOG_LINE@json.output@  }, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"manifest\": {@@@",
      "@@@STEP_LOG_LINE@json.output@    \"src/flutter\": {@@@",
      "@@@STEP_LOG_LINE@json.output@      \"repository\": \"https://fake.org/src/flutter.git\", @@@",
      "@@@STEP_LOG_LINE@json.output@      \"revision\": \"a1681567f61ff6b59df53546991904bbf6eda393\"@@@",
      "@@@STEP_LOG_LINE@json.output@    }, @@@",
      "@@@STEP_LOG_LINE@json.output@    \"src/third_party/skia\": {@@@",
      "@@@STEP_LOG_LINE@json.output@      \"repository\": \"https://fake.org/src/third_party/skia.git\", @@@",
      "@@@STEP_LOG_LINE@json.output@      \"revision\": \"abc123\"@@@",
      "@@@STEP_LOG_LINE@json.output@    }@@@",
      "@@@STEP_LOG_LINE@json.output@  }, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"patch_failure\": false, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"patch_root\": \"src/third_party/skia\", @@@",
      "@@@STEP_LOG_LINE@json.output@  \"properties\": {@@@",
      "@@@STEP_LOG_LINE@json.output@    \"got_flutter_revision\": \"a1681567f61ff6b59df53546991904bbf6eda393\", @@@",
      "@@@STEP_LOG_LINE@json.output@    \"got_flutter_revision_cp\": \"refs/heads/master@{#84512}\", @@@",
      "@@@STEP_LOG_LINE@json.output@    \"got_revision\": \"abc123\", @@@",
      "@@@STEP_LOG_LINE@json.output@    \"got_revision_cp\": \"refs/heads/master@{#143121}\"@@@",
      "@@@STEP_LOG_LINE@json.output@  }, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"root\": \"src/flutter\", @@@",
      "@@@STEP_LOG_LINE@json.output@  \"source_manifest\": {@@@",
      "@@@STEP_LOG_LINE@json.output@    \"directories\": {@@@",
      "@@@STEP_LOG_LINE@json.output@      \"src/flutter\": {@@@",
      "@@@STEP_LOG_LINE@json.output@        \"git_checkout\": {@@@",
      "@@@STEP_LOG_LINE@json.output@          \"repo_url\": \"https://fake.org/src/flutter.git\", @@@",
      "@@@STEP_LOG_LINE@json.output@          \"revision\": \"a1681567f61ff6b59df53546991904bbf6eda393\"@@@",
      "@@@STEP_LOG_LINE@json.output@        }@@@",
      "@@@STEP_LOG_LINE@json.output@      }, @@@",
      "@@@STEP_LOG_LINE@json.output@      \"src/third_party/skia\": {@@@",
      "@@@STEP_LOG_LINE@json.output@        \"git_checkout\": {@@@",
      "@@@STEP_LOG_LINE@json.output@          \"repo_url\": \"https://fake.org/src/third_party/skia.git\", @@@",
      "@@@STEP_LOG_LINE@json.output@          \"revision\": \"abc123\"@@@",
      "@@@STEP_LOG_LINE@json.output@        }@@@",
      "@@@STEP_LOG_LINE@json.output@      }@@@",
      "@@@STEP_LOG_LINE@json.output@    }, @@@",
      "@@@STEP_LOG_LINE@json.output@    \"version\": 0@@@",
      "@@@STEP_LOG_LINE@json.output@  }, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"step_text\": \"Some step text\"@@@",
      "@@@STEP_LOG_LINE@json.output@}@@@",
      "@@@STEP_LOG_END@json.output@@@",
      "@@@SET_BUILD_PROPERTY@got_flutter_revision@\"a1681567f61ff6b59df53546991904bbf6eda393\"@@@",
      "@@@SET_BUILD_PROPERTY@got_flutter_revision_cp@\"refs/heads/master@{#84512}\"@@@",
      "@@@SET_BUILD_PROPERTY@got_revision@\"abc123\"@@@",
      "@@@SET_BUILD_PROPERTY@got_revision_cp@\"refs/heads/master@{#143121}\"@@@"
    ]
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_REPO[depot_tools]/gclient.py",
      "runhooks"
    ],
    "cwd": "[START_DIR]/cache/work/flutter",
    "env": {
      "DEPOT_TOOLS_UPDATE": "0"
    },
    "env_suffixes": {
      "PATH": [
        "RECIPE_REPO[depot_tools]"
      ]
    },
    "name": "gclient runhooks"
  },
  {
    "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": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "rmtree",
      "[START_DIR]/cache/work/flutter/src/out/android_release"
    ],
    "cwd": "[START_DIR]/cache/work/flutter/src",
    "infra_step": true,
    "name": "rmtree android_release"
  },
  {
    "cmd": [
      "flutter/tools/gn",
      "--runtime-mode=release",
      "--android"
    ],
    "cwd": "[START_DIR]/cache/work/flutter/src",
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "name": "gn_gen"
  },
  {
    "cmd": [
      "ninja",
      "-C",
      "[START_DIR]/cache/work/flutter/src/out/android_release",
      "-j100"
    ],
    "cwd": "[START_DIR]/cache/work/flutter/src",
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "name": "build_flutter"
  },
  {
    "cmd": [
      "python",
      "-u",
      "import errno\nimport glob\nimport os\nimport shutil\nimport sys\n\nsrc = sys.argv[1]\ndst = sys.argv[2]\nbuild_products = ['*.so', 'lib/*.so']\n\ntry:\n  os.makedirs(dst)\nexcept OSError as e:\n  if e.errno != errno.EEXIST:\n    raise\n\nfor pattern in build_products:\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.makedirs(os.path.dirname(dst_path))\n    print 'Copying build product %s to %s' % (f, dst_path)\n    shutil.move(f, dst_path)\n",
      "[START_DIR]/cache/work/flutter/src/out/android_release",
      "[START_DIR]/[SWARM_OUT_DIR]"
    ],
    "infra_step": true,
    "name": "copy build products",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@python.inline@import errno@@@",
      "@@@STEP_LOG_LINE@python.inline@import glob@@@",
      "@@@STEP_LOG_LINE@python.inline@import os@@@",
      "@@@STEP_LOG_LINE@python.inline@import shutil@@@",
      "@@@STEP_LOG_LINE@python.inline@import sys@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@src = sys.argv[1]@@@",
      "@@@STEP_LOG_LINE@python.inline@dst = sys.argv[2]@@@",
      "@@@STEP_LOG_LINE@python.inline@build_products = ['*.so', 'lib/*.so']@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@try:@@@",
      "@@@STEP_LOG_LINE@python.inline@  os.makedirs(dst)@@@",
      "@@@STEP_LOG_LINE@python.inline@except OSError as e:@@@",
      "@@@STEP_LOG_LINE@python.inline@  if e.errno != errno.EEXIST:@@@",
      "@@@STEP_LOG_LINE@python.inline@    raise@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@for pattern in build_products:@@@",
      "@@@STEP_LOG_LINE@python.inline@  path = os.path.join(src, pattern)@@@",
      "@@@STEP_LOG_LINE@python.inline@  for f in glob.glob(path):@@@",
      "@@@STEP_LOG_LINE@python.inline@    dst_path = os.path.join(dst, os.path.relpath(f, src))@@@",
      "@@@STEP_LOG_LINE@python.inline@    if not os.path.isdir(os.path.dirname(dst_path)):@@@",
      "@@@STEP_LOG_LINE@python.inline@      os.makedirs(os.path.dirname(dst_path))@@@",
      "@@@STEP_LOG_LINE@python.inline@    print 'Copying build product %s to %s' % (f, dst_path)@@@",
      "@@@STEP_LOG_LINE@python.inline@    shutil.move(f, dst_path)@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "cmd": [
      "python",
      "-u",
      "\nimport os\nimport shutil\nimport sys\n\nsrc = sys.argv[1]\ndst = sys.argv[2]\n\nif not os.path.isdir(os.path.dirname(dst)):\n  os.makedirs(os.path.dirname(dst))\n\nshutil.copyfile(src, dst)\n",
      "[START_DIR]/cache/work/flutter/src/out/android_release/lib.stripped/libflutter.so",
      "[START_DIR]/[SWARM_OUT_DIR]/libflutter_stripped.so"
    ],
    "infra_step": true,
    "name": "copy stripped library",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@import os@@@",
      "@@@STEP_LOG_LINE@python.inline@import shutil@@@",
      "@@@STEP_LOG_LINE@python.inline@import sys@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@src = sys.argv[1]@@@",
      "@@@STEP_LOG_LINE@python.inline@dst = sys.argv[2]@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(os.path.dirname(dst)):@@@",
      "@@@STEP_LOG_LINE@python.inline@  os.makedirs(os.path.dirname(dst))@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@shutil.copyfile(src, dst)@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "name": "$result"
  }
]