| [ |
| { |
| "cmd": [], |
| "name": "get steps from programs", |
| "~followup_annotations": [ |
| "@@@STEP_SUMMARY_TEXT@composite@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "get steps from programs.timeout 10s", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-m", |
| "pw_cli", |
| "--directory", |
| "[START_DIR]/checkout", |
| "--loglevel", |
| "debug", |
| "presubmit", |
| "--output-directory", |
| "[START_DIR]/checkout/p", |
| "--only-list-steps", |
| "--step", |
| "composite", |
| "--full" |
| ], |
| "luci_context": { |
| "deadline": { |
| "grace_period": 30.0, |
| "soft_deadline": 1337000014.5 |
| } |
| }, |
| "name": "get steps from programs.get steps", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@", |
| "@@@STEP_LOG_LINE@json.output@[@@@", |
| "@@@STEP_LOG_LINE@json.output@ {@@@", |
| "@@@STEP_LOG_LINE@json.output@ \"name\": \"composite\",@@@", |
| "@@@STEP_LOG_LINE@json.output@ \"substeps\": [@@@", |
| "@@@STEP_LOG_LINE@json.output@ \"substep1\",@@@", |
| "@@@STEP_LOG_LINE@json.output@ \"substep2\",@@@", |
| "@@@STEP_LOG_LINE@json.output@ \"substep3\"@@@", |
| "@@@STEP_LOG_LINE@json.output@ ]@@@", |
| "@@@STEP_LOG_LINE@json.output@ }@@@", |
| "@@@STEP_LOG_LINE@json.output@]@@@", |
| "@@@STEP_LOG_END@json.output@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "[{\"name\": \"composite\", \"substeps\": [\"substep1\", \"substep2\", \"substep3\"]}]", |
| "[START_DIR]/checkout/p/list_steps_file.json" |
| ], |
| "infra_step": true, |
| "name": "get steps from programs.write list steps file", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@", |
| "@@@STEP_LOG_LINE@list_steps_file.json@[{\"name\": \"composite\", \"substeps\": [\"substep1\", \"substep2\", \"substep3\"]}]@@@", |
| "@@@STEP_LOG_END@list_steps_file.json@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "composite", |
| "~followup_annotations": [ |
| "@@@STEP_LINK@description@https://url@@@", |
| "@@@STEP_EXCEPTION@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "composite.timeout 10s", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-m", |
| "pw_cli", |
| "--directory", |
| "[START_DIR]/checkout", |
| "--debug-log", |
| "/path/to/tmp/", |
| "presubmit", |
| "--output-directory", |
| "[START_DIR]/checkout/p", |
| "--list-steps-file", |
| "[START_DIR]/checkout/p/list_steps_file.json", |
| "--step", |
| "composite", |
| "--override-gn-arg", |
| "foo=\"bar\"", |
| "--full", |
| "--substep", |
| "substep1" |
| ], |
| "luci_context": { |
| "deadline": { |
| "grace_period": 30.0, |
| "soft_deadline": 1337000017.5 |
| } |
| }, |
| "name": "composite.substep1", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@", |
| "@@@STEP_LOG_END@raw_io.output_text[debug.log]@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "composite.timeout 10s (2)", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-m", |
| "pw_cli", |
| "--directory", |
| "[START_DIR]/checkout", |
| "--debug-log", |
| "/path/to/tmp/", |
| "presubmit", |
| "--output-directory", |
| "[START_DIR]/checkout/p", |
| "--list-steps-file", |
| "[START_DIR]/checkout/p/list_steps_file.json", |
| "--step", |
| "composite", |
| "--override-gn-arg", |
| "foo=\"bar\"", |
| "--full", |
| "--full", |
| "--substep", |
| "substep2" |
| ], |
| "luci_context": { |
| "deadline": { |
| "grace_period": 30.0, |
| "soft_deadline": 1337000020.5 |
| } |
| }, |
| "name": "composite.substep2", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@", |
| "@@@STEP_LOG_END@raw_io.output_text[debug.log]@@@", |
| "@@@STEP_FAILURE@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "ensure-directory", |
| "--mode", |
| "0777", |
| "[START_DIR]/checkout/p/composite/export" |
| ], |
| "infra_step": true, |
| "name": "composite.mkdir export", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "composite.logs", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "composite.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/p/composite", |
| "**/pip_install_log.txt", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.logs.glob.**/pip_install_log.txt", |
| "~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/p/composite", |
| "*.bat", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.logs.glob.*.bat", |
| "~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/p/composite", |
| "*.compdb", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.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/p/composite", |
| "*.gn", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.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/p/composite", |
| "*.graph", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.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/p/composite", |
| "*.json", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.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/p/composite", |
| "*.log", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.logs.glob.*.log", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@3@@@", |
| "@@@STEP_LOG_LINE@glob@[START_DIR]/checkout/p/composite/.ninja_log@@@", |
| "@@@STEP_LOG_LINE@glob@[START_DIR]/checkout/p/composite/coverage_reports/foo.tar.gz@@@", |
| "@@@STEP_LOG_LINE@glob@[START_DIR]/checkout/p/composite/failure-summary.log@@@", |
| "@@@STEP_LOG_LINE@glob@[START_DIR]/checkout/p/composite/links.json@@@", |
| "@@@STEP_LOG_LINE@glob@[START_DIR]/checkout/p/composite/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/p/composite", |
| "*.sh", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.logs.glob.*.sh", |
| "~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/p/composite", |
| "*.txt", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.logs.glob.*.txt", |
| "~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/p/composite", |
| "*/*.cfg", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.logs.glob.*/*.cfg", |
| "~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/p/composite", |
| "*/*.ensure", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.logs.glob.*/*.ensure", |
| "~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/p/composite", |
| "*/*.json", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.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/p/composite", |
| "*/*.log", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.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", |
| "glob", |
| "[START_DIR]/checkout/p/composite", |
| "*/*.txt", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.logs.glob.*/*.txt", |
| "~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/p/composite", |
| "*_log", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.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", |
| "glob", |
| "[START_DIR]/checkout/p/composite", |
| "coverage_reports/*.tar.gz", |
| "--hidden" |
| ], |
| "infra_step": true, |
| "name": "composite.logs.glob.coverage_reports/*.tar.gz", |
| "~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/p/composite/.ninja_log", |
| "/path/to/tmp/" |
| ], |
| "infra_step": true, |
| "name": "composite.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/p/composite/coverage_reports/foo.tar.gz", |
| "/path/to/tmp/" |
| ], |
| "infra_step": true, |
| "name": "composite.logs.foo.tar.gz", |
| "~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/p/composite/failure-summary.log", |
| "/path/to/tmp/" |
| ], |
| "infra_step": true, |
| "name": "composite.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/p/composite/links.json", |
| "/path/to/tmp/" |
| ], |
| "infra_step": true, |
| "name": "composite.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": "composite.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": "composite.longest build steps", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "composite.longest build steps.long", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@", |
| "@@@STEP_SUMMARY_TEXT@5.0s@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "composite.longest build steps.medium", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@", |
| "@@@STEP_SUMMARY_TEXT@3.0s@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "composite.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/p/composite/export/build_logs" |
| ], |
| "infra_step": true, |
| "name": "composite.mkdir build_logs", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@" |
| ] |
| }, |
| { |
| "cmd": [], |
| "name": "composite.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/p/composite/.ninja_log", |
| "[START_DIR]/checkout/p/composite/export/build_logs/.ninja_log" |
| ], |
| "infra_step": true, |
| "name": "composite.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/p/composite/coverage_reports/foo.tar.gz", |
| "[START_DIR]/checkout/p/composite/export/build_logs/foo.tar.gz" |
| ], |
| "infra_step": true, |
| "name": "composite.copy.foo.tar.gz", |
| "~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/p/composite/failure-summary.log", |
| "[START_DIR]/checkout/p/composite/export/build_logs/failure-summary.log" |
| ], |
| "infra_step": true, |
| "name": "composite.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/p/composite/links.json", |
| "[START_DIR]/checkout/p/composite/export/build_logs/links.json" |
| ], |
| "infra_step": true, |
| "name": "composite.copy.links.json", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@2@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "vpython3", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "listdir", |
| "[START_DIR]/checkout/p/composite", |
| "--recursive" |
| ], |
| "infra_step": true, |
| "name": "composite.ls out", |
| "~followup_annotations": [ |
| "@@@STEP_NEST_LEVEL@1@@@", |
| "@@@STEP_LOG_END@listdir@@@" |
| ] |
| }, |
| { |
| "failure": { |
| "failure": {}, |
| "humanReason": "1 out of 5 aggregated steps failed: Step('composite.substep2') (retcode: 1)" |
| }, |
| "name": "$result" |
| } |
| ] |