blob: 3febf45d8f252b2716fb53fc562e9d19900642ea [file] [log] [blame]
[
{
"cmd": [],
"name": "ensure_jiri"
},
{
"cmd": [
"cipd",
"ensure",
"-root",
"[START_DIR]/cipd/jiri",
"-ensure-file",
"fuchsia/tools/jiri/linux-amd64 stable",
"-json-output",
"/path/to/tmp/json"
],
"infra_step": true,
"name": "ensure_jiri.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@ \"instance_id\": \"resolved-instance_id-of-stable----------\", @@@",
"@@@STEP_LOG_LINE@json.output@ \"package\": \"fuchsia/tools/jiri/linux-amd64\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@"
]
},
{
"cmd": [],
"name": "ensure_gsutil"
},
{
"cmd": [
"cipd",
"ensure",
"-root",
"[START_DIR]/cipd/gsutil",
"-ensure-file",
"infra/tools/gsutil latest",
"-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@ \"instance_id\": \"resolved-instance_id-of-latest----------\", @@@",
"@@@STEP_LOG_LINE@json.output@ \"package\": \"infra/tools/gsutil\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@"
]
},
{
"cmd": [],
"name": "ensure_goma"
},
{
"cmd": [
"cipd",
"ensure",
"-root",
"[START_DIR]/cipd/goma",
"-ensure-file",
"infra_internal/goma/client/linux-amd64 release",
"-json-output",
"/path/to/tmp/json",
"-service-account-json",
"/creds/service_accounts/service-account-goma-client.json"
],
"infra_step": true,
"name": "ensure_goma.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@ \"instance_id\": \"resolved-instance_id-of-release---------\", @@@",
"@@@STEP_LOG_LINE@json.output@ \"package\": \"infra_internal/goma/client/linux-amd64\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@"
]
},
{
"cmd": [],
"name": "ensure_qemu"
},
{
"cmd": [
"cipd",
"ensure",
"-root",
"[START_DIR]/cipd/qemu",
"-ensure-file",
"fuchsia/tools/qemu/linux-amd64 latest",
"-json-output",
"/path/to/tmp/json",
"-service-account-json",
"/creds/service_accounts/service-account-goma-client.json"
],
"infra_step": true,
"name": "ensure_qemu.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@ \"instance_id\": \"resolved-instance_id-of-latest----------\", @@@",
"@@@STEP_LOG_LINE@json.output@ \"package\": \"fuchsia/tools/qemu/linux-amd64\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@"
]
},
{
"cmd": [
"[START_DIR]/cipd/jiri/jiri",
"init",
"-analytics-opt=false",
"-rewrite-sso-to-https=true",
"-cache",
"[CACHE]/git",
"-shared"
],
"infra_step": true,
"name": "jiri init"
},
{
"cmd": [
"[START_DIR]/cipd/jiri/jiri",
"import",
"fuchsia",
"https://fuchsia.googlesource.com/manifest"
],
"infra_step": true,
"name": "jiri import"
},
{
"cmd": [
"[START_DIR]/cipd/jiri/jiri",
"update",
"-autoupdate=false",
"-run-hooks=false"
],
"infra_step": true,
"name": "jiri update"
},
{
"cmd": [
"[START_DIR]/cipd/jiri/jiri",
"run-hooks"
],
"infra_step": true,
"name": "jiri run-hooks"
},
{
"cmd": [
"[START_DIR]/cipd/jiri/jiri",
"source-manifest",
"/path/to/tmp/json"
],
"infra_step": true,
"name": "jiri source-manifest",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output[source manifest]@{@@@",
"@@@STEP_LOG_LINE@json.output[source manifest]@ \"directories\": {@@@",
"@@@STEP_LOG_LINE@json.output[source manifest]@ \"manifest\": {@@@",
"@@@STEP_LOG_LINE@json.output[source manifest]@ \"git_checkout\": {@@@",
"@@@STEP_LOG_LINE@json.output[source manifest]@ \"repo_url\": \"https://fuchsia.googlesource.com/manifest\", @@@",
"@@@STEP_LOG_LINE@json.output[source manifest]@ \"revision\": \"4c2b0da3c06341db5cebe4d02c78c93c3b2bd78b\"@@@",
"@@@STEP_LOG_LINE@json.output[source manifest]@ }@@@",
"@@@STEP_LOG_LINE@json.output[source manifest]@ }@@@",
"@@@STEP_LOG_LINE@json.output[source manifest]@ }@@@",
"@@@STEP_LOG_LINE@json.output[source manifest]@}@@@",
"@@@STEP_LOG_END@json.output[source manifest]@@@"
]
},
{
"cmd": [
"[START_DIR]/cipd/jiri/jiri",
"snapshot",
"[TMP_BASE]/jiri.snapshot"
],
"infra_step": true,
"name": "jiri snapshot"
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[infra::hash]/resources/hashutil.py",
"-a",
"sha1",
"[TMP_BASE]/jiri.snapshot"
],
"infra_step": true,
"name": "hash snapshot",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"vpython",
"-spec",
"RECIPE_MODULE[infra::gsutil]/resources/gsutil.vpython",
"-u",
"[START_DIR]/cipd/gsutil/gsutil",
"-o",
"GSUtil:software_update_check_period=0",
"cp",
"[TMP_BASE]/jiri.snapshot",
"gs://fuchsia-snapshots/8ac5404b688b34f2d34d1c8a648413aca30b7a97"
],
"infra_step": true,
"name": "upload jiri.snapshot",
"~followup_annotations": [
"@@@STEP_LINK@jiri.snapshot@https://storage.googleapis.com/fuchsia-snapshots/8ac5404b688b34f2d34d1c8a648413aca30b7a97@@@"
]
},
{
"cmd": [
"[START_DIR]/scripts/build-zircon.sh",
"-c",
"-H",
"-p",
"zircon-pc-x86-64"
],
"name": "build zircon"
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"msleep 500\nruntests\necho \"ready for fuchsia shutdown\"",
"[TMP_BASE]/autorun"
],
"infra_step": true,
"name": "write autorun",
"~followup_annotations": [
"@@@STEP_LOG_LINE@autorun.sh@msleep 500@@@",
"@@@STEP_LOG_LINE@autorun.sh@runtests@@@",
"@@@STEP_LOG_LINE@autorun.sh@echo \"ready for fuchsia shutdown\"@@@",
"@@@STEP_LOG_END@autorun.sh@@@"
]
},
{
"cmd": [],
"name": "build fuchsia"
},
{
"cmd": [
"python",
"-u",
"[START_DIR]/cipd/goma/goma_ctl.py",
"restart"
],
"env": {
"GOMA_CACHE_DIR": "[CACHE]/goma",
"GOMA_DEPS_CACHE_FILE": "goma_deps_cache",
"GOMA_SERVICE_ACCOUNT_JSON_FILE": "/creds/service_accounts/service-account-goma-client.json"
},
"infra_step": true,
"name": "build fuchsia.start_goma",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"[START_DIR]/build/gn/gen.py",
"--target_cpu=x86-64",
"--packages=build/gn/default",
"--autorun=[TMP_BASE]/autorun",
"--goma=[START_DIR]/cipd/goma"
],
"name": "build fuchsia.gen",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport multiprocessing\nimport sys\n\njob_limit = 200\nif sys.platform.startswith('linux'):\n # Use 80 for linux not to load goma backend.\n job_limit = 80\n\ntry:\n jobs = min(job_limit, multiprocessing.cpu_count() * 10)\nexcept NotImplementedError:\n jobs = 50\n\nprint jobs\n"
],
"name": "build fuchsia.calculate the number of recommended jobs",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import multiprocessing@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@job_limit = 200@@@",
"@@@STEP_LOG_LINE@python.inline@if sys.platform.startswith('linux'):@@@",
"@@@STEP_LOG_LINE@python.inline@ # Use 80 for linux not to load goma backend.@@@",
"@@@STEP_LOG_LINE@python.inline@ job_limit = 80@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ jobs = min(job_limit, multiprocessing.cpu_count() * 10)@@@",
"@@@STEP_LOG_LINE@python.inline@except NotImplementedError:@@@",
"@@@STEP_LOG_LINE@python.inline@ jobs = 50@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@print jobs@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[START_DIR]/buildtools/ninja",
"-C",
"[START_DIR]/out/debug-x86-64",
"-j",
"50"
],
"name": "build fuchsia.ninja",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"python",
"-u",
"[START_DIR]/cipd/goma/goma_ctl.py",
"jsonstatus",
"[START_DIR]/cipd/goma/jsonstatus"
],
"env": {
"GOMA_CACHE_DIR": "[CACHE]/goma",
"GOMA_DEPS_CACHE_FILE": "goma_deps_cache",
"GOMA_SERVICE_ACCOUNT_JSON_FILE": "/creds/service_accounts/service-account-goma-client.json"
},
"name": "build fuchsia.goma_jsonstatus",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"python",
"-u",
"[START_DIR]/cipd/goma/goma_ctl.py",
"stat"
],
"env": {
"GOMA_CACHE_DIR": "[CACHE]/goma",
"GOMA_DEPS_CACHE_FILE": "goma_deps_cache",
"GOMA_SERVICE_ACCOUNT_JSON_FILE": "/creds/service_accounts/service-account-goma-client.json"
},
"name": "build fuchsia.goma_stat",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"python",
"-u",
"[START_DIR]/cipd/goma/goma_ctl.py",
"stop"
],
"env": {
"GOMA_CACHE_DIR": "[CACHE]/goma",
"GOMA_DEPS_CACHE_FILE": "goma_deps_cache",
"GOMA_SERVICE_ACCOUNT_JSON_FILE": "/creds/service_accounts/service-account-goma-client.json"
},
"name": "build fuchsia.stop_goma",
"~followup_annotations": [
"@@@STEP_NEST_LEVEL@1@@@"
]
},
{
"cmd": [
"RECIPE_MODULE[infra::qemu]/resources/qemu.py",
"run",
"--executable",
"[START_DIR]/cipd/qemu/bin/qemu-system-x86_64",
"--memory",
"4096",
"--smp",
"4",
"--arch",
"x86_64",
"--initrd",
"[START_DIR]/out/debug-x86-64/user.bootfs",
"--shutdown_pattern",
"ready for fuchsia shutdown",
"[START_DIR]/out/build-zircon/build-zircon-pc-x86-64/zircon.bin"
],
"name": "run tests",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"@@@STEP_LOG_LINE@qemu log@ready for fuchsia shutdown@@@",
"@@@STEP_LOG_END@qemu log@@@",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[START_DIR]/zircon/scripts/symbolize",
"--no-echo",
"--build-dir",
"[START_DIR]/out/debug-x86-64"
],
"name": "symbolize",
"stdin": "ready for fuchsia shutdown",
"stdout": "/path/to/tmp/"
},
{
"name": "$result",
"reason": "Test output missing",
"recipe_result": null,
"status_code": 1
}
]