[
  {
    "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",
      "[CUSTOM_/_B_WORK]",
      "511"
    ],
    "name": "makedirs checkout_path",
    "~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",
      "RECIPE_MODULE[depot_tools::bot_update]/resources/bot_update.py",
      "--spec",
      "cache_dir = '[CUSTOM_/_B_CACHE]'\nsolutions = [{'deps_file': '.DEPS.git', 'managed': False, 'name': 'skia', 'url': 'https://skia.googlesource.com/skia.git'}]",
      "--patch_root",
      "skia",
      "--revision_mapping_file",
      "{\"skia\": \"got_revision\"}",
      "--git-cache-dir",
      "[CUSTOM_/_B_CACHE]",
      "--gerrit_repo",
      "https://skia.googlesource.com/skia.git",
      "--gerrit_ref",
      "refs/changes/89/456789/12",
      "--output_json",
      "/path/to/tmp/json",
      "--revision",
      "skia@abc123",
      "--output_manifest"
    ],
    "cwd": "[CUSTOM_/_B_WORK]",
    "env": {
      "BUILDTYPE": "Release",
      "CHROME_HEADLESS": "1",
      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
      "SKIA_OUT": "[START_DIR]/out"
    },
    "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@    \"skia\": \"abc123\"@@@",
      "@@@STEP_LOG_LINE@json.output@  }, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"manifest\": {@@@",
      "@@@STEP_LOG_LINE@json.output@    \"skia\": {@@@",
      "@@@STEP_LOG_LINE@json.output@      \"repository\": \"https://fake.org/skia.git\", @@@",
      "@@@STEP_LOG_LINE@json.output@      \"revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@",
      "@@@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\": \"skia\", @@@",
      "@@@STEP_LOG_LINE@json.output@  \"properties\": {@@@",
      "@@@STEP_LOG_LINE@json.output@    \"got_revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\", @@@",
      "@@@STEP_LOG_LINE@json.output@    \"got_revision_cp\": \"refs/heads/master@{#164710}\"@@@",
      "@@@STEP_LOG_LINE@json.output@  }, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"root\": \"skia\", @@@",
      "@@@STEP_LOG_LINE@json.output@  \"step_text\": \"Some step text\"@@@",
      "@@@STEP_LOG_LINE@json.output@}@@@",
      "@@@STEP_LOG_END@json.output@@@",
      "@@@SET_BUILD_PROPERTY@got_revision@\"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@",
      "@@@SET_BUILD_PROPERTY@got_revision_cp@\"refs/heads/master@{#164710}\"@@@"
    ]
  },
  {
    "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",
      "[START_DIR]/tmp",
      "511"
    ],
    "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",
      "RECIPE_MODULE[skia-recipes::core]/resources/run_binary_size_analysis.py",
      "--library",
      "[START_DIR]/out/Release/lib/libskia.so",
      "--githash",
      "abc123",
      "--gsutil_path",
      "[DEPOT_TOOLS]/gsutil.py",
      "--issue_number",
      "456789"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/skia",
    "env": {
      "BUILDTYPE": "Release",
      "CHROME_HEADLESS": "1",
      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
      "SKIA_OUT": "[START_DIR]/out"
    },
    "name": "generate and upload binary size data"
  },
  {
    "cmd": [
      "[START_DIR]/go/go/bin/go",
      "get",
      "go.skia.org/infra/comments/go/extract_comments"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/skia",
    "env": {
      "BUILDTYPE": "Release",
      "CHROME_HEADLESS": "1",
      "GOPATH": "[START_DIR]/tmp/golib",
      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
      "SKIA_OUT": "[START_DIR]/out"
    },
    "name": "compile extract_comments"
  },
  {
    "cmd": [
      "[START_DIR]/tmp/golib/bin/extract_comments",
      "--dir",
      "gm",
      "--dest",
      "gs://skia-doc/gm/comments.json"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/skia",
    "env": {
      "BUILDTYPE": "Release",
      "CHROME_HEADLESS": "1",
      "GOPATH": "[START_DIR]/tmp/golib",
      "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
      "SKIA_OUT": "[START_DIR]/out"
    },
    "name": "run extract_comments"
  },
  {
    "name": "$result",
    "recipe_result": null,
    "status_code": 0
  }
]