| [ |
| { |
| "cmd": [], |
| "name": "install packages" |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-m", |
| "pw_cli", |
| "package", |
| "install", |
| "pkg" |
| ], |
| "name": "install packages.pkg", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "gn", |
| "gen", |
| "--args=foo=true", |
| "--export-compile-commands", |
| "[START_DIR]/checkout/out" |
| ], |
| "cwd": "[START_DIR]/checkout", |
| "name": "gn gen" |
| }, |
| { |
| "cmd": [], |
| "name": "timeout 11h 4m 38s" |
| }, |
| { |
| "cmd": [ |
| "ninja", |
| "-C", |
| "[START_DIR]/checkout/out", |
| "target" |
| ], |
| "luci_context": { |
| "deadline": { |
| "grace_period": 30.0, |
| "soft_deadline": -120.0 |
| } |
| }, |
| "name": "ninja" |
| }, |
| { |
| "cmd": [], |
| "name": "save logs", |
| "~followup_annotations": [ |
| "@@@STEP_LINK@description@https://url@@@", |
| "@@@STEP_FAILURE@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "save logs.logs", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "save logs.logs.glob", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "glob", |
| "[START_DIR]/checkout/out", |
| "*.gn", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "save logs.logs.glob.*.gn", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@3@@@", |
| "@@@STEP_LOG_END@glob@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "glob", |
| "[START_DIR]/checkout/out", |
| "*.log", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "save logs.logs.glob.*.log", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@3@@@", |
| "@@@STEP_LOG_LINE@glob@[START_DIR]/checkout/out/.ninja_log@@@", |
| "@@@STEP_LOG_LINE@glob@[START_DIR]/checkout/out/failure-summary.log@@@", |
| "@@@STEP_LOG_LINE@glob@[START_DIR]/checkout/out/links.json@@@", |
| "@@@STEP_LOG_END@glob@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "glob", |
| "[START_DIR]/checkout/out", |
| "*.json", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "save logs.logs.glob.*.json", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@3@@@", |
| "@@@STEP_LOG_END@glob@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "glob", |
| "[START_DIR]/checkout/out", |
| "*.compdb", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "save logs.logs.glob.*.compdb", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@3@@@", |
| "@@@STEP_LOG_END@glob@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "glob", |
| "[START_DIR]/checkout/out", |
| "*.graph", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "save logs.logs.glob.*.graph", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@3@@@", |
| "@@@STEP_LOG_END@glob@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "glob", |
| "[START_DIR]/checkout/out", |
| "*_log", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "save logs.logs.glob.*_log", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@3@@@", |
| "@@@STEP_LOG_END@glob@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "[START_DIR]/checkout/out/.ninja_log", |
| "/path/to/tmp/" |
| ], |
| "infra_step": true, |
| "name": "save logs.logs..ninja_log", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@", |
| "@@@STEP_LOG_LINE@.ninja_log@2000 5000 0 medium 0@@@", |
| "@@@STEP_LOG_LINE@.ninja_log@3000 8000 0 long 0@@@", |
| "@@@STEP_LOG_LINE@.ninja_log@malformed line@@@", |
| "@@@STEP_LOG_LINE@.ninja_log@4000 5000 0 short 0@@@", |
| "@@@STEP_LOG_LINE@.ninja_log@5000 x 0 malformed-end-time 0@@@", |
| "@@@STEP_LOG_END@.ninja_log@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "[START_DIR]/checkout/out/failure-summary.log", |
| "/path/to/tmp/" |
| ], |
| "infra_step": true, |
| "name": "save logs.logs.failure-summary.log", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@", |
| "@@@STEP_LOG_LINE@failure-summary.log@[5/10] foo.c@@@", |
| "@@@STEP_LOG_LINE@failure-summary.log@error: ???@@@", |
| "@@@STEP_LOG_END@failure-summary.log@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "[START_DIR]/checkout/out/links.json", |
| "/path/to/tmp/" |
| ], |
| "infra_step": true, |
| "name": "save logs.logs.links.json", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@", |
| "@@@STEP_LOG_LINE@links.json@[@@@", |
| "@@@STEP_LOG_LINE@links.json@ {@@@", |
| "@@@STEP_LOG_LINE@links.json@ \"description\": \"description\",@@@", |
| "@@@STEP_LOG_LINE@links.json@ \"url\": \"https://url\"@@@", |
| "@@@STEP_LOG_LINE@links.json@ }@@@", |
| "@@@STEP_LOG_LINE@links.json@]@@@", |
| "@@@STEP_LOG_END@links.json@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "save logs.failure summary", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@", |
| "@@@STEP_SUMMARY_TEXT@```\n[5/10] foo.c\nerror: ???\n```@@@", |
| "@@@STEP_LOG_LINE@full contents@[5/10] foo.c@@@", |
| "@@@STEP_LOG_LINE@full contents@error: ???@@@", |
| "@@@STEP_LOG_END@full contents@@@", |
| "@@@STEP_FAILURE@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "save logs.longest build steps", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "save logs.longest build steps.long", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@", |
| "@@@STEP_SUMMARY_TEXT@5.0s@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "save logs.longest build steps.medium", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@", |
| "@@@STEP_SUMMARY_TEXT@3.0s@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "save logs.longest build steps.short", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@", |
| "@@@STEP_SUMMARY_TEXT@1.0s@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "ensure-directory", |
| "--mode", |
| "0777", |
| "[START_DIR]/checkout/out/export/build_logs" |
| ], |
| "infra_step": true, |
| "name": "save logs.mkdir build_logs", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "save logs.copy", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "[START_DIR]/checkout/out/.ninja_log", |
| "[START_DIR]/checkout/out/export/build_logs/.ninja_log" |
| ], |
| "infra_step": true, |
| "name": "save logs.copy..ninja_log", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "[START_DIR]/checkout/out/failure-summary.log", |
| "[START_DIR]/checkout/out/export/build_logs/failure-summary.log" |
| ], |
| "infra_step": true, |
| "name": "save logs.copy.failure-summary.log", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "[START_DIR]/checkout/out/links.json", |
| "[START_DIR]/checkout/out/export/build_logs/links.json" |
| ], |
| "infra_step": true, |
| "name": "save logs.copy.links.json", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "gn", |
| "args", |
| "[START_DIR]/checkout/out", |
| "--list", |
| "--json" |
| ], |
| "cwd": "[START_DIR]/checkout", |
| "name": "all gn args", |
| "~followup_annotations": [ |
| "@@@STEP_LOG_LINE@json.output@[]@@@", |
| "@@@STEP_LOG_END@json.output@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "archive to cas", |
| "~followup_annotations": [ |
| "@@@SET_BUILD_PROPERTY@cas_build_digest@\"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/0\"@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "RECIPE_MODULE[recipe_engine::cas]/resources/infra.sha1", |
| "/path/to/tmp/" |
| ], |
| "infra_step": true, |
| "name": "archive to cas.read infra revision", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@", |
| "@@@STEP_LOG_LINE@infra.sha1@git_revision:mock_infra_git_revision@@@", |
| "@@@STEP_LOG_END@infra.sha1@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "archive to cas.install infra/tools/luci/cas", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "ensure-directory", |
| "--mode", |
| "0777", |
| "[START_DIR]/cipd_tool/infra/tools/luci/cas/git_revision%3Amock_infra_git_revision" |
| ], |
| "infra_step": true, |
| "name": "archive to cas.install infra/tools/luci/cas.ensure package directory", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "cipd", |
| "ensure", |
| "-root", |
| "[START_DIR]/cipd_tool/infra/tools/luci/cas/git_revision%3Amock_infra_git_revision", |
| "-ensure-file", |
| "infra/tools/luci/cas/${platform} git_revision:mock_infra_git_revision", |
| "-max-threads", |
| "0", |
| "-json-output", |
| "/path/to/tmp/json" |
| ], |
| "infra_step": true, |
| "name": "archive to cas.install infra/tools/luci/cas.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:moc\", @@@", |
| "@@@STEP_LOG_LINE@json.output@ \"package\": \"infra/tools/luci/cas/resolved-platform\"@@@", |
| "@@@STEP_LOG_LINE@json.output@ }@@@", |
| "@@@STEP_LOG_LINE@json.output@ ]@@@", |
| "@@@STEP_LOG_LINE@json.output@ }@@@", |
| "@@@STEP_LOG_LINE@json.output@}@@@", |
| "@@@STEP_LOG_END@json.output@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "[START_DIR]/cipd_tool/infra/tools/luci/cas/git_revision%3Amock_infra_git_revision/cas", |
| "archive", |
| "-cas-instance", |
| "projects/example-cas-server/instances/default_instance", |
| "-dump-digest", |
| "/path/to/tmp/", |
| "-paths-json", |
| "[[\"[START_DIR]/checkout/out\", \".\"]]" |
| ], |
| "infra_step": true, |
| "name": "archive to cas.archive", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@", |
| "@@@STEP_LINK@CAS UI@https://cas-viewer.appspot.com/projects/example-cas-server/instances/default_instance/blobs/e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/0/tree@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "[START_DIR]/cipd_tool/infra/tools/luci/cas/git_revision%3Amock_infra_git_revision/cas", |
| "download", |
| "-cas-instance", |
| "projects/example-cas-server/instances/default_instance", |
| "-digest", |
| "digest", |
| "-dir", |
| "[START_DIR]/checkout/out" |
| ], |
| "infra_step": true, |
| "name": "download from cas" |
| }, |
| { |
| "name": "$result" |
| } |
| ] |