Remove recipes not being used.

This is a cleanup CL removing recipes that haven't been used in a long
time.

Change-Id: Ibee625c687987b78e57b0b1e85c3efc65bd1a120
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/52620
Reviewed-by: Vinicius Felizardo <felizardo@google.com>
Commit-Queue: Godofredo Contreras <godofredoc@google.com>
Reviewed-by: Yusuf Mohsinally <mohsinally@google.com>
diff --git a/recipes/contrib/salt_packer.expected/ci_failure.json b/recipes/contrib/salt_packer.expected/ci_failure.json
deleted file mode 100644
index a0e4d35..0000000
--- a/recipes/contrib/salt_packer.expected/ci_failure.json
+++ /dev/null
@@ -1,880 +0,0 @@
-[
-  {
-    "cmd": [],
-    "name": "checkout"
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "init"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git init",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "remote",
-      "add",
-      "origin",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git remote",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.cache",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/git"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.ensure git cache dir",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.write git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/git/dash-internal.googlesource.com-salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "init",
-      "--bare"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.git init",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "remote.origin.url",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.remote set-url",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "--replace-all",
-      "remote.origin.fetch",
-      "+refs/heads/*:refs/heads/*",
-      "\\+refs/heads/\\*:.*"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.replace fetch configs",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--prune",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt/.git/objects/info"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.makedirs object/info",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "[CACHE]/git/dash-internal.googlesource.com-salt/objects\n",
-      "[START_DIR]/dash-internal-salt/.git/objects/info/alternates"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.alternates",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_LINE@alternates@[CACHE]/git/dash-internal.googlesource.com-salt/objects@@@",
-      "@@@STEP_LOG_END@alternates@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "remove",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.remove git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "checkout",
-      "-f",
-      "2d72510e447ab60a9728aeea2362d8be2cbd7789"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git checkout",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "HEAD"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git rev-parse",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "clean",
-      "-f",
-      "-d",
-      "-x"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git clean",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.submodule",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "sync"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.submodule.git submodule sync",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "update",
-      "--init",
-      "--jobs",
-      "4"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.submodule.git submodule update",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "--short",
-      "deadbeef"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "git rev-parse",
-    "timeout": 600.0
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "glob",
-      "[START_DIR]/dash-internal-salt/packer",
-      "*.packer.generated.json"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "find packer templates",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@glob@[START_DIR]/dash-internal-salt/packer/fail.packer.generated.json@@@",
-      "@@@STEP_LOG_LINE@glob@[START_DIR]/dash-internal-salt/packer/pass.packer.generated.json@@@",
-      "@@@STEP_LOG_END@glob@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "packer",
-      "validate",
-      "-var",
-      "revision=",
-      "[START_DIR]/dash-internal-salt/packer/fail.packer.generated.json"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "env": {
-      "CHECKPOINT_DISABLE": "1",
-      "PACKER_LOG": "1",
-      "PACKER_NO_COLOR": "1"
-    },
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "packer validate"
-  },
-  {
-    "cmd": [
-      "packer",
-      "validate",
-      "-var",
-      "revision=",
-      "[START_DIR]/dash-internal-salt/packer/pass.packer.generated.json"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "env": {
-      "CHECKPOINT_DISABLE": "1",
-      "PACKER_LOG": "1",
-      "PACKER_NO_COLOR": "1"
-    },
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "packer validate (2)"
-  },
-  {
-    "cmd": [],
-    "name": "fail",
-    "~followup_annotations": [
-      "@@@STEP_FAILURE@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "packer",
-      "build",
-      "-var",
-      "revision=",
-      "-var",
-      "dry_run=false",
-      "-var",
-      "use_internal_ip=true",
-      "-only=fail",
-      "[START_DIR]/dash-internal-salt/packer/fail.packer.generated.json"
-    ],
-    "cost": {
-      "cpu": 0,
-      "disk": 0,
-      "memory": 0,
-      "net": 0
-    },
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "env": {
-      "CHECKPOINT_DISABLE": "1",
-      "PACKER_LOG": "1",
-      "PACKER_NO_COLOR": "1"
-    },
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "fail.packer build",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_LINE@output@@@@",
-      "@@@STEP_LOG_LINE@output@     fail: ----------@@@",
-      "@@@STEP_LOG_LINE@output@     fail:           ID: /etc/systemd/system/gce-provider-start-agent.service@@@",
-      "@@@STEP_LOG_LINE@output@     fail:     Function: file.managed@@@",
-      "@@@STEP_LOG_LINE@output@     fail:       Result: False@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Comment: The following requisites were not found:@@@",
-      "@@@STEP_LOG_LINE@output@     fail:                                  require:@@@",
-      "@@@STEP_LOG_LINE@output@     fail:                                      user: swarming_use@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Started: 01:13:41.861499@@@",
-      "@@@STEP_LOG_LINE@output@     fail:     Duration: 0.028 ms@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Changes:@@@",
-      "@@@STEP_LOG_LINE@output@     fail: ----------@@@",
-      "@@@STEP_LOG_LINE@output@     fail:           ID: gce-provider-start-agent@@@",
-      "@@@STEP_LOG_LINE@output@     fail:     Function: service.enabled@@@",
-      "@@@STEP_LOG_LINE@output@     fail:       Result: False@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Comment: One or more requisite failed: luci.gce_provider./etc/systemd/system/gce-provider-start-agent.service@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Started: 01:13:41.862762@@@",
-      "@@@STEP_LOG_LINE@output@     fail:     Duration: 0.017 ms@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Changes:@@@",
-      "@@@STEP_LOG_LINE@output@     fail: ----------@@@",
-      "@@@STEP_LOG_LINE@output@     fail:           ID: curl@@@",
-      "@@@STEP_LOG_LINE@output@     fail:     Function: pkg.installed@@@",
-      "@@@STEP_LOG_LINE@output@     fail:       Result: True@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Comment: All specified packages are already installed@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Started: 01:13:41.868646@@@",
-      "@@@STEP_LOG_LINE@output@     fail:     Duration: 688.753 ms@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Changes:@@@",
-      "@@@STEP_LOG_LINE@output@     fail: ----------@@@",
-      "@@@STEP_LOG_LINE@output@     @@@",
-      "@@@STEP_LOG_END@output@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@           ID: /etc/systemd/system/gce-provider-start-agent.service@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:     Function: file.managed@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:       Result: False@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:      Comment: The following requisites were not found:@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:                                  require:@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:                                      user: swarming_use@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:      Started: 01:13:41.861499@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:     Duration: 0.028 ms@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:      Changes:@@@",
-      "@@@STEP_LOG_END@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@           ID: gce-provider-start-agent@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@     fail:     Function: service.enabled@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@     fail:       Result: False@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@     fail:      Comment: One or more requisite failed: luci.gce_provider./etc/systemd/system/gce-provider-start-agent.service@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@     fail:      Started: 01:13:41.862762@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@     fail:     Duration: 0.017 ms@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@     fail:      Changes:@@@",
-      "@@@STEP_LOG_END@gce-provider-start-agent\n@@@",
-      "@@@STEP_FAILURE@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "pass"
-  },
-  {
-    "cmd": [
-      "packer",
-      "build",
-      "-var",
-      "revision=",
-      "-var",
-      "dry_run=false",
-      "-var",
-      "use_internal_ip=true",
-      "-only=pass",
-      "[START_DIR]/dash-internal-salt/packer/pass.packer.generated.json"
-    ],
-    "cost": {
-      "cpu": 0,
-      "disk": 0,
-      "memory": 0,
-      "net": 0
-    },
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "env": {
-      "CHECKPOINT_DISABLE": "1",
-      "PACKER_LOG": "1",
-      "PACKER_NO_COLOR": "1"
-    },
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "pass.packer build",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@output@@@"
-    ]
-  },
-  {
-    "failure": {
-      "failure": {},
-      "humanReason": "BUILDS FAILED"
-    },
-    "name": "$result"
-  }
-]
\ No newline at end of file
diff --git a/recipes/contrib/salt_packer.expected/ci_success.json b/recipes/contrib/salt_packer.expected/ci_success.json
deleted file mode 100644
index f98d3cb..0000000
--- a/recipes/contrib/salt_packer.expected/ci_success.json
+++ /dev/null
@@ -1,749 +0,0 @@
-[
-  {
-    "cmd": [],
-    "name": "checkout"
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "init"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git init",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "remote",
-      "add",
-      "origin",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git remote",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.cache",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/git"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.ensure git cache dir",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.write git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/git/dash-internal.googlesource.com-salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "init",
-      "--bare"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.git init",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "remote.origin.url",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.remote set-url",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "--replace-all",
-      "remote.origin.fetch",
-      "+refs/heads/*:refs/heads/*",
-      "\\+refs/heads/\\*:.*"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.replace fetch configs",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--prune",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt/.git/objects/info"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.makedirs object/info",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "[CACHE]/git/dash-internal.googlesource.com-salt/objects\n",
-      "[START_DIR]/dash-internal-salt/.git/objects/info/alternates"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.alternates",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_LINE@alternates@[CACHE]/git/dash-internal.googlesource.com-salt/objects@@@",
-      "@@@STEP_LOG_END@alternates@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "remove",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.remove git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "checkout",
-      "-f",
-      "2d72510e447ab60a9728aeea2362d8be2cbd7789"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git checkout",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "HEAD"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git rev-parse",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "clean",
-      "-f",
-      "-d",
-      "-x"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git clean",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.submodule",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "sync"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.submodule.git submodule sync",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "update",
-      "--init",
-      "--jobs",
-      "4"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.submodule.git submodule update",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "--short",
-      "deadbeef"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "git rev-parse",
-    "timeout": 600.0
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "glob",
-      "[START_DIR]/dash-internal-salt/packer",
-      "*.packer.generated.json"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "find packer templates",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@glob@[START_DIR]/dash-internal-salt/packer/pass.packer.generated.json@@@",
-      "@@@STEP_LOG_END@glob@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "packer",
-      "validate",
-      "-var",
-      "revision=",
-      "[START_DIR]/dash-internal-salt/packer/pass.packer.generated.json"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "env": {
-      "CHECKPOINT_DISABLE": "1",
-      "PACKER_LOG": "1",
-      "PACKER_NO_COLOR": "1"
-    },
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "packer validate"
-  },
-  {
-    "cmd": [],
-    "name": "pass"
-  },
-  {
-    "cmd": [
-      "packer",
-      "build",
-      "-var",
-      "revision=",
-      "-var",
-      "dry_run=false",
-      "-var",
-      "use_internal_ip=true",
-      "-only=pass",
-      "[START_DIR]/dash-internal-salt/packer/pass.packer.generated.json"
-    ],
-    "cost": {
-      "cpu": 0,
-      "disk": 0,
-      "memory": 0,
-      "net": 0
-    },
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "env": {
-      "CHECKPOINT_DISABLE": "1",
-      "PACKER_LOG": "1",
-      "PACKER_NO_COLOR": "1"
-    },
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "pass.packer build",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@output@@@"
-    ]
-  },
-  {
-    "name": "$result"
-  }
-]
\ No newline at end of file
diff --git a/recipes/contrib/salt_packer.expected/try_failure.json b/recipes/contrib/salt_packer.expected/try_failure.json
deleted file mode 100644
index f6e55de..0000000
--- a/recipes/contrib/salt_packer.expected/try_failure.json
+++ /dev/null
@@ -1,881 +0,0 @@
-[
-  {
-    "cmd": [],
-    "name": "checkout"
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "init"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git init",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "remote",
-      "add",
-      "origin",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git remote",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.cache",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/git"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.ensure git cache dir",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.write git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/git/dash-internal.googlesource.com-salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "init",
-      "--bare"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.git init",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "remote.origin.url",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.remote set-url",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "--replace-all",
-      "remote.origin.fetch",
-      "+refs/heads/*:refs/heads/*",
-      "\\+refs/heads/\\*:.*"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.replace fetch configs",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--prune",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt/.git/objects/info"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.makedirs object/info",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "[CACHE]/git/dash-internal.googlesource.com-salt/objects\n",
-      "[START_DIR]/dash-internal-salt/.git/objects/info/alternates"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.alternates",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_LINE@alternates@[CACHE]/git/dash-internal.googlesource.com-salt/objects@@@",
-      "@@@STEP_LOG_END@alternates@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "remove",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.remove git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "checkout",
-      "-f",
-      "2d72510e447ab60a9728aeea2362d8be2cbd7789"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git checkout",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "HEAD"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git rev-parse",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "clean",
-      "-f",
-      "-d",
-      "-x"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git clean",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.submodule",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "sync"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.submodule.git submodule sync",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "update",
-      "--init",
-      "--jobs",
-      "4"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.submodule.git submodule update",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "--short",
-      "deadbeef"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "git rev-parse",
-    "timeout": 600.0
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "glob",
-      "[START_DIR]/dash-internal-salt/packer",
-      "*.packer.generated.json"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "find packer templates",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@glob@[START_DIR]/dash-internal-salt/packer/fail.packer.generated.json@@@",
-      "@@@STEP_LOG_LINE@glob@[START_DIR]/dash-internal-salt/packer/pass.packer.generated.json@@@",
-      "@@@STEP_LOG_END@glob@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "packer",
-      "validate",
-      "-var",
-      "revision=",
-      "[START_DIR]/dash-internal-salt/packer/fail.packer.generated.json"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "env": {
-      "CHECKPOINT_DISABLE": "1",
-      "PACKER_LOG": "1",
-      "PACKER_NO_COLOR": "1"
-    },
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "packer validate"
-  },
-  {
-    "cmd": [
-      "packer",
-      "validate",
-      "-var",
-      "revision=",
-      "[START_DIR]/dash-internal-salt/packer/pass.packer.generated.json"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "env": {
-      "CHECKPOINT_DISABLE": "1",
-      "PACKER_LOG": "1",
-      "PACKER_NO_COLOR": "1"
-    },
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "packer validate (2)"
-  },
-  {
-    "cmd": [],
-    "name": "fail",
-    "~followup_annotations": [
-      "@@@STEP_FAILURE@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "packer",
-      "build",
-      "-var",
-      "revision=",
-      "-var",
-      "dry_run=true",
-      "-var",
-      "use_internal_ip=true",
-      "-only=fail",
-      "[START_DIR]/dash-internal-salt/packer/fail.packer.generated.json"
-    ],
-    "cost": {
-      "cpu": 0,
-      "disk": 0,
-      "memory": 0,
-      "net": 0
-    },
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "env": {
-      "CHECKPOINT_DISABLE": "1",
-      "PACKER_LOG": "1",
-      "PACKER_NO_COLOR": "1"
-    },
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "fail.packer build",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_TEXT@DRYRUN FAILED@@@",
-      "@@@STEP_LOG_LINE@output@@@@",
-      "@@@STEP_LOG_LINE@output@     fail: ----------@@@",
-      "@@@STEP_LOG_LINE@output@     fail:           ID: /etc/systemd/system/gce-provider-start-agent.service@@@",
-      "@@@STEP_LOG_LINE@output@     fail:     Function: file.managed@@@",
-      "@@@STEP_LOG_LINE@output@     fail:       Result: False@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Comment: The following requisites were not found:@@@",
-      "@@@STEP_LOG_LINE@output@     fail:                                  require:@@@",
-      "@@@STEP_LOG_LINE@output@     fail:                                      user: swarming_use@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Started: 01:13:41.861499@@@",
-      "@@@STEP_LOG_LINE@output@     fail:     Duration: 0.028 ms@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Changes:@@@",
-      "@@@STEP_LOG_LINE@output@     fail: ----------@@@",
-      "@@@STEP_LOG_LINE@output@     fail:           ID: gce-provider-start-agent@@@",
-      "@@@STEP_LOG_LINE@output@     fail:     Function: service.enabled@@@",
-      "@@@STEP_LOG_LINE@output@     fail:       Result: False@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Comment: One or more requisite failed: luci.gce_provider./etc/systemd/system/gce-provider-start-agent.service@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Started: 01:13:41.862762@@@",
-      "@@@STEP_LOG_LINE@output@     fail:     Duration: 0.017 ms@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Changes:@@@",
-      "@@@STEP_LOG_LINE@output@     fail: ----------@@@",
-      "@@@STEP_LOG_LINE@output@     fail:           ID: curl@@@",
-      "@@@STEP_LOG_LINE@output@     fail:     Function: pkg.installed@@@",
-      "@@@STEP_LOG_LINE@output@     fail:       Result: True@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Comment: All specified packages are already installed@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Started: 01:13:41.868646@@@",
-      "@@@STEP_LOG_LINE@output@     fail:     Duration: 688.753 ms@@@",
-      "@@@STEP_LOG_LINE@output@     fail:      Changes:@@@",
-      "@@@STEP_LOG_LINE@output@     fail: ----------@@@",
-      "@@@STEP_LOG_LINE@output@     @@@",
-      "@@@STEP_LOG_END@output@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@           ID: /etc/systemd/system/gce-provider-start-agent.service@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:     Function: file.managed@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:       Result: False@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:      Comment: The following requisites were not found:@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:                                  require:@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:                                      user: swarming_use@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:      Started: 01:13:41.861499@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:     Duration: 0.028 ms@@@",
-      "@@@STEP_LOG_LINE@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@     fail:      Changes:@@@",
-      "@@@STEP_LOG_END@&#x2f;etc&#x2f;systemd&#x2f;system&#x2f;gce-provider-start-agent.service\n@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@           ID: gce-provider-start-agent@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@     fail:     Function: service.enabled@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@     fail:       Result: False@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@     fail:      Comment: One or more requisite failed: luci.gce_provider./etc/systemd/system/gce-provider-start-agent.service@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@     fail:      Started: 01:13:41.862762@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@     fail:     Duration: 0.017 ms@@@",
-      "@@@STEP_LOG_LINE@gce-provider-start-agent\n@     fail:      Changes:@@@",
-      "@@@STEP_LOG_END@gce-provider-start-agent\n@@@",
-      "@@@STEP_FAILURE@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "pass"
-  },
-  {
-    "cmd": [
-      "packer",
-      "build",
-      "-var",
-      "revision=",
-      "-var",
-      "dry_run=true",
-      "-var",
-      "use_internal_ip=true",
-      "-only=pass",
-      "[START_DIR]/dash-internal-salt/packer/pass.packer.generated.json"
-    ],
-    "cost": {
-      "cpu": 0,
-      "disk": 0,
-      "memory": 0,
-      "net": 0
-    },
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "env": {
-      "CHECKPOINT_DISABLE": "1",
-      "PACKER_LOG": "1",
-      "PACKER_NO_COLOR": "1"
-    },
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "pass.packer build",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@output@@@"
-    ]
-  },
-  {
-    "failure": {
-      "failure": {},
-      "humanReason": "BUILDS FAILED"
-    },
-    "name": "$result"
-  }
-]
\ No newline at end of file
diff --git a/recipes/contrib/salt_packer.expected/try_success.json b/recipes/contrib/salt_packer.expected/try_success.json
deleted file mode 100644
index 00b48e0..0000000
--- a/recipes/contrib/salt_packer.expected/try_success.json
+++ /dev/null
@@ -1,1533 +0,0 @@
-[
-  {
-    "cmd": [],
-    "name": "checkout"
-  },
-  {
-    "cmd": [],
-    "name": "checkout.ensure infra/tools/luci/gerrit/${platform}",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.ensure infra/tools/luci/gerrit/${platform}.get packages",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "RECIPE_MODULE[fuchsia::gerrit]/resources/cipd.ensure",
-      "/path/to/tmp/"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.ensure infra/tools/luci/gerrit/${platform}.get packages.read ensure file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@",
-      "@@@STEP_LOG_LINE@cipd.ensure@infra/tools/luci/gerrit/${platform} version:pinned-version@@@",
-      "@@@STEP_LOG_END@cipd.ensure@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.ensure infra/tools/luci/gerrit/${platform}.install infra/tools/luci/gerrit",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.ensure infra/tools/luci/gerrit/${platform}.install infra/tools/luci/gerrit.ensure package directory",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "cipd",
-      "ensure",
-      "-root",
-      "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07",
-      "-ensure-file",
-      "infra/tools/luci/gerrit/${platform} version:pinned-version",
-      "-max-threads",
-      "0",
-      "-json-output",
-      "/path/to/tmp/json"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.ensure infra/tools/luci/gerrit/${platform}.install infra/tools/luci/gerrit.ensure_installed",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@",
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"result\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"\": [@@@",
-      "@@@STEP_LOG_LINE@json.output@      {@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"instance_id\": \"resolved-instance_id-of-version:pinned-v\",@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"package\": \"infra/tools/luci/gerrit/resolved-platform\"@@@",
-      "@@@STEP_LOG_LINE@json.output@      }@@@",
-      "@@@STEP_LOG_LINE@json.output@    ]@@@",
-      "@@@STEP_LOG_LINE@json.output@  }@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit",
-      "change-detail",
-      "-host",
-      "https://dash-internal-review.googlesource.com",
-      "-input",
-      "{\"change_id\": \"salt~123456\"}",
-      "-output",
-      "/path/to/tmp/json"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.get change details",
-    "timeout": 600,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"branch\": \"main\"@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@",
-      "@@@STEP_LOG_LINE@json.input@{@@@",
-      "@@@STEP_LOG_LINE@json.input@  \"change_id\": \"salt~123456\"@@@",
-      "@@@STEP_LOG_LINE@json.input@}@@@",
-      "@@@STEP_LOG_END@json.input@@@",
-      "@@@STEP_LINK@gerrit link@https://dash-internal-review.googlesource.com/q/salt~123456@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.fetch refs/heads/main",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "init"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.git init",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "remote",
-      "add",
-      "origin",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.git remote",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.fetch refs/heads/main.cache",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/git"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.cache.ensure git cache dir",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.cache.write git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/git/dash-internal.googlesource.com-salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.cache.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "init",
-      "--bare"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.cache.git init",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "remote.origin.url",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.cache.remote set-url",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.cache.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "--replace-all",
-      "remote.origin.fetch",
-      "+refs/heads/*:refs/heads/*",
-      "\\+refs/heads/\\*:.*"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.cache.replace fetch configs",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--prune",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.cache.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt/.git/objects/info"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.cache.makedirs object/info",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "[CACHE]/git/dash-internal.googlesource.com-salt/objects\n",
-      "[START_DIR]/dash-internal-salt/.git/objects/info/alternates"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.cache.alternates",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@",
-      "@@@STEP_LOG_LINE@alternates@[CACHE]/git/dash-internal.googlesource.com-salt/objects@@@",
-      "@@@STEP_LOG_END@alternates@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "remove",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.cache.remove git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin",
-      "main"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "checkout",
-      "-f",
-      "FETCH_HEAD"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.git checkout",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "HEAD"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.git rev-parse",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "clean",
-      "-f",
-      "-d",
-      "-x"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.git clean",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.fetch refs/heads/main.submodule",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "sync"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.submodule.git submodule sync",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "update",
-      "--init",
-      "--jobs",
-      "4"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.fetch refs/heads/main.submodule.git submodule update",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@3@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "--remove-section",
-      "remote.origin"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.remove section",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "remote",
-      "add",
-      "origin",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git remote",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.cache",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.write git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/git/dash-internal.googlesource.com-salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "init",
-      "--bare"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.git init",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "remote.origin.url",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.remote set-url",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "--replace-all",
-      "remote.origin.fetch",
-      "+refs/heads/*:refs/heads/*",
-      "\\+refs/heads/\\*:.*"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.replace fetch configs",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--prune",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt/.git/objects/info"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.makedirs object/info",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "[CACHE]/git/dash-internal.googlesource.com-salt/objects\n",
-      "[START_DIR]/dash-internal-salt/.git/objects/info/alternates"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.alternates",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_LINE@alternates@[CACHE]/git/dash-internal.googlesource.com-salt/objects@@@",
-      "@@@STEP_LOG_END@alternates@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "remove",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.remove git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin",
-      "refs/changes/56/123456/7"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "checkout",
-      "-f",
-      "FETCH_HEAD"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git checkout",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "HEAD"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git rev-parse",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "clean",
-      "-f",
-      "-d",
-      "-x"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git clean",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.submodule",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "sync"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.submodule.git submodule sync",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "update",
-      "--init",
-      "--jobs",
-      "4"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.submodule.git submodule update",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rebase",
-      "--rebase-merges",
-      "deadbeef"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git rebase",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "--short",
-      "deadbeef"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "git rev-parse",
-    "timeout": 600.0
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "glob",
-      "[START_DIR]/dash-internal-salt/packer",
-      "*.packer.generated.json"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "find packer templates",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@glob@[START_DIR]/dash-internal-salt/packer/pass.packer.generated.json@@@",
-      "@@@STEP_LOG_END@glob@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "packer",
-      "validate",
-      "-var",
-      "revision=",
-      "[START_DIR]/dash-internal-salt/packer/pass.packer.generated.json"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "env": {
-      "CHECKPOINT_DISABLE": "1",
-      "PACKER_LOG": "1",
-      "PACKER_NO_COLOR": "1"
-    },
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "packer validate"
-  },
-  {
-    "cmd": [],
-    "name": "pass"
-  },
-  {
-    "cmd": [
-      "packer",
-      "build",
-      "-var",
-      "revision=",
-      "-var",
-      "dry_run=true",
-      "-var",
-      "use_internal_ip=true",
-      "-only=pass",
-      "[START_DIR]/dash-internal-salt/packer/pass.packer.generated.json"
-    ],
-    "cost": {
-      "cpu": 0,
-      "disk": 0,
-      "memory": 0,
-      "net": 0
-    },
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "env": {
-      "CHECKPOINT_DISABLE": "1",
-      "PACKER_LOG": "1",
-      "PACKER_NO_COLOR": "1"
-    },
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:try"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "pass.packer build",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_TEXT@DRYRUN SUCCEEDED@@@",
-      "@@@STEP_LOG_LINE@output@DRYRUN SUCCEEDED@@@",
-      "@@@STEP_LOG_END@output@@@"
-    ]
-  },
-  {
-    "name": "$result"
-  }
-]
\ No newline at end of file
diff --git a/recipes/contrib/salt_packer.py b/recipes/contrib/salt_packer.py
deleted file mode 100644
index 69c16a5..0000000
--- a/recipes/contrib/salt_packer.py
+++ /dev/null
@@ -1,226 +0,0 @@
-# Copyright 2021 The Fuchsia Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""
-Recipe to build GCE images with Packer.
-"""
-
-from recipe_engine.recipe_api import Property
-
-import re
-
-DEPS = [
-    "fuchsia/buildbucket_util",
-    "fuchsia/git",
-    "fuchsia/git_checkout",
-    "recipe_engine/context",
-    "recipe_engine/file",
-    "recipe_engine/futures",
-    "recipe_engine/path",
-    "recipe_engine/properties",
-    "recipe_engine/raw_io",
-    "recipe_engine/step",
-]
-
-PROPERTIES = {
-    "repo":
-        Property(kind=str, help="Salt repository to checkout."),
-    "dry_run":
-        Property(
-            kind=bool,
-            help="Exit early instead of creating a disk image.",
-            default=True
-        ),
-}
-TEMPLATE_SUFFIX = ".packer.generated.json"
-
-
-def RunSteps(api, repo, dry_run):
-  salt_path, revision = api.git_checkout(repo, rebase_merges=True)
-
-  # Get a short revision, image names must be < 64 characters
-  with api.context(cwd=salt_path):
-    revision = api.git(
-        "git rev-parse",
-        "rev-parse",
-        "--short",
-        revision,
-        stdout=api.raw_io.output_text(),
-    ).stdout.rstrip()
-
-  packer_dir = salt_path.join("packer")
-  template_paths = api.file.glob_paths(
-      "find packer templates", packer_dir, "*" + TEMPLATE_SUFFIX
-  )
-
-  env = {
-      # Disable update checks.
-      "CHECKPOINT_DISABLE": "1",
-      # Enable verbose logging.
-      "PACKER_LOG": "1",
-      # Disable color in logging.
-      "PACKER_NO_COLOR": "1",
-  }
-
-  with api.context(env=env, cwd=salt_path):
-    builds = []
-    for template_path in template_paths:
-      api.step(
-          "packer validate",
-          [
-              "packer",
-              "validate",
-              "-var",
-              "revision={}".format(revision),
-              template_path,
-          ],
-      )
-      builds.append(
-          api.futures.spawn(
-              _do_packer_builder,
-              api,
-              revision,
-              dry_run,
-              template_path,
-          )
-      )
-    api.futures.wait(builds)
-    if any(not build.result() for build in builds):
-      raise api.step.StepFailure("BUILDS FAILED")
-
-
-def _do_packer_builder(api, revision, dry_run, template_path):
-  build = api.path.basename(template_path).replace(TEMPLATE_SUFFIX, "")
-  with api.step.nest(build):
-    result = api.step(
-        "packer build",
-        [
-            "packer",
-            "build",
-            "-var",
-            "revision={}".format(revision),
-            "-var",
-            "dry_run={}".format(str(dry_run).lower()),
-            "-var",
-            "use_internal_ip=true",
-            "-only={}".format(build),
-            template_path,
-        ],
-        stdout=api.raw_io.output_text(),
-        ok_ret="any",
-        # By default recipe_engine assigns a `cost` of 500 mCPU per step,
-        # this limits our parallelism to 2*NUM_CORES but these steps are
-        # simply waiting 99% of the time we can run far more in parallel.
-        cost=None,
-    )
-    output = result.stdout
-    result.presentation.logs["output"] = output.splitlines()
-
-    if result.retcode != 0:
-      if dry_run:
-        for line in output.splitlines():
-          if "DRYRUN SUCCEEDED" in line:
-            result.presentation.step_text = "DRYRUN SUCCEEDED"
-            return True
-        result.presentation.step_text = "DRYRUN FAILED"
-        result.presentation.status = api.step.FAILURE
-      result.presentation.status = api.step.FAILURE
-    else:
-      return True
-    if result.presentation.status == api.step.FAILURE:
-      failures_regex = re.compile(
-          "(\s*ID:\s(.*?\n).*?Result:\sFalse\n.*?Changes:.*?)\n\s*{}:\s-{{10}}"
-          .format(build),
-          re.DOTALL | re.MULTILINE,
-      )
-      for f in re.findall(failures_regex, output):
-        result.presentation.logs[f[1]] = f[0].splitlines()
-      return False
-
-
-def GenTests(api):
-  state_failures = """
-     fail: ----------
-     fail:           ID: /etc/systemd/system/gce-provider-start-agent.service
-     fail:     Function: file.managed
-     fail:       Result: False
-     fail:      Comment: The following requisites were not found:
-     fail:                                  require:
-     fail:                                      user: swarming_use
-     fail:      Started: 01:13:41.861499
-     fail:     Duration: 0.028 ms
-     fail:      Changes:
-     fail: ----------
-     fail:           ID: gce-provider-start-agent
-     fail:     Function: service.enabled
-     fail:       Result: False
-     fail:      Comment: One or more requisite failed: luci.gce_provider./etc/systemd/system/gce-provider-start-agent.service
-     fail:      Started: 01:13:41.862762
-     fail:     Duration: 0.017 ms
-     fail:      Changes:
-     fail: ----------
-     fail:           ID: curl
-     fail:     Function: pkg.installed
-     fail:       Result: True
-     fail:      Comment: All specified packages are already installed
-     fail:      Started: 01:13:41.868646
-     fail:     Duration: 688.753 ms
-     fail:      Changes:
-     fail: ----------
-     """
-
-  repo = "https://dash-internal.googlesource.com/salt"
-  yield (
-      api.buildbucket_util.test("ci_failure", status="FAILURE", git_repo=repo) +
-      api.properties(repo=repo, dry_run=False) + api.step_data(
-          "find packer templates",
-          api.file.glob_paths([
-              "pass.packer.generated.json",
-              "fail.packer.generated.json",
-          ]),
-      ) + api.step_data("pass.packer build", retcode=0) + api.step_data(
-          "fail.packer build",
-          api.raw_io.stream_output_text(state_failures),
-          retcode=1,
-      )
-  )
-
-  yield (
-      api.buildbucket_util.test("ci_success", git_repo=repo) +
-      api.properties(repo=repo, dry_run=False) + api.step_data(
-          "find packer templates",
-          api.file.glob_paths([
-              "pass.packer.generated.json",
-          ]),
-      ) + api.step_data("pass.packer build", retcode=0)
-  )
-
-  yield (
-      api.buildbucket_util.test("try_failure", status="FAILURE", git_repo=repo)
-      + api.properties(repo=repo, dry_run=True) + api.step_data(
-          "find packer templates",
-          api.file.glob_paths([
-              "pass.packer.generated.json",
-              "fail.packer.generated.json",
-          ]),
-      ) + api.step_data("pass.packer build", retcode=0) + api.step_data(
-          "fail.packer build",
-          api.raw_io.stream_output_text(state_failures),
-          retcode=1,
-      )
-  )
-
-  yield (
-      api.buildbucket_util.test("try_success", tryjob=True, git_repo=repo) +
-      api.properties(repo=repo, dry_run=True) + api.step_data(
-          "find packer templates",
-          api.file.glob_paths([
-              "pass.packer.generated.json",
-          ]),
-      ) + api.step_data(
-          "pass.packer build",
-          api.raw_io.stream_output_text("DRYRUN SUCCEEDED"),
-          retcode=1,
-      )
-  )
diff --git a/recipes/contrib/salt_packer_base_image_roller.expected/get_latest_failure.json b/recipes/contrib/salt_packer_base_image_roller.expected/get_latest_failure.json
deleted file mode 100644
index 0e83d18..0000000
--- a/recipes/contrib/salt_packer_base_image_roller.expected/get_latest_failure.json
+++ /dev/null
@@ -1,832 +0,0 @@
-[
-  {
-    "cmd": [],
-    "name": "checkout"
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "init"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git init",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "remote",
-      "add",
-      "origin",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git remote",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.cache",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/git"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.ensure git cache dir",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.write git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/git/dash-internal.googlesource.com-salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "init",
-      "--bare"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.git init",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "remote.origin.url",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.remote set-url",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "--replace-all",
-      "remote.origin.fetch",
-      "+refs/heads/*:refs/heads/*",
-      "\\+refs/heads/\\*:.*"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.replace fetch configs",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--prune",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt/.git/objects/info"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.makedirs object/info",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "[CACHE]/git/dash-internal.googlesource.com-salt/objects\n",
-      "[START_DIR]/dash-internal-salt/.git/objects/info/alternates"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.alternates",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_LINE@alternates@[CACHE]/git/dash-internal.googlesource.com-salt/objects@@@",
-      "@@@STEP_LOG_END@alternates@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "remove",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.remove git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "checkout",
-      "-f",
-      "2d72510e447ab60a9728aeea2362d8be2cbd7789"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git checkout",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "HEAD"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git rev-parse",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "clean",
-      "-f",
-      "-d",
-      "-x"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git clean",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.submodule",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "sync"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.submodule.git submodule sync",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "update",
-      "--init",
-      "--jobs",
-      "4"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.submodule.git submodule update",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "--short",
-      "deadbeef"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "git rev-parse",
-    "timeout": 600.0
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "[START_DIR]/dash-internal-salt/starlark/packer-source-image.json",
-      "/path/to/tmp/"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "load packer source image json",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@packer-source-image.json@{@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@  \"bar\": {@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@    \"image\": \"old\",@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@    \"project\": \"foo\"@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@  }@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@}@@@",
-      "@@@STEP_LOG_END@packer-source-image.json@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "ensure infra/3pp/tools/gcloud/${platform}"
-  },
-  {
-    "cmd": [],
-    "name": "ensure infra/3pp/tools/gcloud/${platform}.get packages",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "RECIPE_MODULE[fuchsia::gcloud]/resources/cipd.ensure",
-      "/path/to/tmp/"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "ensure infra/3pp/tools/gcloud/${platform}.get packages.read ensure file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_LINE@cipd.ensure@infra/3pp/tools/gcloud/${platform} version:pinned-version@@@",
-      "@@@STEP_LOG_END@cipd.ensure@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "ensure infra/3pp/tools/gcloud/${platform}.install infra/3pp/tools/gcloud",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/cipd_tool/infra/3pp/tools/gcloud/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "ensure infra/3pp/tools/gcloud/${platform}.install infra/3pp/tools/gcloud.ensure package directory",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "cipd",
-      "ensure",
-      "-root",
-      "[START_DIR]/cipd_tool/infra/3pp/tools/gcloud/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07",
-      "-ensure-file",
-      "infra/3pp/tools/gcloud/${platform} version:pinned-version",
-      "-max-threads",
-      "0",
-      "-json-output",
-      "/path/to/tmp/json"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "ensure infra/3pp/tools/gcloud/${platform}.install infra/3pp/tools/gcloud.ensure_installed",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"result\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"\": [@@@",
-      "@@@STEP_LOG_LINE@json.output@      {@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"instance_id\": \"resolved-instance_id-of-version:pinned-v\",@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"package\": \"infra/3pp/tools/gcloud/resolved-platform\"@@@",
-      "@@@STEP_LOG_LINE@json.output@      }@@@",
-      "@@@STEP_LOG_LINE@json.output@    ]@@@",
-      "@@@STEP_LOG_LINE@json.output@  }@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "[START_DIR]/cipd_tool/infra/3pp/tools/gcloud/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/bin/gcloud",
-      "compute",
-      "images",
-      "describe-from-family",
-      "bar",
-      "--project=foo",
-      "--format=json"
-    ],
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "get latest image for foo/bar",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@json.output@{}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "failure": {
-      "failure": {},
-      "humanReason": "Unable to find image for bar"
-    },
-    "name": "$result"
-  }
-]
\ No newline at end of file
diff --git a/recipes/contrib/salt_packer_base_image_roller.expected/update.json b/recipes/contrib/salt_packer_base_image_roller.expected/update.json
deleted file mode 100644
index 3e9a28b..0000000
--- a/recipes/contrib/salt_packer_base_image_roller.expected/update.json
+++ /dev/null
@@ -1,1309 +0,0 @@
-[
-  {
-    "cmd": [],
-    "name": "checkout"
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "init"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git init",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "remote",
-      "add",
-      "origin",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git remote",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.cache",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/git"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.ensure git cache dir",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.write git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/git/dash-internal.googlesource.com-salt"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.makedirs",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "init",
-      "--bare"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.git init",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "remote.origin.url",
-      "https://dash-internal.googlesource.com/salt"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.remote set-url",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "fetch.uriprotocols",
-      "https"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.set fetch.uriprotocols",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "config",
-      "--replace-all",
-      "remote.origin.fetch",
-      "+refs/heads/*:refs/heads/*",
-      "\\+refs/heads/\\*:.*"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.replace fetch configs",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--prune",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin"
-    ],
-    "cwd": "[CACHE]/git/dash-internal.googlesource.com-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/dash-internal-salt/.git/objects/info"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.makedirs object/info",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "[CACHE]/git/dash-internal.googlesource.com-salt/objects\n",
-      "[START_DIR]/dash-internal-salt/.git/objects/info/alternates"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.alternates",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_LINE@alternates@[CACHE]/git/dash-internal.googlesource.com-salt/objects@@@",
-      "@@@STEP_LOG_END@alternates@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "remove",
-      "[CACHE]/git/.GUARD_FILE"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.cache.remove git cache guard file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "--tags",
-      "--jobs",
-      "4",
-      "origin"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git fetch",
-    "timeout": 1200.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "checkout",
-      "-f",
-      "2d72510e447ab60a9728aeea2362d8be2cbd7789"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git checkout",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "HEAD"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git rev-parse",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "clean",
-      "-f",
-      "-d",
-      "-x"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.git clean",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "checkout.submodule",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "sync"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.submodule.git submodule sync",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "update",
-      "--init",
-      "--jobs",
-      "4"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "checkout.submodule.git submodule update",
-    "timeout": 600.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "--short",
-      "deadbeef"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "git rev-parse",
-    "timeout": 600.0
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "[START_DIR]/dash-internal-salt/starlark/packer-source-image.json",
-      "/path/to/tmp/"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "load packer source image json",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@packer-source-image.json@{@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@  \"bar\": {@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@    \"image\": \"old\",@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@    \"project\": \"foo\"@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@  }@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@}@@@",
-      "@@@STEP_LOG_END@packer-source-image.json@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "ensure infra/3pp/tools/gcloud/${platform}"
-  },
-  {
-    "cmd": [],
-    "name": "ensure infra/3pp/tools/gcloud/${platform}.get packages",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "RECIPE_MODULE[fuchsia::gcloud]/resources/cipd.ensure",
-      "/path/to/tmp/"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "ensure infra/3pp/tools/gcloud/${platform}.get packages.read ensure file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_LINE@cipd.ensure@infra/3pp/tools/gcloud/${platform} version:pinned-version@@@",
-      "@@@STEP_LOG_END@cipd.ensure@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "ensure infra/3pp/tools/gcloud/${platform}.install infra/3pp/tools/gcloud",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/cipd_tool/infra/3pp/tools/gcloud/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "ensure infra/3pp/tools/gcloud/${platform}.install infra/3pp/tools/gcloud.ensure package directory",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "cipd",
-      "ensure",
-      "-root",
-      "[START_DIR]/cipd_tool/infra/3pp/tools/gcloud/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07",
-      "-ensure-file",
-      "infra/3pp/tools/gcloud/${platform} version:pinned-version",
-      "-max-threads",
-      "0",
-      "-json-output",
-      "/path/to/tmp/json"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "ensure infra/3pp/tools/gcloud/${platform}.install infra/3pp/tools/gcloud.ensure_installed",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"result\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"\": [@@@",
-      "@@@STEP_LOG_LINE@json.output@      {@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"instance_id\": \"resolved-instance_id-of-version:pinned-v\",@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"package\": \"infra/3pp/tools/gcloud/resolved-platform\"@@@",
-      "@@@STEP_LOG_LINE@json.output@      }@@@",
-      "@@@STEP_LOG_LINE@json.output@    ]@@@",
-      "@@@STEP_LOG_LINE@json.output@  }@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "[START_DIR]/cipd_tool/infra/3pp/tools/gcloud/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/bin/gcloud",
-      "compute",
-      "images",
-      "describe-from-family",
-      "bar",
-      "--project=foo",
-      "--format=json"
-    ],
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "get latest image for foo/bar",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"name\": \"new\"@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "{\n    \"bar\": {\n        \"image\": \"new\",\n        \"project\": \"foo\"\n    }\n}",
-      "[START_DIR]/dash-internal-salt/starlark/packer-source-image.json"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "update packer source image template",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@packer-source-image.json@{@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@    \"bar\": {@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@        \"image\": \"new\",@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@        \"project\": \"foo\"@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@    }@@@",
-      "@@@STEP_LOG_LINE@packer-source-image.json@}@@@",
-      "@@@STEP_LOG_END@packer-source-image.json@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "[START_DIR]/dash-internal-salt/gen.sh"
-    ],
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "regen starlark"
-  },
-  {
-    "cmd": [
-      "git",
-      "ls-files",
-      "--modified",
-      "--deleted",
-      "--exclude-standard"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "check for no-op commit",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@stdout@hello@@@",
-      "@@@STEP_LOG_END@stdout@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "add",
-      "--update"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "git add",
-    "timeout": 60.0
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "HEAD"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "git rev-parse (2)",
-    "timeout": 60.0
-  },
-  {
-    "cmd": [],
-    "name": "calculate Change-Id",
-    "~followup_annotations": [
-      "@@@STEP_TEXT@I520324b8ea4bfe51bb4d3690983686816663e896@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "diff",
-      "--unified=0",
-      "--cached"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "calculate Change-Id.git diff",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_LINE@diff (without hashes)@diff --git a/foo.txt b/foo.txt@@@",
-      "@@@STEP_LOG_LINE@diff (without hashes)@--- a/foo.txt@@@",
-      "@@@STEP_LOG_LINE@diff (without hashes)@+++ b/foo.txt@@@",
-      "@@@STEP_LOG_LINE@diff (without hashes)@@@ -16 +16 @@@@@",
-      "@@@STEP_LOG_LINE@diff (without hashes)@-        foo = 5@@@",
-      "@@@STEP_LOG_LINE@diff (without hashes)@+        foo = 6@@@",
-      "@@@STEP_LOG_LINE@diff (without hashes)@diff --git a/bar.txt b/bar.txt@@@",
-      "@@@STEP_LOG_LINE@diff (without hashes)@--- a/bar.txt@@@",
-      "@@@STEP_LOG_LINE@diff (without hashes)@+++ b/bar.txt@@@",
-      "@@@STEP_LOG_LINE@diff (without hashes)@@@ -5 +5 @@@@@",
-      "@@@STEP_LOG_LINE@diff (without hashes)@-        bar = 0@@@",
-      "@@@STEP_LOG_LINE@diff (without hashes)@+        bar = 1@@@",
-      "@@@STEP_LOG_LINE@diff (without hashes)@@@@",
-      "@@@STEP_LOG_END@diff (without hashes)@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "hash-object",
-      "diff --git a/foo.txt b/foo.txt\n--- a/foo.txt\n+++ b/foo.txt\n@@ -16 +16 @@\n-        foo = 5\n+        foo = 6\ndiff --git a/bar.txt b/bar.txt\n--- a/bar.txt\n+++ b/bar.txt\n@@ -5 +5 @@\n-        bar = 0\n+        bar = 1\n####builder############"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "calculate Change-Id.git hash-object",
-    "timeout": 60.0,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "ensure infra/tools/luci/gerrit/${platform}"
-  },
-  {
-    "cmd": [],
-    "name": "ensure infra/tools/luci/gerrit/${platform}.get packages",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "copy",
-      "RECIPE_MODULE[fuchsia::gerrit]/resources/cipd.ensure",
-      "/path/to/tmp/"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "ensure infra/tools/luci/gerrit/${platform}.get packages.read ensure file",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_LINE@cipd.ensure@infra/tools/luci/gerrit/${platform} version:pinned-version@@@",
-      "@@@STEP_LOG_END@cipd.ensure@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "ensure infra/tools/luci/gerrit/${platform}.install infra/tools/luci/gerrit",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "ensure infra/tools/luci/gerrit/${platform}.install infra/tools/luci/gerrit.ensure package directory",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "cipd",
-      "ensure",
-      "-root",
-      "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07",
-      "-ensure-file",
-      "infra/tools/luci/gerrit/${platform} version:pinned-version",
-      "-max-threads",
-      "0",
-      "-json-output",
-      "/path/to/tmp/json"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "ensure infra/tools/luci/gerrit/${platform}.install infra/tools/luci/gerrit.ensure_installed",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"result\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"\": [@@@",
-      "@@@STEP_LOG_LINE@json.output@      {@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"instance_id\": \"resolved-instance_id-of-version:pinned-v\",@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"package\": \"infra/tools/luci/gerrit/resolved-platform\"@@@",
-      "@@@STEP_LOG_LINE@json.output@      }@@@",
-      "@@@STEP_LOG_LINE@json.output@    ]@@@",
-      "@@@STEP_LOG_LINE@json.output@  }@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit",
-      "change-query",
-      "-host",
-      "https://dash-internal-review.googlesource.com",
-      "-input",
-      "{\"params\": {\"o\": [\"CURRENT_COMMIT\", \"CURRENT_REVISION\", \"MESSAGES\"], \"q\": \"change:salt~main~I520324b8ea4bfe51bb4d3690983686816663e896\"}}",
-      "-output",
-      "/path/to/tmp/json"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "check for identical roll",
-    "timeout": 600,
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@json.output@[]@@@",
-      "@@@STEP_LOG_END@json.output@@@",
-      "@@@STEP_LOG_LINE@json.input@{@@@",
-      "@@@STEP_LOG_LINE@json.input@  \"params\": {@@@",
-      "@@@STEP_LOG_LINE@json.input@    \"o\": [@@@",
-      "@@@STEP_LOG_LINE@json.input@      \"CURRENT_COMMIT\",@@@",
-      "@@@STEP_LOG_LINE@json.input@      \"CURRENT_REVISION\",@@@",
-      "@@@STEP_LOG_LINE@json.input@      \"MESSAGES\"@@@",
-      "@@@STEP_LOG_LINE@json.input@    ],@@@",
-      "@@@STEP_LOG_LINE@json.input@    \"q\": \"change:salt~main~I520324b8ea4bfe51bb4d3690983686816663e896\"@@@",
-      "@@@STEP_LOG_LINE@json.input@  }@@@",
-      "@@@STEP_LOG_LINE@json.input@}@@@",
-      "@@@STEP_LOG_END@json.input@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "commit",
-      "-m",
-      "Rolling Salt Packer Base Images:\n\nbar: old -> new\n\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I520324b8ea4bfe51bb4d3690983686816663e896",
-      "-a",
-      "--no-verify"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "git commit",
-    "timeout": 600.0
-  },
-  {
-    "cmd": [
-      "git",
-      "push",
-      "--push-option",
-      "nokeycheck",
-      "origin",
-      "HEAD:refs/for/main%l=Commit-Queue+2"
-    ],
-    "cwd": "[START_DIR]/dash-internal-salt",
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "git push",
-    "timeout": 180.0,
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@stdout@@@@",
-      "@@@STEP_LOG_END@stdout@@@",
-      "@@@STEP_LINK@gerrit link@https://dash-internal-review.googlesource.com/q/salt~main~I520324b8ea4bfe51bb4d3690983686816663e896@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "check for completion"
-  },
-  {
-    "cmd": [
-      "[START_DIR]/cipd_tool/infra/tools/luci/gerrit/0e548aa33f8113a45a5b3b62201e114e98e63d00f97296912380138f44597b07/gerrit",
-      "change-detail",
-      "-host",
-      "https://dash-internal-review.googlesource.com",
-      "-input",
-      "{\"change_id\": \"salt~main~I520324b8ea4bfe51bb4d3690983686816663e896\", \"params\": {\"o\": [\"CURRENT_REVISION\"]}}",
-      "-output",
-      "/path/to/tmp/json"
-    ],
-    "infra_step": true,
-    "luci_context": {
-      "realm": {
-        "name": "fuchsia:ci"
-      },
-      "resultdb": {
-        "current_invocation": {
-          "name": "invocations/build:8945511751514863184",
-          "update_token": "token"
-        },
-        "hostname": "rdbhost"
-      }
-    },
-    "name": "check for completion.check if done (0)",
-    "timeout": 600,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"current_revision\": \"abc123\",@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"labels\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"Commit-Queue\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@      \"approved\": {}@@@",
-      "@@@STEP_LOG_LINE@json.output@    }@@@",
-      "@@@STEP_LOG_LINE@json.output@  },@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"status\": \"MERGED\"@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@",
-      "@@@STEP_LOG_LINE@json.input@{@@@",
-      "@@@STEP_LOG_LINE@json.input@  \"change_id\": \"salt~main~I520324b8ea4bfe51bb4d3690983686816663e896\",@@@",
-      "@@@STEP_LOG_LINE@json.input@  \"params\": {@@@",
-      "@@@STEP_LOG_LINE@json.input@    \"o\": [@@@",
-      "@@@STEP_LOG_LINE@json.input@      \"CURRENT_REVISION\"@@@",
-      "@@@STEP_LOG_LINE@json.input@    ]@@@",
-      "@@@STEP_LOG_LINE@json.input@  }@@@",
-      "@@@STEP_LOG_LINE@json.input@}@@@",
-      "@@@STEP_LOG_END@json.input@@@",
-      "@@@STEP_LINK@gerrit link@https://dash-internal-review.googlesource.com/q/salt~main~I520324b8ea4bfe51bb4d3690983686816663e896@@@"
-    ]
-  },
-  {
-    "name": "$result"
-  }
-]
\ No newline at end of file
diff --git a/recipes/contrib/salt_packer_base_image_roller.py b/recipes/contrib/salt_packer_base_image_roller.py
deleted file mode 100644
index 0a27193..0000000
--- a/recipes/contrib/salt_packer_base_image_roller.py
+++ /dev/null
@@ -1,132 +0,0 @@
-# Copyright 2021 The Fuchsia Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""
-Recipe to roll base/source_images for Packer.
-"""
-
-from recipe_engine.recipe_api import Property
-
-DEPS = [
-    "fuchsia/auto_roller",
-    "fuchsia/buildbucket_util",
-    "fuchsia/gcloud",
-    "fuchsia/git",
-    "fuchsia/git_checkout",
-    "recipe_engine/context",
-    "recipe_engine/file",
-    "recipe_engine/json",
-    "recipe_engine/properties",
-    "recipe_engine/raw_io",
-    "recipe_engine/step",
-]
-
-PROPERTIES = {
-    "repo":
-        Property(kind=str, help="Salt repository to checkout."),
-    "dry_run":
-        Property(
-            kind=bool,
-            help="Exit early instead of committing a change.",
-            default=True
-        ),
-}
-
-
-def RunSteps(api, repo, dry_run):
-  salt_path, revision = api.git_checkout(repo)
-
-  # Get a short revision, image names must be < 64 characters
-  with api.context(cwd=salt_path):
-    revision = api.git(
-        "git rev-parse",
-        "rev-parse",
-        "--short",
-        revision,
-        stdout=api.raw_io.output_text(),
-    ).stdout.rstrip()
-
-  json_path = salt_path.join("starlark", "packer-source-image.json")
-
-  source_image = api.file.read_json(
-      name="load packer source image json", source=json_path
-  )
-
-  commit_message = "Rolling Salt Packer Base Images:\n\n"
-  for family, config in source_image.items():
-    project = config["project"]
-    old_image = config["image"]
-    result = api.gcloud(
-        "compute",
-        "images",
-        "describe-from-family",
-        "{}".format(family),
-        "--project={}".format(project),
-        "--format=json",
-        ok_ret="any",
-        stdout=api.json.output(),
-        step_name="get latest image for {}/{}".format(project, family),
-    )
-    if result.retcode != 0 or "name" not in result.stdout:
-      raise api.step.StepFailure("Unable to find image for {}".format(family))
-    new_image = result.stdout["name"]
-    if old_image != new_image:
-      commit_message += "{}: {} -> {}\n".format(family, old_image, new_image)
-      source_image[family]["image"] = new_image
-
-  api.file.write_json(
-      name="update packer source image template",
-      dest=json_path,
-      data=source_image,
-      indent=4,
-  )
-  api.step("regen starlark", [salt_path.join("gen.sh")])
-
-  env = {
-      # Disable update checks.
-      "CHECKPOINT_DISABLE": "1",
-      # Enable verbose logging.
-      "PACKER_LOG": "1",
-      # Disable color in logging.
-      "PACKER_NO_COLOR": "1",
-  }
-
-  api.auto_roller.attempt_roll(
-      api.auto_roller.Options(
-          remote=repo,
-          dry_run=dry_run,
-      ),
-      repo_dir=salt_path,
-      commit_message=commit_message,
-  )
-
-
-def GenTests(api):
-  repo = "https://dash-internal.googlesource.com/salt"
-  yield (
-      api.buildbucket_util.test("update", git_repo=repo) +
-      api.properties(repo=repo, dry_run=False) + api.step_data(
-          "load packer source image json",
-          api.file.read_json(
-              json_content={"bar": {"image": "old", "project": "foo"}}
-          ),
-      ) + api.step_data(
-          "get latest image for foo/bar",
-          stdout=api.json.output({"name": "new"}),
-          retcode=0,
-      ) + api.auto_roller.success()
-  )
-
-  yield (
-      api.buildbucket_util
-      .test("get_latest_failure", status="FAILURE", git_repo=repo) +
-      api.properties(repo=repo, dry_run=False) + api.step_data(
-          "load packer source image json",
-          api.file.read_json(
-              json_content={"bar": {"image": "old", "project": "foo"}}
-          ),
-      ) + api.step_data(
-          "get latest image for foo/bar", stdout=api.json.output({}), retcode=1
-      )
-  )
diff --git a/recipes/flutter/deferred_components.expected/flutter_release_clean_exit.json b/recipes/flutter/deferred_components.expected/flutter_release_clean_exit.json
deleted file mode 100644
index d93c560..0000000
--- a/recipes/flutter/deferred_components.expected/flutter_release_clean_exit.json
+++ /dev/null
@@ -1,923 +0,0 @@
-[
-  {
-    "cmd": [
-      "top",
-      "-b",
-      "-n",
-      "3",
-      "-o",
-      "%MEM"
-    ],
-    "infra_step": true,
-    "name": "OS info"
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/builder"
-    ],
-    "infra_step": true,
-    "name": "Ensure root cache"
-  },
-  {
-    "cmd": [],
-    "name": "checkout source code"
-  },
-  {
-    "cmd": [],
-    "name": "checkout source code.Checkout flutter/flutter",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "python3",
-      "-u",
-      "RECIPE_MODULE[depot_tools::git]/resources/git_setup.py",
-      "--path",
-      "[START_DIR]/flutter sdk",
-      "--url",
-      "https://flutter.googlesource.com/mirrors/flutter"
-    ],
-    "name": "checkout source code.Checkout flutter/flutter.git setup",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "origin",
-      "master",
-      "--recurse-submodules",
-      "--progress",
-      "--tags"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "env": {
-      "PATH": "RECIPE_REPO[depot_tools]:<PATH>"
-    },
-    "infra_step": true,
-    "name": "checkout source code.Checkout flutter/flutter.git fetch",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "checkout",
-      "-f",
-      "FETCH_HEAD"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "infra_step": true,
-    "name": "checkout source code.Checkout flutter/flutter.git checkout",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "HEAD"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "infra_step": true,
-    "name": "checkout source code.Checkout flutter/flutter.read revision",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_TEXT@<br/>checked out 'deadbeef'<br/>@@@",
-      "@@@SET_BUILD_PROPERTY@got_revision@\"deadbeef\"@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "clean",
-      "-f",
-      "-d",
-      "-x"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "infra_step": true,
-    "name": "checkout source code.Checkout flutter/flutter.git clean",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "sync"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "infra_step": true,
-    "name": "checkout source code.Checkout flutter/flutter.submodule sync",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "update",
-      "--init",
-      "--recursive"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "infra_step": true,
-    "name": "checkout source code.Checkout flutter/flutter.submodule update",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "HEAD"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "infra_step": true,
-    "name": "git rev-parse"
-  },
-  {
-    "cmd": [
-      "cipd",
-      "ensure",
-      "-root",
-      "[CACHE]/android",
-      "-ensure-file",
-      "flutter/android/sdk/all/${platform} latest",
-      "-max-threads",
-      "0",
-      "-json-output",
-      "/path/to/tmp/json"
-    ],
-    "name": "ensure_installed",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"result\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"\": [@@@",
-      "@@@STEP_LOG_LINE@json.output@      {@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"package\": \"flutter/android/sdk/all/resolved-platform\"@@@",
-      "@@@STEP_LOG_LINE@json.output@      }@@@",
-      "@@@STEP_LOG_LINE@json.output@    ]@@@",
-      "@@@STEP_LOG_LINE@json.output@  }@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "cipd",
-      "ensure",
-      "-root",
-      "[CLEANUP]/tmp_tmp_2/curl",
-      "-ensure-file",
-      "flutter_internal/tools/curl/${platform} latest",
-      "-max-threads",
-      "0",
-      "-json-output",
-      "/path/to/tmp/json"
-    ],
-    "name": "ensure_installed (2)",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"result\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"\": [@@@",
-      "@@@STEP_LOG_LINE@json.output@      {@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"package\": \"flutter_internal/tools/curl/resolved-platform\"@@@",
-      "@@@STEP_LOG_LINE@json.output@      }@@@",
-      "@@@STEP_LOG_LINE@json.output@    ]@@@",
-      "@@@STEP_LOG_LINE@json.output@  }@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "download avd package"
-  },
-  {
-    "cmd": [
-      "cipd",
-      "ensure",
-      "-root",
-      "[CACHE]/avd",
-      "-ensure-file",
-      "chromium/tools/android/avd/linux-amd64 tpUM48N2bNA9XpJyjJpQRdyaNSKe8VCnGuw40CklJ9QC",
-      "-max-threads",
-      "0",
-      "-json-output",
-      "/path/to/tmp/json"
-    ],
-    "env": {
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl"
-      ]
-    },
-    "env_suffixes": {
-      "DEPOT_TOOLS_UPDATE": [
-        "0"
-      ],
-      "PATH": [
-        "RECIPE_REPO[depot_tools]"
-      ]
-    },
-    "name": "download avd package.ensure_installed",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"result\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"\": [@@@",
-      "@@@STEP_LOG_LINE@json.output@      {@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"instance_id\": \"resolved-instance_id-of-tpUM48N2bNA9XpJy\",@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"package\": \"chromium/tools/android/avd/linux-amd64\"@@@",
-      "@@@STEP_LOG_LINE@json.output@      }@@@",
-      "@@@STEP_LOG_LINE@json.output@    ]@@@",
-      "@@@STEP_LOG_LINE@json.output@  }@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "start avd"
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "[CACHE]/avd/src/tools/android/avd/avd.py",
-      "install",
-      "--avd-config",
-      "[CACHE]/avd/src/tools/android/avd/proto/generic_android31.textpb"
-    ],
-    "cwd": "[CACHE]/avd",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "env_suffixes": {
-      "DEPOT_TOOLS_UPDATE": [
-        "0"
-      ],
-      "PATH": [
-        "RECIPE_REPO[depot_tools]"
-      ]
-    },
-    "name": "start avd.Install Android emulator (API level 31)",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "xvfb-run",
-      "vpython3",
-      "[CACHE]/avd/src/tools/android/avd/avd.py",
-      "start",
-      "--no-read-only",
-      "--wipe-data",
-      "--writable-system",
-      "--debug-tags",
-      "all",
-      "--avd-config",
-      "[CACHE]/avd/src/tools/android/avd/proto/generic_android31.textpb"
-    ],
-    "cwd": "[CACHE]/avd",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "env_suffixes": {
-      "DEPOT_TOOLS_UPDATE": [
-        "0"
-      ],
-      "PATH": [
-        "RECIPE_REPO[depot_tools]"
-      ]
-    },
-    "name": "start avd.Start Android emulator (API level 31)",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_LINE@raw_io.output_text@android_31_google_apis_x86|emulator-5554 started (pid: 17687)@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "avd setup"
-  },
-  {
-    "cmd": [
-      "chmod",
-      "755",
-      "RECIPE_MODULE[flutter::android_virtual_device]/resources/avd_setup.sh"
-    ],
-    "cwd": "[CACHE]/avd",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "infra_step": true,
-    "name": "avd setup.Set execute permission",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "RECIPE_MODULE[flutter::android_virtual_device]/resources/avd_setup.sh",
-      "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb"
-    ],
-    "cwd": "[CACHE]/avd",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "infra_step": true,
-    "name": "avd setup.avd_setup.sh",
-    "timeout": 3600,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_LINE@test_stdout@@@@",
-      "@@@STEP_LOG_END@test_stdout@@@",
-      "@@@STEP_LOG_LINE@test_stderr@@@@",
-      "@@@STEP_LOG_END@test_stderr@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "prepare environment"
-  },
-  {
-    "cmd": [
-      "flutter",
-      "config",
-      "--no-analytics"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "name": "prepare environment.flutter config --no-analytics",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "flutter",
-      "doctor"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "name": "prepare environment.flutter doctor",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "flutter",
-      "devices",
-      "--device-timeout=40",
-      "--verbose"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "name": "prepare environment.flutter devices",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "flutter",
-      "update-packages",
-      "-v"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "infra_step": true,
-    "name": "prepare environment.download dependencies",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "cipd",
-      "ensure",
-      "-root",
-      "[CACHE]/builder/bundletool",
-      "-ensure-file",
-      "flutter/android/bundletool 0xeDa85nRhdQfi3iN2dK8PPluwI73z9San_Afuj3CfgC",
-      "-max-threads",
-      "0",
-      "-json-output",
-      "/path/to/tmp/json"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "name": "prepare environment.ensure_installed",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"result\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"\": [@@@",
-      "@@@STEP_LOG_LINE@json.output@      {@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"instance_id\": \"resolved-instance_id-of-0xeDa85nRhdQfi3i\",@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"package\": \"flutter/android/bundletool\"@@@",
-      "@@@STEP_LOG_LINE@json.output@      }@@@",
-      "@@@STEP_LOG_LINE@json.output@    ]@@@",
-      "@@@STEP_LOG_LINE@json.output@  }@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "./download_assets.sh"
-    ],
-    "cwd": "[START_DIR]/flutter sdk/dev/integration_tests/deferred_components_test",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "name": "download assets script"
-  },
-  {
-    "cmd": [
-      "./run_release_test.sh",
-      "[CACHE]/builder/bundletool/bundletool.jar",
-      "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb"
-    ],
-    "cwd": "[START_DIR]/flutter sdk/dev/integration_tests/deferred_components_test",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "name": "Deferred components release tests",
-    "timeout": 700
-  },
-  {
-    "cmd": [],
-    "name": "Killing Processes"
-  },
-  {
-    "cmd": [
-      "pkill",
-      "chrome"
-    ],
-    "infra_step": true,
-    "name": "Killing Processes.kill chrome",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "pkill",
-      "dart"
-    ],
-    "infra_step": true,
-    "name": "Killing Processes.kill dart",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "pkill",
-      "flutter"
-    ],
-    "infra_step": true,
-    "name": "Killing Processes.kill flutter",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "pkill",
-      "java"
-    ],
-    "infra_step": true,
-    "name": "Killing Processes.kill java",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "pkill",
-      "adb"
-    ],
-    "infra_step": true,
-    "name": "Killing Processes.kill adb",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "top",
-      "-b",
-      "-n",
-      "3",
-      "-o",
-      "%MEM"
-    ],
-    "infra_step": true,
-    "name": "OS info (2)"
-  },
-  {
-    "cmd": [],
-    "name": "kill and cleanup avd"
-  },
-  {
-    "cmd": [
-      "kill",
-      "-9",
-      "17687"
-    ],
-    "name": "kill and cleanup avd.Kill emulator cleanup",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "ps",
-      "-axww"
-    ],
-    "name": "kill and cleanup avd.list processes",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "name": "$result"
-  }
-]
\ No newline at end of file
diff --git a/recipes/flutter/deferred_components.expected/flutter_release_zombie_process.json b/recipes/flutter/deferred_components.expected/flutter_release_zombie_process.json
deleted file mode 100644
index d9634ad..0000000
--- a/recipes/flutter/deferred_components.expected/flutter_release_zombie_process.json
+++ /dev/null
@@ -1,934 +0,0 @@
-[
-  {
-    "cmd": [
-      "top",
-      "-b",
-      "-n",
-      "3",
-      "-o",
-      "%MEM"
-    ],
-    "infra_step": true,
-    "name": "OS info"
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CACHE]/builder"
-    ],
-    "infra_step": true,
-    "name": "Ensure root cache"
-  },
-  {
-    "cmd": [],
-    "name": "checkout source code"
-  },
-  {
-    "cmd": [],
-    "name": "checkout source code.Checkout flutter/flutter",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "python3",
-      "-u",
-      "RECIPE_MODULE[depot_tools::git]/resources/git_setup.py",
-      "--path",
-      "[START_DIR]/flutter sdk",
-      "--url",
-      "https://flutter.googlesource.com/mirrors/flutter"
-    ],
-    "name": "checkout source code.Checkout flutter/flutter.git setup",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "fetch",
-      "origin",
-      "master",
-      "--recurse-submodules",
-      "--progress",
-      "--tags"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "env": {
-      "PATH": "RECIPE_REPO[depot_tools]:<PATH>"
-    },
-    "infra_step": true,
-    "name": "checkout source code.Checkout flutter/flutter.git fetch",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "checkout",
-      "-f",
-      "FETCH_HEAD"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "infra_step": true,
-    "name": "checkout source code.Checkout flutter/flutter.git checkout",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "HEAD"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "infra_step": true,
-    "name": "checkout source code.Checkout flutter/flutter.read revision",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_TEXT@<br/>checked out 'deadbeef'<br/>@@@",
-      "@@@SET_BUILD_PROPERTY@got_revision@\"deadbeef\"@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "clean",
-      "-f",
-      "-d",
-      "-x"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "infra_step": true,
-    "name": "checkout source code.Checkout flutter/flutter.git clean",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "sync"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "infra_step": true,
-    "name": "checkout source code.Checkout flutter/flutter.submodule sync",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "submodule",
-      "update",
-      "--init",
-      "--recursive"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "infra_step": true,
-    "name": "checkout source code.Checkout flutter/flutter.submodule update",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "git",
-      "rev-parse",
-      "HEAD"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "infra_step": true,
-    "name": "git rev-parse"
-  },
-  {
-    "cmd": [
-      "cipd",
-      "ensure",
-      "-root",
-      "[CACHE]/android",
-      "-ensure-file",
-      "flutter/android/sdk/all/${platform} latest",
-      "-max-threads",
-      "0",
-      "-json-output",
-      "/path/to/tmp/json"
-    ],
-    "name": "ensure_installed",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"result\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"\": [@@@",
-      "@@@STEP_LOG_LINE@json.output@      {@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"package\": \"flutter/android/sdk/all/resolved-platform\"@@@",
-      "@@@STEP_LOG_LINE@json.output@      }@@@",
-      "@@@STEP_LOG_LINE@json.output@    ]@@@",
-      "@@@STEP_LOG_LINE@json.output@  }@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "cipd",
-      "ensure",
-      "-root",
-      "[CLEANUP]/tmp_tmp_2/curl",
-      "-ensure-file",
-      "flutter_internal/tools/curl/${platform} latest",
-      "-max-threads",
-      "0",
-      "-json-output",
-      "/path/to/tmp/json"
-    ],
-    "name": "ensure_installed (2)",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"result\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"\": [@@@",
-      "@@@STEP_LOG_LINE@json.output@      {@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"instance_id\": \"resolved-instance_id-of-latest----------\",@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"package\": \"flutter_internal/tools/curl/resolved-platform\"@@@",
-      "@@@STEP_LOG_LINE@json.output@      }@@@",
-      "@@@STEP_LOG_LINE@json.output@    ]@@@",
-      "@@@STEP_LOG_LINE@json.output@  }@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "download avd package"
-  },
-  {
-    "cmd": [
-      "cipd",
-      "ensure",
-      "-root",
-      "[CACHE]/avd",
-      "-ensure-file",
-      "chromium/tools/android/avd/linux-amd64 tpUM48N2bNA9XpJyjJpQRdyaNSKe8VCnGuw40CklJ9QC",
-      "-max-threads",
-      "0",
-      "-json-output",
-      "/path/to/tmp/json"
-    ],
-    "env": {
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl"
-      ]
-    },
-    "env_suffixes": {
-      "DEPOT_TOOLS_UPDATE": [
-        "0"
-      ],
-      "PATH": [
-        "RECIPE_REPO[depot_tools]"
-      ]
-    },
-    "name": "download avd package.ensure_installed",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"result\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"\": [@@@",
-      "@@@STEP_LOG_LINE@json.output@      {@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"instance_id\": \"resolved-instance_id-of-tpUM48N2bNA9XpJy\",@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"package\": \"chromium/tools/android/avd/linux-amd64\"@@@",
-      "@@@STEP_LOG_LINE@json.output@      }@@@",
-      "@@@STEP_LOG_LINE@json.output@    ]@@@",
-      "@@@STEP_LOG_LINE@json.output@  }@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "start avd"
-  },
-  {
-    "cmd": [
-      "vpython3",
-      "[CACHE]/avd/src/tools/android/avd/avd.py",
-      "install",
-      "--avd-config",
-      "[CACHE]/avd/src/tools/android/avd/proto/generic_android31.textpb"
-    ],
-    "cwd": "[CACHE]/avd",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "env_suffixes": {
-      "DEPOT_TOOLS_UPDATE": [
-        "0"
-      ],
-      "PATH": [
-        "RECIPE_REPO[depot_tools]"
-      ]
-    },
-    "name": "start avd.Install Android emulator (API level 31)",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "xvfb-run",
-      "vpython3",
-      "[CACHE]/avd/src/tools/android/avd/avd.py",
-      "start",
-      "--no-read-only",
-      "--wipe-data",
-      "--writable-system",
-      "--debug-tags",
-      "all",
-      "--avd-config",
-      "[CACHE]/avd/src/tools/android/avd/proto/generic_android31.textpb"
-    ],
-    "cwd": "[CACHE]/avd",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "env_suffixes": {
-      "DEPOT_TOOLS_UPDATE": [
-        "0"
-      ],
-      "PATH": [
-        "RECIPE_REPO[depot_tools]"
-      ]
-    },
-    "name": "start avd.Start Android emulator (API level 31)",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_LINE@raw_io.output_text@android_31_google_apis_x86|emulator-5554 started (pid: 17687)@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "avd setup"
-  },
-  {
-    "cmd": [
-      "chmod",
-      "755",
-      "RECIPE_MODULE[flutter::android_virtual_device]/resources/avd_setup.sh"
-    ],
-    "cwd": "[CACHE]/avd",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "infra_step": true,
-    "name": "avd setup.Set execute permission",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "RECIPE_MODULE[flutter::android_virtual_device]/resources/avd_setup.sh",
-      "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb"
-    ],
-    "cwd": "[CACHE]/avd",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "infra_step": true,
-    "name": "avd setup.avd_setup.sh",
-    "timeout": 3600,
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_LINE@test_stdout@@@@",
-      "@@@STEP_LOG_END@test_stdout@@@",
-      "@@@STEP_LOG_LINE@test_stderr@@@@",
-      "@@@STEP_LOG_END@test_stderr@@@"
-    ]
-  },
-  {
-    "cmd": [],
-    "name": "prepare environment"
-  },
-  {
-    "cmd": [
-      "flutter",
-      "config",
-      "--no-analytics"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "name": "prepare environment.flutter config --no-analytics",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "flutter",
-      "doctor"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "name": "prepare environment.flutter doctor",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "flutter",
-      "devices",
-      "--device-timeout=40",
-      "--verbose"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "name": "prepare environment.flutter devices",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "flutter",
-      "update-packages",
-      "-v"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "infra_step": true,
-    "name": "prepare environment.download dependencies",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "cipd",
-      "ensure",
-      "-root",
-      "[CACHE]/builder/bundletool",
-      "-ensure-file",
-      "flutter/android/bundletool 0xeDa85nRhdQfi3iN2dK8PPluwI73z9San_Afuj3CfgC",
-      "-max-threads",
-      "0",
-      "-json-output",
-      "/path/to/tmp/json"
-    ],
-    "cwd": "[START_DIR]/flutter sdk",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "name": "prepare environment.ensure_installed",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"result\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"\": [@@@",
-      "@@@STEP_LOG_LINE@json.output@      {@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"instance_id\": \"resolved-instance_id-of-0xeDa85nRhdQfi3i\",@@@",
-      "@@@STEP_LOG_LINE@json.output@        \"package\": \"flutter/android/bundletool\"@@@",
-      "@@@STEP_LOG_LINE@json.output@      }@@@",
-      "@@@STEP_LOG_LINE@json.output@    ]@@@",
-      "@@@STEP_LOG_LINE@json.output@  }@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "./download_assets.sh"
-    ],
-    "cwd": "[START_DIR]/flutter sdk/dev/integration_tests/deferred_components_test",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "name": "download assets script"
-  },
-  {
-    "cmd": [
-      "./run_release_test.sh",
-      "[CACHE]/builder/bundletool/bundletool.jar",
-      "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb"
-    ],
-    "cwd": "[START_DIR]/flutter sdk/dev/integration_tests/deferred_components_test",
-    "env": {
-      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
-      "ANDROID_HOME": "[CACHE]/android/sdk",
-      "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
-      "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1",
-      "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
-      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android",
-      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
-      "AVD_ROOT": "[CACHE]/avd",
-      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
-      "EMULATOR_VERSION": "31",
-      "GIT_BRANCH": "",
-      "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
-      "GRADLE_USER_HOME": "[CACHE]/gradle",
-      "LUCI_BRANCH": "",
-      "LUCI_CI": "True",
-      "LUCI_PR": "",
-      "OS": "linux",
-      "PUB_CACHE": "[START_DIR]/.pub-cache",
-      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
-      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter sdk",
-      "USE_EMULATOR": "True"
-    },
-    "env_prefixes": {
-      "PATH": [
-        "[START_DIR]/flutter sdk/bin",
-        "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
-        "[CLEANUP]/tmp_tmp_2/curl",
-        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
-      ]
-    },
-    "name": "Deferred components release tests",
-    "timeout": 700
-  },
-  {
-    "cmd": [],
-    "name": "Killing Processes"
-  },
-  {
-    "cmd": [
-      "pkill",
-      "chrome"
-    ],
-    "infra_step": true,
-    "name": "Killing Processes.kill chrome",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "pkill",
-      "dart"
-    ],
-    "infra_step": true,
-    "name": "Killing Processes.kill dart",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "pkill",
-      "flutter"
-    ],
-    "infra_step": true,
-    "name": "Killing Processes.kill flutter",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "pkill",
-      "java"
-    ],
-    "infra_step": true,
-    "name": "Killing Processes.kill java",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "pkill",
-      "adb"
-    ],
-    "infra_step": true,
-    "name": "Killing Processes.kill adb",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "top",
-      "-b",
-      "-n",
-      "3",
-      "-o",
-      "%MEM"
-    ],
-    "infra_step": true,
-    "name": "OS info (2)"
-  },
-  {
-    "cmd": [],
-    "name": "kill and cleanup avd"
-  },
-  {
-    "cmd": [
-      "kill",
-      "-9",
-      "17687"
-    ],
-    "name": "kill and cleanup avd.Kill emulator cleanup",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "ps",
-      "-axww"
-    ],
-    "name": "kill and cleanup avd.list processes",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "kill",
-      "-9",
-      "12345"
-    ],
-    "name": "kill and cleanup avd.Kill zombie processes",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@"
-    ]
-  },
-  {
-    "name": "$result"
-  }
-]
\ No newline at end of file
diff --git a/recipes/flutter/deferred_components.py b/recipes/flutter/deferred_components.py
deleted file mode 100644
index 738f9c4..0000000
--- a/recipes/flutter/deferred_components.py
+++ /dev/null
@@ -1,170 +0,0 @@
-# Copyright 2020 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-# TODO(garyq): This Android AVD based test is currently implemented as a separate recipe
-# to validate stability of AVD in pre and post submit. Move this into the general recipe
-# once validated, stable, and no longer under heavy development.
-
-from contextlib import contextmanager
-import re
-
-DEPS = [
-    'flutter/android_virtual_device',
-    'flutter/flutter_deps',
-    'flutter/os_utils',
-    'flutter/repo_util',
-    'recipe_engine/cipd',
-    'recipe_engine/context',
-    'recipe_engine/defer',
-    'recipe_engine/file',
-    'recipe_engine/path',
-    'recipe_engine/properties',
-    'recipe_engine/raw_io',
-    'recipe_engine/step',
-]
-
-# Builder dependencies requried:
-#  - android_sdk
-#  - android_avd
-#  - curl
-
-
-def RunSteps(api):
-  # Collect memory/cpu/process before task execution.
-  api.os_utils.collect_os_info()
-  api.os_utils.print_pub_certs()
-
-  cache_root = api.path['cache'].join('builder')
-
-  api.file.ensure_directory('Ensure root cache', cache_root)
-
-  checkout_path = api.path['start_dir'].join('flutter sdk')
-  with api.step.nest('checkout source code'):
-    api.repo_util.checkout(
-        'flutter',
-        checkout_path=checkout_path,
-        url=api.properties.get('git_url'),
-        ref=api.properties.get('git_ref'),
-    )
-
-  env, env_prefixes = api.repo_util.flutter_environment(checkout_path)
-  api.flutter_deps.required_deps(
-      env, env_prefixes, api.properties.get('dependencies', [])
-  )
-
-  with api.android_virtual_device(env=env, env_prefixes=env_prefixes):
-    bundletool_dir = cache_root.join('bundletool')
-    bundletool_jar = bundletool_dir.join('bundletool.jar')
-    with api.context(env=env, env_prefixes=env_prefixes, cwd=checkout_path):
-      with api.step.nest('prepare environment'):
-        deferred = []
-        # This prevents junk analytics from being sent due to testing
-        deferred.append(
-            api.defer(
-                api.step,
-                'flutter config --no-analytics',
-                ['flutter', 'config', '--no-analytics'],
-            )
-        )
-        deferred.append(
-            api.defer(
-                api.step,
-                'flutter doctor',
-                ['flutter', 'doctor'],
-            )
-        )
-        deferred.append(
-            api.defer(
-                api.step,
-                'flutter devices',
-                ['flutter', 'devices', '--device-timeout=40', '--verbose'],
-            )
-        )
-        deferred.append(
-            api.defer(
-                api.step,
-                'download dependencies',
-                ['flutter', 'update-packages', '-v'],
-                infra_step=True,
-            )
-        )
-        deferred.append(
-            api.defer(
-                api.cipd.ensure, bundletool_dir,
-                api.cipd.EnsureFile().add_package(
-                    'flutter/android/bundletool',
-                    '0xeDa85nRhdQfi3iN2dK8PPluwI73z9San_Afuj3CfgC'
-                )
-            )
-        )
-        api.defer.collect(deferred)
-
-    test_dir = checkout_path.join(
-        'dev', 'integration_tests', 'deferred_components_test'
-    )
-    with api.context(env=env, env_prefixes=env_prefixes, cwd=test_dir):
-      deferred = []
-      # These assets are not allowed to be checked into the repo,
-      # so they are downloaded separately here.
-      deferred.append(
-          api.defer(
-              api.step, 'download assets script', ['./download_assets.sh']
-          )
-      )
-      deferred.append(
-          api.defer(
-              api.step,
-              'Deferred components release tests',
-              ['./run_release_test.sh',
-               str(bundletool_jar), env['ADB_PATH']],
-              timeout=700,
-          )
-      )
-      api.defer.collect(deferred)
-
-    # This is to clean up leaked processes.
-    api.os_utils.kill_processes()
-    # Collect memory/cpu/process after task execution.
-    api.os_utils.collect_os_info()
-
-
-def GenTests(api):
-  checkout_path = api.path['start_dir'].join('flutter sdk')
-  avd_api_version = '31'
-  yield api.test(
-      'flutter_release_clean_exit',
-      api.properties(
-          dependencies=[{'dependency': 'android_sdk'}, {
-              'dependency': 'android_virtual_device', 'version': '31'
-          }, {'dependency': 'curl'}]
-      ),
-      api.repo_util.flutter_environment_data(checkout_dir=checkout_path),
-      api.step_data(
-          'start avd.Start Android emulator (API level %s)' % avd_api_version,
-          stdout=api.raw_io.output_text(
-              'android_' + avd_api_version +
-              '_google_apis_x86|emulator-5554 started (pid: 17687)'
-          )
-      ),
-  )
-  yield api.test(
-      'flutter_release_zombie_process',
-      api.properties(
-          dependencies=[{'dependency': 'android_sdk'}, {
-              'dependency': 'android_virtual_device', 'version': '31'
-          }, {'dependency': 'curl'}]
-      ),
-      api.repo_util.flutter_environment_data(checkout_dir=checkout_path),
-      api.step_data(
-          'start avd.Start Android emulator (API level %s)' % avd_api_version,
-          stdout=api.raw_io.output_text(
-              'android_' + avd_api_version +
-              '_google_apis_x86|emulator-5554 started (pid: 17687)'
-          )
-      ),
-      api.step_data(
-          'kill and cleanup avd.list processes',
-          stdout=api.raw_io.output_text('12345 qemu-system blah')
-      ),
-  )