[recipes] Add support for signing
The build module can now sign release builds if a private signing
key is specified.
Change-Id: I4792694a25a0a3ba59c8fc154bcfdd88aa6ed0df
diff --git a/recipe_modules/build/api.py b/recipe_modules/build/api.py
index 84af768..69fef46 100644
--- a/recipe_modules/build/api.py
+++ b/recipe_modules/build/api.py
@@ -61,6 +61,16 @@
CHECKOUT_AUTHORIZED_KEY = '.ssh/authorized_keys'
CHECKOUT_PRIVATE_KEY = '.ssh/pkey'
+# The name of the environment variable that contains the path to a public key
+# used to sign release builds. Only set on release builders.
+RELEASE_PUBKEY_PATH = 'RELEASE_PUBKEY_PATH'
+
+# The default path to the public key.
+DEFAULT_PUBKEY_PATH = '/etc/release_keys/release_key_pub.pem'
+
+# The name of the public key file uploaded in release builds.
+RELEASE_PUBKEY_FILENAME = 'publickey.pem'
+
class FuchsiaBuildResults(object):
"""Represents a completed build of Fuchsia."""
@@ -264,17 +274,20 @@
namespace=namespace,
)
- def upload_results(self, gcs_bucket, namespace=None):
+ def upload_results(self, gcs_bucket, is_release_version=False,
+ namespace=None):
"""Uploads artifacts from the build to Google Cloud Storage.
Args:
gcs_bucket (str): GCS bucket name to upload build results to.
- namespace (str or None): A unique namespace for the GCS upload location;
+ is_release_version (bool): True if checkout is a release version.
+ namespace (str|None): A unique namespace for the GCS upload location;
if None, the current build's ID is used.
"""
assert gcs_bucket
with self._api.step.nest('upload build results'):
- self._api.build._upload_build_results(self, gcs_bucket, namespace)
+ self._api.build._upload_build_results(self, gcs_bucket,
+ is_release_version, namespace)
self._api.build._upload_package_snapshot(self, gcs_bucket, namespace)
@@ -1123,21 +1136,62 @@
results.storage_full.extend(2)
return results
- def _upload_build_results(self, build_results, gcs_bucket, build_id):
+ def _upload_build_results(self, build_results, gcs_bucket, is_release_version,
+ build_id):
assert gcs_bucket
# Upload archives.
- for path in build_results.archives.itervalues():
+ for name, path in build_results.archives.iteritems():
+ metadata = None
+
+ # Try and sign the build archive. If the we are on a release build and the
+ # signing script returns a signature, add it to the metadata and
+ # upload the public key for verification.
+ if is_release_version and name == 'archive':
+ signature = self._try_sign_archive(path)
+ if signature:
+ # Add the signature to the metadata.
+ metadata = {
+ 'x-goog-meta-signature': signature,
+ }
+
+ # Upload the public key to GCS.
+ # Note that we should never actually use the DEFAULT_PUBKEY_PATH here,
+ # because a signature should only be generated in the presence of the
+ # RELEASE_PUBKEY_PATH environment variable.
+ self.m.upload.file_to_gcs(
+ source=os.getenv(RELEASE_PUBKEY_PATH, DEFAULT_PUBKEY_PATH),
+ bucket=gcs_bucket,
+ subpath=RELEASE_PUBKEY_FILENAME,
+ namespace=build_id,
+ )
+
+ # Upload the archive
self.m.upload.file_to_gcs(
source=path,
bucket=gcs_bucket,
subpath=self.m.path.basename(path),
namespace=build_id,
+ metadata=metadata,
)
+
# Upload build metrics.
self._upload_tracing_data(build_results, gcs_bucket, build_id)
self._upload_fileystem_sizes(build_results)
self._upload_blobstats_output(build_results, gcs_bucket, build_id)
+ def _try_sign_archive(self, archive_path):
+ args = [
+ '--archive-file',
+ archive_path,
+ ]
+ return self.m.python(
+ 'run signing script',
+ self.resource('sign.py'),
+ args,
+ venv=self.resource('sign.py.vpython'),
+ stdout=self.m.raw_io.output(),
+ ).stdout
+
def _upload_package_snapshot(self, build_results, gcs_bucket, build_id):
assert gcs_bucket
snapshot_path = build_results.fuchsia_build_dir.join(
diff --git a/recipe_modules/build/examples/full.expected/release_with_signature.json b/recipe_modules/build/examples/full.expected/release_with_signature.json
new file mode 100644
index 0000000..aa61b1d
--- /dev/null
+++ b/recipe_modules/build/examples/full.expected/release_with_signature.json
@@ -0,0 +1,3436 @@
+[
+ {
+ "cmd": [],
+ "name": "build"
+ },
+ {
+ "cmd": [],
+ "name": "build.build fuchsia",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "build.build fuchsia.ensure goma",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "cipd",
+ "ensure",
+ "-root",
+ "[CACHE]/goma/client",
+ "-ensure-file",
+ "infra_internal/goma/client/${platform} release",
+ "-json-output",
+ "/path/to/tmp/json"
+ ],
+ "infra_step": true,
+ "name": "build.build fuchsia.ensure goma.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-release---------\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"package\": \"infra_internal/goma/client/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]/prebuilt/third_party/gn/linux-x64/gn",
+ "gen",
+ "[START_DIR]/out/default",
+ "--check",
+ "--args=import(\"//topaz/boards/x64.gni\") import(\"//topaz/products/default.gni\") build_info_board=\"x64\" build_info_product=\"default\" build_info_version=\"0.19700101.0.77\" goma_dir=\"[CACHE]/goma/client\" is_debug=false sdk_id=\"sdk-id\" target_cpu=\"x64\" use_goma=true zircon_tracelog=\"[CLEANUP]/zircon_gn_trace.json\"",
+ "--tracelog=[CLEANUP]/gn_trace.json"
+ ],
+ "name": "build.build fuchsia.gn gen",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
+ "[START_DIR]/out/default/zircon.json",
+ "/path/to/tmp/json"
+ ],
+ "name": "build.build fuchsia.read zircon ninja instructions",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@",
+ "@@@STEP_LOG_LINE@json.output@{@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"dir\": \"../default.zircon\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"targets\": [@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"legacy-host_tests\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"manifest-$cpu\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ ]@@@",
+ "@@@STEP_LOG_LINE@json.output@}@@@",
+ "@@@STEP_LOG_END@json.output@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
+ "[START_DIR]/out/default/images.json",
+ "/path/to/tmp/json"
+ ],
+ "name": "build.build fuchsia.read image manifest",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@",
+ "@@@STEP_LOG_LINE@json.output@[@@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"bootserver_pave\": [@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"--boot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"--zircona\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ ], @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"zircon-a\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"fuchsia.zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"type\": \"zbi\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"storage-full\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"fvm.blk\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"type\": \"blk\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"bootserver_pave\": [@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"--fvm\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ ], @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"storage-sparse\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"fvm.sparse.blk\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"type\": \"blk\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"bootserver_pave\": [@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"--efi\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ ], @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"efi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"fuchsia.esp.blk\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"type\": \"blk\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"bootserver_netboot\": [@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"--boot\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ ], @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"netboot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"netboot.zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"type\": \"zbi\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"archive\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"build-archive.tgz\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"type\": \"tgz\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"archive\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"build-archive.zip\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"type\": \"zip\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"qemu-kernel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"multiboot.bin\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"type\": \"kernel\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"symbol-archive\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"symbol-archive.tgz\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"type\": \"tgz\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"bootserver_pave\": [@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"--zircon-r\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ ], @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"zircon-r\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"zircon-r.zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"type\": \"zbi\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }@@@",
+ "@@@STEP_LOG_LINE@json.output@]@@@",
+ "@@@STEP_LOG_END@json.output@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
+ "[START_DIR]/out/default/tool_paths.json",
+ "/path/to/tmp/json"
+ ],
+ "name": "build.build fuchsia.read tool_paths manifest",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@",
+ "@@@STEP_LOG_LINE@json.output@[@@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/bazel/linux_x64/bazel\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/cargo/linux_x64/cargo\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-doc/linux_x64/clang-doc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format-diff/linux_x64/clang-format-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format/linux_x64/clang-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy-diff/linux_x64/clang-tidy-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy/linux_x64/clang-tidy\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dart/linux_x64/dart\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dartfmt/linux_x64/dartfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gn/linux_x64/gn\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/go/linux_x64/go\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gofmt/linux_x64/gofmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-cov/linux_x64/llvm-cov\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-profdata/linux_x64/llvm-profdata\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-symbolizer/linux_x64/llvm-symbolizer\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/ninja/linux_x64/ninja\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustc/linux_x64/rustc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustdoc/linux_x64/rustdoc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustfmt/linux_x64/rustfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/yapf/linux_x64/yapf\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-x64/bootserver\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-x64/fidl-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-x64/fidl-lint\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-x64/fvm\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-x64/minfs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-x64/zbi\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/artifactory\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/bootserver_new\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/botanist\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/covargs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/debroot\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/ninjatrace\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/seriallistener\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/size_checker\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/symbolize\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/testrunner\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/testsharder\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/upload_debug_symbols\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/bazel/linux_arm64/bazel\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/cargo/linux_arm64/cargo\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-doc/linux_arm64/clang-doc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format-diff/linux_arm64/clang-format-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format/linux_arm64/clang-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy-diff/linux_arm64/clang-tidy-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy/linux_arm64/clang-tidy\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dart/linux_arm64/dart\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dartfmt/linux_arm64/dartfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gn/linux_arm64/gn\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/go/linux_arm64/go\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gofmt/linux_arm64/gofmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-cov/linux_arm64/llvm-cov\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-profdata/linux_arm64/llvm-profdata\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-symbolizer/linux_arm64/llvm-symbolizer\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/ninja/linux_arm64/ninja\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustc/linux_arm64/rustc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustdoc/linux_arm64/rustdoc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustfmt/linux_arm64/rustfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/yapf/linux_arm64/yapf\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-arm64/bootserver\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-arm64/fidl-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-arm64/fidl-lint\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-arm64/fvm\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-arm64/minfs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-arm64/zbi\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/artifactory\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/bootserver_new\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/botanist\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/covargs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/debroot\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/ninjatrace\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/seriallistener\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/size_checker\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/symbolize\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/testrunner\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/testsharder\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/upload_debug_symbols\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/bazel/mac_x64/bazel\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/cargo/mac_x64/cargo\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-doc/mac_x64/clang-doc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format-diff/mac_x64/clang-format-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format/mac_x64/clang-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy-diff/mac_x64/clang-tidy-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy/mac_x64/clang-tidy\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dart/mac_x64/dart\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dartfmt/mac_x64/dartfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gn/mac_x64/gn\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/go/mac_x64/go\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gofmt/mac_x64/gofmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-cov/mac_x64/llvm-cov\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-profdata/mac_x64/llvm-profdata\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-symbolizer/mac_x64/llvm-symbolizer\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/ninja/mac_x64/ninja\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustc/mac_x64/rustc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustdoc/mac_x64/rustdoc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustfmt/mac_x64/rustfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/yapf/mac_x64/yapf\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-x64/bootserver\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-x64/fidl-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-x64/fidl-lint\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-x64/fvm\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-x64/minfs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-x64/zbi\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/artifactory\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/bootserver_new\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/botanist\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/covargs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/debroot\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/ninjatrace\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/seriallistener\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/size_checker\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/symbolize\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/testrunner\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/testsharder\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/upload_debug_symbols\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/bazel/mac_arm64/bazel\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/cargo/mac_arm64/cargo\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-doc/mac_arm64/clang-doc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format-diff/mac_arm64/clang-format-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format/mac_arm64/clang-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy-diff/mac_arm64/clang-tidy-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy/mac_arm64/clang-tidy\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dart/mac_arm64/dart\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dartfmt/mac_arm64/dartfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gn/mac_arm64/gn\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/go/mac_arm64/go\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gofmt/mac_arm64/gofmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-cov/mac_arm64/llvm-cov\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-profdata/mac_arm64/llvm-profdata\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-symbolizer/mac_arm64/llvm-symbolizer\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/ninja/mac_arm64/ninja\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustc/mac_arm64/rustc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustdoc/mac_arm64/rustdoc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustfmt/mac_arm64/rustfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/yapf/mac_arm64/yapf\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-arm64/bootserver\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-arm64/fidl-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-arm64/fidl-lint\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-arm64/fvm\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-arm64/minfs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-arm64/zbi\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/artifactory\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/bootserver_new\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/botanist\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/covargs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/debroot\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/ninjatrace\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/seriallistener\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/size_checker\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/symbolize\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/testrunner\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/testsharder\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/upload_debug_symbols\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }@@@",
+ "@@@STEP_LOG_LINE@json.output@]@@@",
+ "@@@STEP_LOG_END@json.output@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
+ "[START_DIR]/out/default/tests.json",
+ "/path/to/tmp/json"
+ ],
+ "name": "build.build fuchsia.read test spec manifest",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@",
+ "@@@STEP_LOG_LINE@json.output@[@@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"test\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//public/lib/foo:foo_tests(//some/toolchain)\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"foo_tests\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"path/on/disk/to/test\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"test\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//lib/bar:bar_unittests(//some/toolchain)\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bar_unittests\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"fuchsia\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"path/on/fuchsia/to/test\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }@@@",
+ "@@@STEP_LOG_LINE@json.output@ }@@@",
+ "@@@STEP_LOG_LINE@json.output@]@@@",
+ "@@@STEP_LOG_END@json.output@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "build.build fuchsia.ninja",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "build.build fuchsia.ninja.pre_goma",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
+ "<LUCI_CONTEXT>",
+ "/path/to/tmp/json"
+ ],
+ "name": "build.build fuchsia.ninja.pre_goma.read context",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@4@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "copy",
+ "{\"local_auth\": {\"accounts\": [{\"email\": \"some@example.com\", \"id\": \"test\"}], \"default_account_id\": \"system\"}}",
+ "[CLEANUP]/luci_context._tmp_1"
+ ],
+ "infra_step": true,
+ "name": "build.build fuchsia.ninja.pre_goma.write context",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@4@@@",
+ "@@@STEP_LOG_LINE@luci_context._tmp_1@{\"local_auth\": {\"accounts\": [{\"email\": \"some@example.com\", \"id\": \"test\"}], \"default_account_id\": \"system\"}}@@@",
+ "@@@STEP_LOG_END@luci_context._tmp_1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "[CACHE]/goma/client/goma_ctl.py",
+ "restart"
+ ],
+ "env": {
+ "GOMA_CACHE_DIR": "[CACHE]/goma",
+ "GOMA_DEPS_CACHE_FILE": "goma_deps_cache",
+ "GOMA_DUMP_STATS_FILE": "[CACHE]/goma/client/goma_stats.json",
+ "GOMA_PING_TIMEOUT_SEC": "100",
+ "LUCI_CONTEXT": "[CLEANUP]/luci_context._tmp_1"
+ },
+ "infra_step": true,
+ "name": "build.build fuchsia.ninja.pre_goma.start_goma",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@4@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[fuchsia::ninja]/resources/ninja_wrapper.py",
+ "--ninja_info_output",
+ "/path/to/tmp/json",
+ "--failure_output",
+ "/path/to/tmp/",
+ "--",
+ "[START_DIR]/prebuilt/third_party/ninja/linux_x64/ninja",
+ "-C",
+ "[START_DIR]/out/default.zircon",
+ "-j",
+ "80",
+ "legacy-host_tests",
+ "manifest-$cpu"
+ ],
+ "name": "build.build fuchsia.ninja.zircon",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[fuchsia::ninja]/resources/ninja_wrapper.py",
+ "--ninja_info_output",
+ "/path/to/tmp/json",
+ "--failure_output",
+ "/path/to/tmp/",
+ "--",
+ "[START_DIR]/prebuilt/third_party/ninja/linux_x64/ninja",
+ "-C",
+ "[START_DIR]/out/default",
+ "-j",
+ "80",
+ "build-archive.tgz",
+ "build/gn:package_archive",
+ "build/images:record_filesystem_sizes",
+ "build/images:system_snapshot",
+ "fuchsia.esp.blk",
+ "fuchsia.zbi",
+ "fvm.blk",
+ "fvm.sparse.blk",
+ "ids.txt",
+ "multiboot.bin",
+ "netboot.zbi",
+ "path/on/disk/to/test",
+ "zircon-r.zbi"
+ ],
+ "name": "build.build fuchsia.ninja.fuchsia",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "build.build fuchsia.ninja.post_goma",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@3@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "[CACHE]/goma/client/goma_ctl.py",
+ "jsonstatus",
+ "[CACHE]/goma/client/jsonstatus"
+ ],
+ "env": {
+ "GOMA_CACHE_DIR": "[CACHE]/goma",
+ "GOMA_DEPS_CACHE_FILE": "goma_deps_cache",
+ "GOMA_DUMP_STATS_FILE": "[CACHE]/goma/client/goma_stats.json",
+ "LUCI_CONTEXT": "[CLEANUP]/luci_context._tmp_1"
+ },
+ "name": "build.build fuchsia.ninja.post_goma.goma_jsonstatus",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@4@@@",
+ "@@@STEP_LOG_LINE@json.output@{@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"notice\": [@@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"infra_status\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"num_user_error\": 0, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"ping_status_code\": 200@@@",
+ "@@@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": [
+ "python",
+ "-u",
+ "[CACHE]/goma/client/goma_ctl.py",
+ "stat"
+ ],
+ "env": {
+ "GOMA_CACHE_DIR": "[CACHE]/goma",
+ "GOMA_DEPS_CACHE_FILE": "goma_deps_cache",
+ "GOMA_DUMP_STATS_FILE": "[CACHE]/goma/client/goma_stats.json",
+ "LUCI_CONTEXT": "[CLEANUP]/luci_context._tmp_1"
+ },
+ "name": "build.build fuchsia.ninja.post_goma.goma_stats",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@4@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "[CACHE]/goma/client/goma_ctl.py",
+ "stop"
+ ],
+ "env": {
+ "GOMA_CACHE_DIR": "[CACHE]/goma",
+ "GOMA_DEPS_CACHE_FILE": "goma_deps_cache",
+ "GOMA_DUMP_STATS_FILE": "[CACHE]/goma/client/goma_stats.json",
+ "LUCI_CONTEXT": "[CLEANUP]/luci_context._tmp_1"
+ },
+ "name": "build.build fuchsia.ninja.post_goma.stop_goma",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@4@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "copy",
+ "[CACHE]/goma/client/goma_stats.json",
+ "/path/to/tmp/"
+ ],
+ "infra_step": true,
+ "name": "build.build fuchsia.ninja.post_goma.read goma_stats.json",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@4@@@",
+ "@@@STEP_LOG_LINE@goma_stats.json@{}@@@",
+ "@@@STEP_LOG_END@goma_stats.json@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "copy",
+ "{\"build_info\": {\"build_id\": 8945511751514863184, \"time_stamp\": \"2012-05-14 12:53:21.500000\", \"builder\": \"builder\", \"time_stamp_int\": 1337000003000}}",
+ "[CACHE]/goma/client/goma_stats.json"
+ ],
+ "infra_step": true,
+ "name": "build.build fuchsia.ninja.post_goma.write goma_stats.json",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@4@@@",
+ "@@@STEP_LOG_LINE@goma_stats.json@{\"build_info\": {\"build_id\": 8945511751514863184, \"time_stamp\": \"2012-05-14 12:53:21.500000\", \"builder\": \"builder\", \"time_stamp_int\": 1337000003000}}@@@",
+ "@@@STEP_LOG_END@goma_stats.json@@@",
+ "@@@STEP_LOG_LINE@json.output@{@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"build_info\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"build_id\": 8945511751514863184, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"time_stamp\": \"2012-05-14 12:53:21.500000\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"builder\": \"builder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"time_stamp_int\": 1337000003000@@@",
+ "@@@STEP_LOG_LINE@json.output@ }@@@",
+ "@@@STEP_LOG_LINE@json.output@}@@@",
+ "@@@STEP_LOG_END@json.output@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "build.build fuchsia.ninja.post_goma.ensure bqupload",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@4@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "cipd",
+ "ensure",
+ "-root",
+ "[START_DIR]/cipd/bqupload",
+ "-ensure-file",
+ "infra/tools/bqupload/${platform} git_revision:d85fe78f303c3e969f815121e17c8b08868039ef",
+ "-json-output",
+ "/path/to/tmp/json"
+ ],
+ "infra_step": true,
+ "name": "build.build fuchsia.ninja.post_goma.ensure bqupload.ensure_installed",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@5@@@",
+ "@@@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-git_revision:d85\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"package\": \"infra/tools/bqupload/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/bqupload/bqupload",
+ "fuchsia-infra.artifacts.builds_beta_goma",
+ "[CACHE]/goma/client/goma_stats.json"
+ ],
+ "name": "build.build fuchsia.ninja.post_goma.upload goma_stats_to BQ: fuchsia-infra/artifacts/builds_beta_goma",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@4@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "filesizes",
+ "[START_DIR]/out/default/fvm.blk"
+ ],
+ "infra_step": true,
+ "name": "build.build fuchsia.fvm.blk size",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@",
+ "@@@STEP_LOG_LINE@filesizes@[START_DIR]/out/default/fvm.blk: \t111@@@",
+ "@@@STEP_LOG_END@filesizes@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "[START_DIR]/out/default.zircon/host-linux-x64/fvm",
+ "[START_DIR]/out/default/fvm.blk",
+ "extend",
+ "--length",
+ "222"
+ ],
+ "name": "build.build fuchsia.fvm.blk extend",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "[START_DIR]/prebuilt/third_party/gn/linux-x64/gn",
+ "gen",
+ "[START_DIR]/another/out",
+ "--check",
+ "--args=import(\"//topaz/boards/x64.gni\") import(\"//topaz/products/default.gni\") goma_dir=\"[CACHE]/goma/client\" is_debug=false target_cpu=\"x64\" use_goma=true",
+ "--export-compile-commands"
+ ],
+ "name": "gn gen"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
+ "[START_DIR]/another/out/zircon.json",
+ "/path/to/tmp/json"
+ ],
+ "name": "read zircon ninja instructions",
+ "~followup_annotations": [
+ "@@@STEP_LOG_LINE@json.output@{@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"dir\": \"../default.zircon\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"targets\": [@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"legacy-host_tests\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"manifest-$cpu\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ ]@@@",
+ "@@@STEP_LOG_LINE@json.output@}@@@",
+ "@@@STEP_LOG_END@json.output@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "merge compdbs"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
+ "[START_DIR]/another/default.zircon/compile_commands.json",
+ "/path/to/tmp/json"
+ ],
+ "name": "merge compdbs.read zircon compdb",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@",
+ "@@@STEP_LOG_LINE@json.output@[@@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"command\": \"clang++ zircon.cpp\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"directory\": \"[START_DIR]/out/default.zircon\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"file\": \"../../zircon.cpp\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }@@@",
+ "@@@STEP_LOG_LINE@json.output@]@@@",
+ "@@@STEP_LOG_END@json.output@@@",
+ "@@@STEP_LOG_END@json.output (invalid)@@@",
+ "@@@STEP_LOG_LINE@json.output (exception)@No JSON object could be decoded@@@",
+ "@@@STEP_LOG_END@json.output (exception)@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
+ "[START_DIR]/another/out/compile_commands.json",
+ "/path/to/tmp/json"
+ ],
+ "name": "merge compdbs.read compdb",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@",
+ "@@@STEP_LOG_LINE@json.output@[@@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"command\": \"clang++ foo.cpp\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"directory\": \"[START_DIR]/out/default\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"file\": \"../../foo.cpp\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"command\": \"clang++ third_party/foo.cpp\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"directory\": \"[START_DIR]/out/default\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"file\": \"../../third_party/foo.cpp\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"command\": \"clang++ foo.cpp\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"directory\": \"[START_DIR]/out/default\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"file\": \"../../out/default/foo.cpp\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }@@@",
+ "@@@STEP_LOG_LINE@json.output@]@@@",
+ "@@@STEP_LOG_END@json.output@@@",
+ "@@@STEP_LOG_END@json.output (invalid)@@@",
+ "@@@STEP_LOG_LINE@json.output (exception)@No JSON object could be decoded@@@",
+ "@@@STEP_LOG_END@json.output (exception)@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "copy",
+ "[{\"directory\": \"[START_DIR]/out/default.zircon\", \"command\": \"clang++ zircon.cpp\", \"file\": \"../../zircon.cpp\"}, {\"directory\": \"[START_DIR]/out/default\", \"command\": \"clang++ foo.cpp\", \"file\": \"../../foo.cpp\"}]",
+ "[CLEANUP]/compile_commands.json"
+ ],
+ "infra_step": true,
+ "name": "write merged compdb",
+ "~followup_annotations": [
+ "@@@STEP_LOG_LINE@compile_commands.json@[{\"directory\": \"[START_DIR]/out/default.zircon\", \"command\": \"clang++ zircon.cpp\", \"file\": \"../../zircon.cpp\"}, {\"directory\": \"[START_DIR]/out/default\", \"command\": \"clang++ foo.cpp\", \"file\": \"../../foo.cpp\"}]@@@",
+ "@@@STEP_LOG_END@compile_commands.json@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
+ "[START_DIR]/another/out/zbi_tests.json",
+ "/path/to/tmp/json"
+ ],
+ "name": "read zbi test manifest",
+ "~followup_annotations": [
+ "@@@STEP_LOG_LINE@json.output@[]@@@",
+ "@@@STEP_LOG_END@json.output@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
+ "[START_DIR]/another/out/tool_paths.json",
+ "/path/to/tmp/json"
+ ],
+ "name": "read tool_paths manifest",
+ "~followup_annotations": [
+ "@@@STEP_LOG_LINE@json.output@[@@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/bazel/linux_x64/bazel\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/cargo/linux_x64/cargo\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-doc/linux_x64/clang-doc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format-diff/linux_x64/clang-format-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format/linux_x64/clang-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy-diff/linux_x64/clang-tidy-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy/linux_x64/clang-tidy\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dart/linux_x64/dart\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dartfmt/linux_x64/dartfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gn/linux_x64/gn\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/go/linux_x64/go\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gofmt/linux_x64/gofmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-cov/linux_x64/llvm-cov\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-profdata/linux_x64/llvm-profdata\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-symbolizer/linux_x64/llvm-symbolizer\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/ninja/linux_x64/ninja\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustc/linux_x64/rustc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustdoc/linux_x64/rustdoc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustfmt/linux_x64/rustfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/yapf/linux_x64/yapf\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-x64/bootserver\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-x64/fidl-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-x64/fidl-lint\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-x64/fvm\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-x64/minfs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-x64/zbi\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/artifactory\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/bootserver_new\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/botanist\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/covargs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/debroot\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/ninjatrace\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/seriallistener\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/size_checker\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/symbolize\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/testrunner\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/testsharder\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_x64/upload_debug_symbols\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/bazel/linux_arm64/bazel\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/cargo/linux_arm64/cargo\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-doc/linux_arm64/clang-doc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format-diff/linux_arm64/clang-format-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format/linux_arm64/clang-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy-diff/linux_arm64/clang-tidy-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy/linux_arm64/clang-tidy\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dart/linux_arm64/dart\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dartfmt/linux_arm64/dartfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gn/linux_arm64/gn\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/go/linux_arm64/go\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gofmt/linux_arm64/gofmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-cov/linux_arm64/llvm-cov\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-profdata/linux_arm64/llvm-profdata\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-symbolizer/linux_arm64/llvm-symbolizer\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/ninja/linux_arm64/ninja\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustc/linux_arm64/rustc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustdoc/linux_arm64/rustdoc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustfmt/linux_arm64/rustfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/yapf/linux_arm64/yapf\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-arm64/bootserver\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-arm64/fidl-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-arm64/fidl-lint\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-arm64/fvm\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-arm64/minfs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-linux-arm64/zbi\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/artifactory\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/bootserver_new\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/botanist\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/covargs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/debroot\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/ninjatrace\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/seriallistener\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/size_checker\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/symbolize\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/testrunner\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/testsharder\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"linux_arm64/upload_debug_symbols\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/bazel/mac_x64/bazel\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/cargo/mac_x64/cargo\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-doc/mac_x64/clang-doc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format-diff/mac_x64/clang-format-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format/mac_x64/clang-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy-diff/mac_x64/clang-tidy-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy/mac_x64/clang-tidy\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dart/mac_x64/dart\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dartfmt/mac_x64/dartfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gn/mac_x64/gn\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/go/mac_x64/go\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gofmt/mac_x64/gofmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-cov/mac_x64/llvm-cov\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-profdata/mac_x64/llvm-profdata\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-symbolizer/mac_x64/llvm-symbolizer\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/ninja/mac_x64/ninja\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustc/mac_x64/rustc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustdoc/mac_x64/rustdoc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustfmt/mac_x64/rustfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/yapf/mac_x64/yapf\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-x64/bootserver\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-x64/fidl-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-x64/fidl-lint\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-x64/fvm\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-x64/minfs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-x64/zbi\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/artifactory\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/bootserver_new\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/botanist\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/covargs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/debroot\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/ninjatrace\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/seriallistener\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/size_checker\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/symbolize\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/testrunner\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/testsharder\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"x64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_x64/upload_debug_symbols\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bazel\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/bazel/mac_arm64/bazel\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"cargo\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/cargo/mac_arm64/cargo\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-doc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-doc/mac_arm64/clang-doc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format-diff/mac_arm64/clang-format-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-format/mac_arm64/clang-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy-diff\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy-diff/mac_arm64/clang-tidy-diff\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"clang-tidy\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/clang-tidy/mac_arm64/clang-tidy\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dart\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dart/mac_arm64/dart\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"dartfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/dartfmt/mac_arm64/dartfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gn\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gn/mac_arm64/gn\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"go\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/go/mac_arm64/go\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"gofmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/gofmt/mac_arm64/gofmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-cov\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-cov/mac_arm64/llvm-cov\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-profdata\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-profdata/mac_arm64/llvm-profdata\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"llvm-symbolizer\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/llvm-symbolizer/mac_arm64/llvm-symbolizer\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninja\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/ninja/mac_arm64/ninja\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustc/mac_arm64/rustc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustdoc\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustdoc/mac_arm64/rustdoc\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"rustfmt\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/rustfmt/mac_arm64/rustfmt\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"yapf\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../../prebuilt/third_party/yapf/mac_arm64/yapf\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-arm64/bootserver\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-format\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-arm64/fidl-format\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fidl-lint\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-arm64/fidl-lint\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"fvm\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-arm64/fvm\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"minfs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-arm64/minfs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"zbi\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"../default.zircon/host-mac-arm64/zbi\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"artifactory\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/artifactory\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"bootserver_new\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/bootserver_new\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"botanist\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/botanist\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"covargs\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/covargs\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"debroot\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/debroot\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"ninjatrace\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/ninjatrace\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"seriallistener\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/seriallistener\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"size_checker\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/size_checker\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"symbolize\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/symbolize\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testrunner\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/testrunner\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"testsharder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/testsharder\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"cpu\": \"arm64\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//tools/upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"upload_debug_symbols\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"mac\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"mac_arm64/upload_debug_symbols\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }@@@",
+ "@@@STEP_LOG_LINE@json.output@]@@@",
+ "@@@STEP_LOG_END@json.output@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
+ "[START_DIR]/another/default.zircon/generated_sources.json",
+ "/path/to/tmp/json"
+ ],
+ "name": "read zircon generated sources",
+ "~followup_annotations": [
+ "@@@STEP_LOG_LINE@json.output@[@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"//generated_header.h\"@@@",
+ "@@@STEP_LOG_LINE@json.output@]@@@",
+ "@@@STEP_LOG_END@json.output@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "copy",
+ "[START_DIR]/another/out/all_fidl_json.txt",
+ "/path/to/tmp/"
+ ],
+ "infra_step": true,
+ "name": "read generated sources"
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
+ "[START_DIR]/another/out/zbi_tests.json",
+ "/path/to/tmp/json"
+ ],
+ "name": "read zbi test manifest (2)",
+ "~followup_annotations": [
+ "@@@STEP_LOG_LINE@json.output@[]@@@",
+ "@@@STEP_LOG_END@json.output@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "ninja"
+ },
+ {
+ "cmd": [],
+ "name": "ninja.pre_goma",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "[CACHE]/goma/client/goma_ctl.py",
+ "restart"
+ ],
+ "env": {
+ "GOMA_CACHE_DIR": "[CACHE]/goma",
+ "GOMA_DEPS_CACHE_FILE": "goma_deps_cache",
+ "GOMA_DUMP_STATS_FILE": "[CACHE]/goma/client/goma_stats.json",
+ "GOMA_PING_TIMEOUT_SEC": "100",
+ "LUCI_CONTEXT": "[CLEANUP]/luci_context._tmp_1"
+ },
+ "infra_step": true,
+ "name": "ninja.pre_goma.start_goma",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[fuchsia::ninja]/resources/ninja_wrapper.py",
+ "--ninja_info_output",
+ "/path/to/tmp/json",
+ "--failure_output",
+ "/path/to/tmp/",
+ "--",
+ "[START_DIR]/prebuilt/third_party/ninja/linux_x64/ninja",
+ "-C",
+ "[START_DIR]/another/default.zircon",
+ "-j",
+ "80",
+ "//generated_header.h",
+ "legacy-host_tests",
+ "manifest-$cpu"
+ ],
+ "name": "ninja.zircon",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "RECIPE_MODULE[fuchsia::ninja]/resources/ninja_wrapper.py",
+ "--ninja_info_output",
+ "/path/to/tmp/json",
+ "--failure_output",
+ "/path/to/tmp/",
+ "--",
+ "[START_DIR]/prebuilt/third_party/ninja/linux_x64/ninja",
+ "-C",
+ "[START_DIR]/another/out",
+ "-j",
+ "80",
+ "//generated_fidl.json"
+ ],
+ "name": "ninja.fuchsia",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "ninja.post_goma",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "[CACHE]/goma/client/goma_ctl.py",
+ "jsonstatus",
+ "[CACHE]/goma/client/jsonstatus"
+ ],
+ "env": {
+ "GOMA_CACHE_DIR": "[CACHE]/goma",
+ "GOMA_DEPS_CACHE_FILE": "goma_deps_cache",
+ "GOMA_DUMP_STATS_FILE": "[CACHE]/goma/client/goma_stats.json",
+ "LUCI_CONTEXT": "[CLEANUP]/luci_context._tmp_1"
+ },
+ "name": "ninja.post_goma.goma_jsonstatus",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@",
+ "@@@STEP_LOG_LINE@json.output@{@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"notice\": [@@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"infra_status\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"num_user_error\": 0, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"ping_status_code\": 200@@@",
+ "@@@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": [
+ "python",
+ "-u",
+ "[CACHE]/goma/client/goma_ctl.py",
+ "stat"
+ ],
+ "env": {
+ "GOMA_CACHE_DIR": "[CACHE]/goma",
+ "GOMA_DEPS_CACHE_FILE": "goma_deps_cache",
+ "GOMA_DUMP_STATS_FILE": "[CACHE]/goma/client/goma_stats.json",
+ "LUCI_CONTEXT": "[CLEANUP]/luci_context._tmp_1"
+ },
+ "name": "ninja.post_goma.goma_stats",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "[CACHE]/goma/client/goma_ctl.py",
+ "stop"
+ ],
+ "env": {
+ "GOMA_CACHE_DIR": "[CACHE]/goma",
+ "GOMA_DEPS_CACHE_FILE": "goma_deps_cache",
+ "GOMA_DUMP_STATS_FILE": "[CACHE]/goma/client/goma_stats.json",
+ "LUCI_CONTEXT": "[CLEANUP]/luci_context._tmp_1"
+ },
+ "name": "ninja.post_goma.stop_goma",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "copy",
+ "[CACHE]/goma/client/goma_stats.json",
+ "/path/to/tmp/"
+ ],
+ "infra_step": true,
+ "name": "ninja.post_goma.read goma_stats.json",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@",
+ "@@@STEP_LOG_LINE@goma_stats.json@{}@@@",
+ "@@@STEP_LOG_END@goma_stats.json@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-u",
+ "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
+ "--json-output",
+ "/path/to/tmp/json",
+ "copy",
+ "{\"build_info\": {\"build_id\": 8945511751514863184, \"time_stamp\": \"2012-05-14 12:53:24.500000\", \"builder\": \"builder\", \"time_stamp_int\": 1337000006000}}",
+ "[CACHE]/goma/client/goma_stats.json"
+ ],
+ "infra_step": true,
+ "name": "ninja.post_goma.write goma_stats.json",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@",
+ "@@@STEP_LOG_LINE@goma_stats.json@{\"build_info\": {\"build_id\": 8945511751514863184, \"time_stamp\": \"2012-05-14 12:53:24.500000\", \"builder\": \"builder\", \"time_stamp_int\": 1337000006000}}@@@",
+ "@@@STEP_LOG_END@goma_stats.json@@@",
+ "@@@STEP_LOG_LINE@json.output@{@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"build_info\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"build_id\": 8945511751514863184, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"time_stamp\": \"2012-05-14 12:53:24.500000\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"builder\": \"builder\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"time_stamp_int\": 1337000006000@@@",
+ "@@@STEP_LOG_LINE@json.output@ }@@@",
+ "@@@STEP_LOG_LINE@json.output@}@@@",
+ "@@@STEP_LOG_END@json.output@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "[START_DIR]/cipd/bqupload/bqupload",
+ "fuchsia-infra.artifacts.builds_beta_goma",
+ "[CACHE]/goma/client/goma_stats.json"
+ ],
+ "name": "ninja.post_goma.upload goma_stats_to BQ: fuchsia-infra/artifacts/builds_beta_goma",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@2@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "check filesystem sizes"
+ },
+ {
+ "cmd": [
+ "[START_DIR]/out/default/linux_x64/upload_debug_symbols",
+ "-bucket",
+ "debug-symbols",
+ "-j",
+ "1000",
+ "-upload-record",
+ "[CLEANUP]/debug-binaries.txt",
+ "[START_DIR]"
+ ],
+ "infra_step": true,
+ "name": "upload debug symbols"
+ },
+ {
+ "cmd": [],
+ "name": "ensure gsutil"
+ },
+ {
+ "cmd": [
+ "cipd",
+ "ensure",
+ "-root",
+ "[START_DIR]/cipd/gsutil",
+ "-ensure-file",
+ "infra/gsutil version:4.41",
+ "-json-output",
+ "/path/to/tmp/json"
+ ],
+ "infra_step": true,
+ "name": "ensure gsutil.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-version:4.41----\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"package\": \"infra/gsutil\"@@@",
+ "@@@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": [
+ "vpython",
+ "-vpython-spec",
+ "RECIPE_MODULE[fuchsia::gsutil]/resources/gsutil.vpython",
+ "-u",
+ "[START_DIR]/cipd/gsutil/gsutil",
+ "-o",
+ "GSUtil:software_update_check_period=0",
+ "cp",
+ "[CLEANUP]/debug-binaries.txt",
+ "gs://###fuchsia-build###/builds/8945511751514863184/debug-binaries.txt"
+ ],
+ "infra_step": true,
+ "name": "upload debug-binaries.txt to ###fuchsia-build###",
+ "~followup_annotations": [
+ "@@@STEP_LINK@debug-binaries.txt@https://storage.cloud.google.com/###fuchsia-build###/builds/8945511751514863184/debug-binaries.txt@@@"
+ ]
+ },
+ {
+ "cmd": [],
+ "name": "upload build results"
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-vpython-spec",
+ "RECIPE_MODULE[fuchsia::gsutil]/resources/gsutil.vpython",
+ "-u",
+ "[START_DIR]/cipd/gsutil/gsutil",
+ "-o",
+ "GSUtil:software_update_check_period=0",
+ "cp",
+ "[START_DIR]/out/default/packages.tar.gz",
+ "gs://###fuchsia-build###/builds/8945511751514863184/packages.tar.gz"
+ ],
+ "infra_step": true,
+ "name": "upload build results.upload packages.tar.gz to ###fuchsia-build###",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@",
+ "@@@STEP_LINK@packages.tar.gz@https://storage.cloud.google.com/###fuchsia-build###/builds/8945511751514863184/packages.tar.gz@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-vpython-spec",
+ "RECIPE_MODULE[fuchsia::build]/resources/sign.py.vpython",
+ "-u",
+ "RECIPE_MODULE[fuchsia::build]/resources/sign.py",
+ "--archive-file",
+ "[START_DIR]/out/default/build-archive.tgz"
+ ],
+ "name": "upload build results.run signing script",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-vpython-spec",
+ "RECIPE_MODULE[fuchsia::gsutil]/resources/gsutil.vpython",
+ "-u",
+ "[START_DIR]/cipd/gsutil/gsutil",
+ "-o",
+ "GSUtil:software_update_check_period=0",
+ "cp",
+ "/etc/release_keys/release_key_pub.pem",
+ "gs://###fuchsia-build###/builds/8945511751514863184/publickey.pem"
+ ],
+ "infra_step": true,
+ "name": "upload build results.upload publickey.pem to ###fuchsia-build###",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@",
+ "@@@STEP_LINK@publickey.pem@https://storage.cloud.google.com/###fuchsia-build###/builds/8945511751514863184/publickey.pem@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-vpython-spec",
+ "RECIPE_MODULE[fuchsia::gsutil]/resources/gsutil.vpython",
+ "-u",
+ "[START_DIR]/cipd/gsutil/gsutil",
+ "-h",
+ "x-goog-meta-signature:signature",
+ "-o",
+ "GSUtil:software_update_check_period=0",
+ "cp",
+ "[START_DIR]/out/default/build-archive.tgz",
+ "gs://###fuchsia-build###/builds/8945511751514863184/build-archive.tgz"
+ ],
+ "infra_step": true,
+ "name": "upload build results.upload build-archive.tgz to ###fuchsia-build###",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@",
+ "@@@STEP_LINK@build-archive.tgz@https://storage.cloud.google.com/###fuchsia-build###/builds/8945511751514863184/build-archive.tgz@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "[START_DIR]/third_party/catapult/tracing/bin/trace2html",
+ "--output",
+ "[CLEANUP]/gn_trace.html",
+ "[CLEANUP]/gn_trace.json"
+ ],
+ "name": "upload build results.gn trace2html",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "[START_DIR]/third_party/catapult/tracing/bin/trace2html",
+ "--output",
+ "[CLEANUP]/zircon_gn_trace.html",
+ "[CLEANUP]/zircon_gn_trace.json"
+ ],
+ "name": "upload build results.gn trace2html (2)",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "[START_DIR]/out/default/linux_x64/ninjatrace",
+ "-filename",
+ "[START_DIR]/out/default/.ninja_log",
+ "-trace-json",
+ "[CLEANUP]/ninja_trace.json"
+ ],
+ "name": "upload build results.ninja tracing",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "[START_DIR]/third_party/catapult/tracing/bin/trace2html",
+ "--output",
+ "[CLEANUP]/ninja_trace.html",
+ "[CLEANUP]/ninja_trace.json"
+ ],
+ "name": "upload build results.ninja trace2html",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "[START_DIR]/out/default/linux_x64/ninjatrace",
+ "-filename",
+ "[START_DIR]/out/default.zircon/.ninja_log",
+ "-trace-json",
+ "[CLEANUP]/zircon_ninja_trace.json"
+ ],
+ "name": "upload build results.ninja tracing (2)",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "python",
+ "-u",
+ "[START_DIR]/third_party/catapult/tracing/bin/trace2html",
+ "--output",
+ "[CLEANUP]/zircon_ninja_trace.html",
+ "[CLEANUP]/zircon_ninja_trace.json"
+ ],
+ "name": "upload build results.ninja trace2html (2)",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-vpython-spec",
+ "RECIPE_MODULE[fuchsia::gsutil]/resources/gsutil.vpython",
+ "-u",
+ "[START_DIR]/cipd/gsutil/gsutil",
+ "-o",
+ "GSUtil:software_update_check_period=0",
+ "cp",
+ "[CLEANUP]/gn_trace.html",
+ "gs://###fuchsia-build###/builds/8945511751514863184/gn_trace.html"
+ ],
+ "infra_step": true,
+ "name": "upload build results.upload gn_trace.html to ###fuchsia-build###",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@",
+ "@@@STEP_LINK@gn_trace.html@https://storage.cloud.google.com/###fuchsia-build###/builds/8945511751514863184/gn_trace.html@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-vpython-spec",
+ "RECIPE_MODULE[fuchsia::gsutil]/resources/gsutil.vpython",
+ "-u",
+ "[START_DIR]/cipd/gsutil/gsutil",
+ "-o",
+ "GSUtil:software_update_check_period=0",
+ "cp",
+ "[CLEANUP]/zircon_gn_trace.html",
+ "gs://###fuchsia-build###/builds/8945511751514863184/zircon_gn_trace.html"
+ ],
+ "infra_step": true,
+ "name": "upload build results.upload zircon_gn_trace.html to ###fuchsia-build###",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@",
+ "@@@STEP_LINK@zircon_gn_trace.html@https://storage.cloud.google.com/###fuchsia-build###/builds/8945511751514863184/zircon_gn_trace.html@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-vpython-spec",
+ "RECIPE_MODULE[fuchsia::gsutil]/resources/gsutil.vpython",
+ "-u",
+ "[START_DIR]/cipd/gsutil/gsutil",
+ "-o",
+ "GSUtil:software_update_check_period=0",
+ "cp",
+ "[CLEANUP]/ninja_trace.html",
+ "gs://###fuchsia-build###/builds/8945511751514863184/ninja_trace.html"
+ ],
+ "infra_step": true,
+ "name": "upload build results.upload ninja_trace.html to ###fuchsia-build###",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@",
+ "@@@STEP_LINK@ninja_trace.html@https://storage.cloud.google.com/###fuchsia-build###/builds/8945511751514863184/ninja_trace.html@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-vpython-spec",
+ "RECIPE_MODULE[fuchsia::gsutil]/resources/gsutil.vpython",
+ "-u",
+ "[START_DIR]/cipd/gsutil/gsutil",
+ "-o",
+ "GSUtil:software_update_check_period=0",
+ "cp",
+ "[CLEANUP]/zircon_ninja_trace.html",
+ "gs://###fuchsia-build###/builds/8945511751514863184/zircon_ninja_trace.html"
+ ],
+ "infra_step": true,
+ "name": "upload build results.upload zircon_ninja_trace.html to ###fuchsia-build###",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@",
+ "@@@STEP_LINK@zircon_ninja_trace.html@https://storage.cloud.google.com/###fuchsia-build###/builds/8945511751514863184/zircon_ninja_trace.html@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "[START_DIR]/prebuilt/third_party/dart/linux_x64/dart",
+ "--packages=[START_DIR]/scripts/blobstats/blobstats.packages",
+ "[START_DIR]/scripts/blobstats/blobstats.dart",
+ "--output=[CLEANUP]/blobstats"
+ ],
+ "cwd": "[START_DIR]/out/default",
+ "name": "upload build results.blobstats",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-vpython-spec",
+ "RECIPE_MODULE[fuchsia::gsutil]/resources/gsutil.vpython",
+ "-u",
+ "[START_DIR]/cipd/gsutil/gsutil",
+ "-o",
+ "GSUtil:software_update_check_period=0",
+ "-m",
+ "rsync",
+ "-r",
+ "[CLEANUP]/blobstats",
+ "gs://###fuchsia-build###/builds/8945511751514863184/blobstats"
+ ],
+ "infra_step": true,
+ "name": "upload build results.upload blobstats to ###fuchsia-build###",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@",
+ "@@@STEP_LINK@blobstats@https://console.cloud.google.com/storage/browser/###fuchsia-build###/builds/8945511751514863184/blobstats@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "[START_DIR]/out/default/linux_x64/testsharder",
+ "-build-dir",
+ "[START_DIR]/out/default",
+ "-output-file",
+ "/path/to/tmp/json"
+ ],
+ "name": "create test shards",
+ "~followup_annotations": [
+ "@@@STEP_LOG_LINE@json.output@[@@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"deps\": [], @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"environment\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"dimensions\": {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"device_type\": \"Khadas Vim2 Max\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ }@@@",
+ "@@@STEP_LOG_LINE@json.output@ }, @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"Vim2\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"tests\": [@@@",
+ "@@@STEP_LOG_LINE@json.output@ {@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"install_path\": \"/path/to/test\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"label\": \"//path/to/test:test(//toolchain)\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"test\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"os\": \"linux\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"path\": \"/path/to/test\"@@@",
+ "@@@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@@@"
+ ]
+ },
+ {
+ "name": "$result"
+ }
+]
\ No newline at end of file
diff --git a/recipe_modules/build/examples/full.expected/release_with_version.json b/recipe_modules/build/examples/full.expected/release_with_version.json
index 3d63d20..a2312a8 100644
--- a/recipe_modules/build/examples/full.expected/release_with_version.json
+++ b/recipe_modules/build/examples/full.expected/release_with_version.json
@@ -3147,6 +3147,21 @@
"cmd": [
"vpython",
"-vpython-spec",
+ "RECIPE_MODULE[fuchsia::build]/resources/sign.py.vpython",
+ "-u",
+ "RECIPE_MODULE[fuchsia::build]/resources/sign.py",
+ "--archive-file",
+ "[START_DIR]/out/default/build-archive.tgz"
+ ],
+ "name": "upload build results.run signing script",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-vpython-spec",
"RECIPE_MODULE[fuchsia::gsutil]/resources/gsutil.vpython",
"-u",
"[START_DIR]/cipd/gsutil/gsutil",
diff --git a/recipe_modules/build/examples/full.expected/upload_debug_symbols_from_release_version.json b/recipe_modules/build/examples/full.expected/upload_debug_symbols_from_release_version.json
index 3b275ad..1937838 100644
--- a/recipe_modules/build/examples/full.expected/upload_debug_symbols_from_release_version.json
+++ b/recipe_modules/build/examples/full.expected/upload_debug_symbols_from_release_version.json
@@ -3147,6 +3147,21 @@
"cmd": [
"vpython",
"-vpython-spec",
+ "RECIPE_MODULE[fuchsia::build]/resources/sign.py.vpython",
+ "-u",
+ "RECIPE_MODULE[fuchsia::build]/resources/sign.py",
+ "--archive-file",
+ "[START_DIR]/out/default/build-archive.tgz"
+ ],
+ "name": "upload build results.run signing script",
+ "~followup_annotations": [
+ "@@@STEP_NEST_LEVEL@1@@@"
+ ]
+ },
+ {
+ "cmd": [
+ "vpython",
+ "-vpython-spec",
"RECIPE_MODULE[fuchsia::gsutil]/resources/gsutil.vpython",
"-u",
"[START_DIR]/cipd/gsutil/gsutil",
diff --git a/recipe_modules/build/examples/full.py b/recipe_modules/build/examples/full.py
index 69ab3b0..f7464a6 100644
--- a/recipe_modules/build/examples/full.py
+++ b/recipe_modules/build/examples/full.py
@@ -205,7 +205,10 @@
build.upload_debug_symbols(
debug_symbol_gcs_bucket=debug_symbol_gcs_bucket, gcs_bucket=gcs_bucket)
if gcs_bucket:
- build.upload_results(gcs_bucket=gcs_bucket)
+ build.upload_results(
+ gcs_bucket=gcs_bucket,
+ is_release_version=True if checkout.release_version else False,
+ )
# Run the testsharder to collect test specifications and shard them.
# Always create shards regardless test_in_shards in true or not.
@@ -261,6 +264,20 @@
),
)
+ # Test signing a release build.
+ yield api.build.test(
+ 'release_with_signature',
+ properties=dict(
+ build_type='release',
+ release_version='0.19700101.0.77',
+ product='topaz/products/default.gni',
+ board='topaz/boards/x64.gni',
+ ),
+ ) + api.step_data(
+ 'upload build results.run signing script',
+ stdout=api.raw_io.output('signature'),
+ )
+
yield api.build.test(
'lto',
properties=dict(variants=['lto']),
diff --git a/recipe_modules/build/resources/sign.py b/recipe_modules/build/resources/sign.py
new file mode 100644
index 0000000..f11d70f
--- /dev/null
+++ b/recipe_modules/build/resources/sign.py
@@ -0,0 +1,46 @@
+# Copyright 2019 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.
+
+import argparse
+import os
+import json
+
+from cryptography.hazmat.backends import default_backend
+from cryptography.hazmat.primitives.serialization import load_pem_private_key
+
+RELEASE_PKEY_PATH = 'RELEASE_PKEY_PATH'
+RELEASE_PUBKEY_PATH = 'RELEASE_PUBKEY_PATH'
+
+
+def main():
+ parser = argparse.ArgumentParser()
+ parser.add_argument('--archive-file')
+ opts = parser.parse_args()
+
+ # Validate args
+ if not opts.archive_file or not os.path.exists(opts.archive_file):
+ return
+
+ # Check that private key/public key env vars are set.
+ pkey_path = os.environ.get(RELEASE_PKEY_PATH)
+ pubkey_path = os.environ.get(RELEASE_PUBKEY_PATH)
+
+ if not pkey_path or not pubkey_path:
+ return
+ # Open the private key file
+ if pkey_path:
+ with open(pkey_path, 'rb') as f:
+ pkey_data = f.read()
+ private_key = load_pem_private_key(pkey_data, None, default_backend())
+
+ # Open and sign the archive.
+ with open(opts.archive_file, 'rb') as f:
+ archive_data = f.read()
+
+ signature = private_key.sign(archive_data)
+ print(signature)
+
+
+if __name__ == '__main__':
+ main()
diff --git a/recipe_modules/build/resources/sign.py.vpython b/recipe_modules/build/resources/sign.py.vpython
new file mode 100644
index 0000000..e20a6cc
--- /dev/null
+++ b/recipe_modules/build/resources/sign.py.vpython
@@ -0,0 +1,61 @@
+# This is a vpython "spec" file.
+#
+# It describes patterns for python wheel dependencies of the python scripts in
+# the chromium repo, particularly for dependencies that have compiled components
+# (since pure-python dependencies can be easily vendored into third_party).
+#
+# When vpython is invoked, it finds this file and builds a python VirtualEnv,
+# containing all of the dependencies described in this file, fetching them from
+# CIPD (the "Chrome Infrastructure Package Deployer" service). Unlike `pip`,
+# this never requires the end-user machine to have a working python extension
+# compilation environment. All of these packages are built using:
+# https://chromium.googlesource.com/infra/infra/+/master/infra/tools/dockerbuild/
+#
+# All python scripts in the repo share this same spec, to avoid dependency
+# fragmentation.
+#
+# If you have depot_tools installed in your $PATH, you can invoke python scripts
+# in this repo by running them as you normally would run them, except
+# substituting `vpython` instead of `python` on the command line, e.g.:
+# vpython path/to/script.py some --arguments
+#
+# Read more about `vpython` and how to modify this file here:
+# https://chromium.googlesource.com/infra/infra/+/master/doc/users/vpython.md
+
+python_version: "2.7"
+
+wheel: <
+ name: "infra/python/wheels/cryptography/${vpython_platform}"
+ version: "version:2.6.1"
+>
+
+wheel: <
+ name: "infra/python/wheels/enum34-py2"
+ version: "version:1.1.6"
+>
+
+wheel: <
+ name: "infra/python/wheels/six-py2_py3"
+ version: "version:1.12.0"
+>
+
+wheel: <
+ name: "infra/python/wheels/cffi/${vpython_platform}"
+ version: "version:1.12.3"
+>
+
+wheel: <
+ name: "infra/python/wheels/ipaddress-py2"
+ version: "version:1.0.18"
+>
+
+wheel: <
+ name: "infra/python/wheels/pycparser-py2_py3"
+ version: "version:2.19"
+>
+
+wheel: <
+ name: "infra/python/wheels/asn1crypto-py2_py3"
+ version: "version:0.22.0"
+>
+
diff --git a/recipe_modules/upload/api.py b/recipe_modules/upload/api.py
index d43ea4d..87b4021 100644
--- a/recipe_modules/upload/api.py
+++ b/recipe_modules/upload/api.py
@@ -36,7 +36,7 @@
FilePath = FilePath
DirectoryPath = DirectoryPath
- def file_to_gcs(self, source, bucket, subpath, namespace=None):
+ def file_to_gcs(self, source, bucket, subpath, namespace=None, metadata=None):
"""Uploads a file to GCS under a subpath specific to the given build.
Will upload the file to:
@@ -49,6 +49,8 @@
build-specific subdirectory.
namespace (str or None): A unique ID for this build. Defaults to the current
build ID or led run ID.
+ metadata (dict): A dictionary of metatadata values to upload along with
+ the file.
Returns:
The upload step.
"""
@@ -57,6 +59,7 @@
src=source,
dst=self._absolute_gcs_path(subpath, namespace),
link_name=subpath,
+ metadata=metadata,
name='upload %s to %s' % (subpath, bucket))
def directory_to_gcs(self, source, bucket, subpath, namespace=None):