[
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "ensure-directory",
      "--mode",
      "0777",
      "[CUSTOM_/_B_WORK]"
    ],
    "infra_step": true,
    "name": "makedirs checkout_path"
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "remove",
      "[CUSTOM_/_B_WORK]/.gclient_entries"
    ],
    "infra_step": true,
    "name": "remove [CUSTOM_/_B_WORK]/.gclient_entries"
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[depot_tools::bot_update]/resources/bot_update.py",
      "--spec-path",
      "cache_dir = '[CUSTOM_/_B_CACHE]'\nsolutions = [{'deps_file': '.DEPS.git', 'managed': True, 'name': 'pdfium', 'url': 'https://pdfium.googlesource.com/pdfium.git'}]",
      "--patch_root",
      "pdfium/third_party/skia",
      "--revision_mapping_file",
      "{\"got_pdfium_revision\": \"pdfium\", \"got_revision\": \"pdfium/third_party/skia\"}",
      "--git-cache-dir",
      "[CUSTOM_/_B_CACHE]",
      "--cleanup-dir",
      "[CLEANUP]/bot_update",
      "--output_json",
      "/path/to/tmp/json",
      "--revision",
      "pdfium@origin/master",
      "--revision",
      "pdfium/third_party/skia@abc123"
    ],
    "cwd": "[CUSTOM_/_B_WORK]",
    "env_prefixes": {
      "PATH": [
        "RECIPE_PACKAGE_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@    \"pdfium\": \"origin/master\", @@@",
      "@@@STEP_LOG_LINE@json.output@    \"pdfium/third_party/skia\": \"abc123\"@@@",
      "@@@STEP_LOG_LINE@json.output@  }, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"manifest\": {@@@",
      "@@@STEP_LOG_LINE@json.output@    \"pdfium\": {@@@",
      "@@@STEP_LOG_LINE@json.output@      \"repository\": \"https://fake.org/pdfium.git\", @@@",
      "@@@STEP_LOG_LINE@json.output@      \"revision\": \"d69d97171c17fdb12a52f78847e2ee2f0594eff1\"@@@",
      "@@@STEP_LOG_LINE@json.output@    }, @@@",
      "@@@STEP_LOG_LINE@json.output@    \"pdfium/third_party/skia\": {@@@",
      "@@@STEP_LOG_LINE@json.output@      \"repository\": \"https://fake.org/pdfium/third_party/skia.git\", @@@",
      "@@@STEP_LOG_LINE@json.output@      \"revision\": \"85501db4bcbeb8f295309fdcda1a743388f0f104\"@@@",
      "@@@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\": \"pdfium/third_party/skia\", @@@",
      "@@@STEP_LOG_LINE@json.output@  \"properties\": {@@@",
      "@@@STEP_LOG_LINE@json.output@    \"got_pdfium_revision\": \"d69d97171c17fdb12a52f78847e2ee2f0594eff1\", @@@",
      "@@@STEP_LOG_LINE@json.output@    \"got_pdfium_revision_cp\": \"refs/heads/master@{#52055}\", @@@",
      "@@@STEP_LOG_LINE@json.output@    \"got_revision\": \"85501db4bcbeb8f295309fdcda1a743388f0f104\", @@@",
      "@@@STEP_LOG_LINE@json.output@    \"got_revision_cp\": \"refs/heads/master@{#120212}\"@@@",
      "@@@STEP_LOG_LINE@json.output@  }, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"root\": \"pdfium\", @@@",
      "@@@STEP_LOG_LINE@json.output@  \"source_manifest\": {@@@",
      "@@@STEP_LOG_LINE@json.output@    \"directories\": {@@@",
      "@@@STEP_LOG_LINE@json.output@      \"pdfium\": {@@@",
      "@@@STEP_LOG_LINE@json.output@        \"git_checkout\": {@@@",
      "@@@STEP_LOG_LINE@json.output@          \"repo_url\": \"https://fake.org/pdfium.git\", @@@",
      "@@@STEP_LOG_LINE@json.output@          \"revision\": \"d69d97171c17fdb12a52f78847e2ee2f0594eff1\"@@@",
      "@@@STEP_LOG_LINE@json.output@        }@@@",
      "@@@STEP_LOG_LINE@json.output@      }, @@@",
      "@@@STEP_LOG_LINE@json.output@      \"pdfium/third_party/skia\": {@@@",
      "@@@STEP_LOG_LINE@json.output@        \"git_checkout\": {@@@",
      "@@@STEP_LOG_LINE@json.output@          \"repo_url\": \"https://fake.org/pdfium/third_party/skia.git\", @@@",
      "@@@STEP_LOG_LINE@json.output@          \"revision\": \"85501db4bcbeb8f295309fdcda1a743388f0f104\"@@@",
      "@@@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_pdfium_revision@\"d69d97171c17fdb12a52f78847e2ee2f0594eff1\"@@@",
      "@@@SET_BUILD_PROPERTY@got_pdfium_revision_cp@\"refs/heads/master@{#52055}\"@@@",
      "@@@SET_BUILD_PROPERTY@got_revision@\"85501db4bcbeb8f295309fdcda1a743388f0f104\"@@@",
      "@@@SET_BUILD_PROPERTY@got_revision_cp@\"refs/heads/master@{#120212}\"@@@"
    ]
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[depot_tools::git]/resources/git_setup.py",
      "--path",
      "[CUSTOM_/_B_WORK]/depot_tools",
      "--url",
      "https://chromium.googlesource.com/chromium/tools/depot_tools.git"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/pdfium",
    "env": {
      "DEPOT_TOOLS_UPDATE": "0"
    },
    "name": "git setup"
  },
  {
    "cmd": [
      "git",
      "retry",
      "fetch",
      "origin",
      "--progress"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/depot_tools",
    "env": {
      "DEPOT_TOOLS_UPDATE": "0",
      "PATH": "RECIPE_PACKAGE_REPO[depot_tools]:<PATH>"
    },
    "infra_step": true,
    "name": "git fetch"
  },
  {
    "cmd": [
      "git",
      "checkout",
      "-f",
      "06493714339009216197d59c5413da2a1efdf4a2"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/depot_tools",
    "env": {
      "DEPOT_TOOLS_UPDATE": "0"
    },
    "infra_step": true,
    "name": "git checkout"
  },
  {
    "cmd": [
      "git",
      "rev-parse",
      "HEAD"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/depot_tools",
    "env": {
      "DEPOT_TOOLS_UPDATE": "0"
    },
    "infra_step": true,
    "name": "read revision",
    "stdout": "/path/to/tmp/",
    "~followup_annotations": [
      "@@@STEP_TEXT@<br/>checked out 'deadbeef'<br/>@@@"
    ]
  },
  {
    "cmd": [
      "git",
      "clean",
      "-f",
      "-d",
      "-x"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/depot_tools",
    "env": {
      "DEPOT_TOOLS_UPDATE": "0"
    },
    "infra_step": true,
    "name": "git clean"
  },
  {
    "cmd": [
      "git",
      "submodule",
      "sync"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/depot_tools",
    "env": {
      "DEPOT_TOOLS_UPDATE": "0"
    },
    "infra_step": true,
    "name": "submodule sync"
  },
  {
    "cmd": [
      "git",
      "submodule",
      "update",
      "--init",
      "--recursive"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/depot_tools",
    "env": {
      "DEPOT_TOOLS_UPDATE": "0"
    },
    "infra_step": true,
    "name": "submodule update"
  },
  {
    "cmd": [
      "[CUSTOM_/_B_WORK]/depot_tools/gclient",
      "runhook",
      "gn_linux64"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/pdfium",
    "env": {
      "BUILDTYPE": "Release",
      "CHROME_HEADLESS": "1",
      "DEPOT_TOOLS_UPDATE": "0",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
      "SKIA_OUT": "[CUSTOM_/_B_WORK]/pdfium/third_party/skia/out/Build-Debian9-GCC-x86_64-Release-PDFium"
    },
    "name": "runhook"
  },
  {
    "cmd": [
      "python",
      "build/linux/sysroot_scripts/install-sysroot.py",
      "--arch=amd64"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/pdfium",
    "env": {
      "BUILDTYPE": "Release",
      "CHROME_HEADLESS": "1",
      "DEPOT_TOOLS_UPDATE": "0",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
      "SKIA_OUT": "[CUSTOM_/_B_WORK]/pdfium/third_party/skia/out/Build-Debian9-GCC-x86_64-Release-PDFium"
    },
    "name": "sysroot"
  },
  {
    "cmd": [
      "gn",
      "gen",
      "out/skia",
      "--args=pdf_is_standalone=true clang_use_chrome_plugins=false is_component_build=false is_debug=false pdf_use_skia=true"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/pdfium",
    "env": {
      "BUILDTYPE": "Release",
      "CHROME_HEADLESS": "1",
      "CHROMIUM_BUILDTOOLS_PATH": "[CUSTOM_/_B_WORK]/pdfium/buildtools",
      "DEPOT_TOOLS_UPDATE": "0",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
      "SKIA_OUT": "[CUSTOM_/_B_WORK]/pdfium/third_party/skia/out/Build-Debian9-GCC-x86_64-Release-PDFium"
    },
    "name": "gn_gen"
  },
  {
    "cmd": [
      "ninja",
      "-C",
      "out/skia",
      "-j100"
    ],
    "cwd": "[CUSTOM_/_B_WORK]/pdfium",
    "env": {
      "BUILDTYPE": "Release",
      "CHROME_HEADLESS": "1",
      "CHROMIUM_BUILDTOOLS_PATH": "[CUSTOM_/_B_WORK]/pdfium/buildtools",
      "DEPOT_TOOLS_UPDATE": "0",
      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
      "SKIA_OUT": "[CUSTOM_/_B_WORK]/pdfium/third_party/skia/out/Build-Debian9-GCC-x86_64-Release-PDFium"
    },
    "name": "build_pdfium"
  },
  {
    "cmd": [
      "python",
      "-u",
      "import errno\nimport glob\nimport os\nimport shutil\nimport sys\n\nsrc = sys.argv[1]\ndst = sys.argv[2]\nbuild_products_whitelist = ['bookmaker', 'dm', 'dm.exe', 'dm.app', 'nanobench.app', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', 'skpbench', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'skiaserve', 'lib/*.so', 'run_testlab', 'skqp-universal-debug.apk', 'whitelist_devices.json']\n\ntry:\n  os.makedirs(dst)\nexcept OSError as e:\n  if e.errno != errno.EEXIST:\n    raise\n\nfor pattern in build_products_whitelist:\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",
      "[CUSTOM_/_B_WORK]/pdfium/third_party/skia/out/Build-Debian9-GCC-x86_64-Release-PDFium/Release",
      "[START_DIR]/[SWARM_OUT_DIR]/out/Release"
    ],
    "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_whitelist = ['bookmaker', 'dm', 'dm.exe', 'dm.app', 'nanobench.app', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', 'skpbench', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'skiaserve', 'lib/*.so', 'run_testlab', 'skqp-universal-debug.apk', 'whitelist_devices.json']@@@",
      "@@@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_whitelist:@@@",
      "@@@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@@@"
    ]
  },
  {
    "name": "$result",
    "recipe_result": null,
    "status_code": 0
  }
]