blob: ff151ed7ea02fe86ba5df523f6d735a775c08127 [file] [log] [blame]
[
{
"cmd": [],
"name": "download build artifacts"
},
{
"cmd": [],
"name": "download build artifacts.ensure isolated",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"cipd",
"ensure",
"-root",
"[CACHE]/isolated_client",
"-ensure-file",
"infra/tools/luci/isolated/${platform} git_revision:305e79001db1846906c7136d90a863bee5bd3bfc",
"-json-output",
"/path/to/tmp/json"
],
"infra_step": true,
"name": "download build artifacts.ensure isolated.ensure_installed",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"result\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
"@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-git_revision:305\", @@@",
"@@@STEP_LOG_LINE@json.output@ \"package\": \"infra/tools/luci/isolated/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": [
"[CACHE]/isolated_client/isolated",
"download",
"-verbose",
"-isolate-server",
"https://example.isolateserver.appspot.com",
"-isolated",
"abc",
"-output-dir",
"[CLEANUP]/build-artifacts_tmp_1"
],
"infra_step": true,
"name": "download build artifacts.download build_artifacts",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[CLEANUP]/build-artifacts_tmp_1/args.json",
"/path/to/tmp/json"
],
"name": "download build artifacts.read args.json",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"board\": \"boards/x64.gni\", @@@",
"@@@STEP_LOG_LINE@json.output@ \"build_type\": \"build_type\", @@@",
"@@@STEP_LOG_LINE@json.output@ \"product\": \"products/core.gni\", @@@",
"@@@STEP_LOG_LINE@json.output@ \"target\": \"x64\", @@@",
"@@@STEP_LOG_LINE@json.output@ \"variants\": []@@@",
"@@@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",
"[CLEANUP]/build-artifacts_tmp_1/images.json",
"/path/to/tmp/json"
],
"name": "download build artifacts.read images.json",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"netboot\": {@@@",
"@@@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@ \"zircon-a\": {@@@",
"@@@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_END@json.output@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[CLEANUP]/build-artifacts_tmp_1/shards.json",
"/path/to/tmp/json"
],
"name": "download build artifacts.load test shards",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@[@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
"@@@STEP_LOG_LINE@json.output@ \"deps\": [@@@",
"@@@STEP_LOG_LINE@json.output@ \"/path/to/dep\"@@@",
"@@@STEP_LOG_LINE@json.output@ ], @@@",
"@@@STEP_LOG_LINE@json.output@ \"environment\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"dimensions\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"device_type\": \"AEMU\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"name\": \"NAME\", @@@",
"@@@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@@@"
]
},
{
"cmd": [
"vpython",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"/path/to/test\n",
"[CLEANUP]/tests-NAME"
],
"infra_step": true,
"name": "write test list",
"~followup_annotations": [
"@@@STEP_LOG_LINE@tests-NAME@/path/to/test@@@",
"@@@STEP_LOG_END@tests-NAME@@@"
]
},
{
"cmd": [
"vpython",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"mkdir /tmp/infra-test-output\nwaitfor class=block topo=/dev/sys/pci/00:06.0/virtio-block/block timeout=60000\nmount /dev/sys/pci/00:06.0/virtio-block/block /tmp/infra-test-output\nruntests -o /tmp/infra-test-output -f /boot/infra/shard-NAME.run\numount /tmp/infra-test-output\ndm poweroff",
"[CLEANUP]/runcmds-NAME"
],
"infra_step": true,
"name": "write runcmds",
"~followup_annotations": [
"@@@STEP_LOG_LINE@runcmds-NAME@mkdir /tmp/infra-test-output@@@",
"@@@STEP_LOG_LINE@runcmds-NAME@waitfor class=block topo=/dev/sys/pci/00:06.0/virtio-block/block timeout=60000@@@",
"@@@STEP_LOG_LINE@runcmds-NAME@mount /dev/sys/pci/00:06.0/virtio-block/block /tmp/infra-test-output@@@",
"@@@STEP_LOG_LINE@runcmds-NAME@runtests -o /tmp/infra-test-output -f /boot/infra/shard-NAME.run@@@",
"@@@STEP_LOG_LINE@runcmds-NAME@umount /tmp/infra-test-output@@@",
"@@@STEP_LOG_LINE@runcmds-NAME@dm poweroff@@@",
"@@@STEP_LOG_END@runcmds-NAME@@@"
]
},
{
"cmd": [
"[CLEANUP]/build-artifacts_tmp_1/zbi",
"--output",
"[CLEANUP]/build-artifacts_tmp_1/fuchsia.zbi",
"[CLEANUP]/build-artifacts_tmp_1/fuchsia.zbi",
"--entry",
"infra/runcmds-NAME=[CLEANUP]/runcmds-NAME",
"--entry",
"infra/shard-NAME.run=[CLEANUP]/tests-NAME"
],
"name": "create zbi"
},
{
"cmd": [],
"name": "shard NAME"
},
{
"cmd": [
"[CLEANUP]/build-artifacts_tmp_1/minfs",
"[CLEANUP]/isolate_tmp_2/output.fs@3584M",
"create"
],
"name": "shard NAME.create test image",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"vpython",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"[\n {\n \"path\": \"fuchsia.zbi\", \n \"type\": \"zbi\", \n \"name\": \"zircon-a\", \n \"bootserver_pave\": [\n \"--boot\", \n \"--zircona\"\n ]\n }\n]",
"[CLEANUP]/isolate_tmp_2/images.json"
],
"infra_step": true,
"name": "shard NAME.write image manifest",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@images.json@[@@@",
"@@@STEP_LOG_LINE@images.json@ {@@@",
"@@@STEP_LOG_LINE@images.json@ \"path\": \"fuchsia.zbi\", @@@",
"@@@STEP_LOG_LINE@images.json@ \"type\": \"zbi\", @@@",
"@@@STEP_LOG_LINE@images.json@ \"name\": \"zircon-a\", @@@",
"@@@STEP_LOG_LINE@images.json@ \"bootserver_pave\": [@@@",
"@@@STEP_LOG_LINE@images.json@ \"--boot\", @@@",
"@@@STEP_LOG_LINE@images.json@ \"--zircona\"@@@",
"@@@STEP_LOG_LINE@images.json@ ]@@@",
"@@@STEP_LOG_LINE@images.json@ }@@@",
"@@@STEP_LOG_LINE@images.json@]@@@",
"@@@STEP_LOG_END@images.json@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/symlink.py",
"--link-json",
"{\"[CLEANUP]/build-artifacts_tmp_1/bootserver\": [\"[CLEANUP]/isolate_tmp_2/bootserver\"], \"[CLEANUP]/build-artifacts_tmp_1/fuchsia.zbi\": [\"[CLEANUP]/isolate_tmp_2/fuchsia.zbi\"], \"[CLEANUP]/build-artifacts_tmp_1/llvm-symbolizer\": [\"[CLEANUP]/isolate_tmp_2/llvm-symbolizer\"], \"[CLEANUP]/build-artifacts_tmp_1/x64/botanist\": [\"[CLEANUP]/isolate_tmp_2/botanist\"], \"[CLEANUP]/build-artifacts_tmp_1/x64/testrunner\": [\"[CLEANUP]/isolate_tmp_2/testrunner\"]}"
],
"infra_step": true,
"name": "shard NAME.create tree of build artifacts",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"[CACHE]/isolated_client/isolated",
"archive",
"-verbose",
"-isolate-server",
"https://example.isolateserver.appspot.com",
"-namespace",
"default-gzip",
"-dump-hash",
"/path/to/tmp/",
"-dirs",
"[CLEANUP]/isolate_tmp_2:."
],
"infra_step": true,
"name": "shard NAME.isolate build artifacts",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LINK@isolated UI@https://example.isolateserver.appspot.com/browse?namespace=default-gzip&hash=%5Bdummy+hash%5D@@@"
]
},
{
"name": "$result"
}
]