| [ | |
| { | |
| "cmd": [], | |
| "name": "Initialize logs" | |
| }, | |
| { | |
| "cmd": [ | |
| "vpython3", | |
| "-u", | |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", | |
| "--json-output", | |
| "/path/to/tmp/json", | |
| "ensure-directory", | |
| "--mode", | |
| "0777", | |
| "[CLEANUP]/flutter_logs_dir" | |
| ], | |
| "infra_step": true, | |
| "name": "Initialize logs.Ensure [CLEANUP]/flutter_logs_dir", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "vpython3", | |
| "-u", | |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", | |
| "--json-output", | |
| "/path/to/tmp/json", | |
| "copy", | |
| "", | |
| "[CLEANUP]/flutter_logs_dir/noop.txt" | |
| ], | |
| "infra_step": true, | |
| "name": "Initialize logs.Write noop file", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "process logs" | |
| }, | |
| { | |
| "cmd": [ | |
| "python3", | |
| "-u", | |
| "RECIPE_MODULE[depot_tools::gsutil]/resources/gsutil_smart_retry.py", | |
| "--", | |
| "RECIPE_REPO[depot_tools]/gsutil.py", | |
| "-m", | |
| "----", | |
| "cp", | |
| "-r", | |
| "[CLEANUP]/flutter_logs_dir", | |
| "gs://flutter_logs/flutter/00000000-0000-0000-0000-000000001337/mytaskname/00000000-0000-0000-0000-000000001337" | |
| ], | |
| "infra_step": true, | |
| "name": "process logs.gsutil upload logs 00000000-0000-0000-0000-000000001337", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@", | |
| "@@@STEP_LINK@archive logs@https://console.cloud.google.com/storage/browser/flutter_logs/flutter/00000000-0000-0000-0000-000000001337/mytaskname/00000000-0000-0000-0000-000000001337@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "vpython3", | |
| "-u", | |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", | |
| "--json-output", | |
| "/path/to/tmp/json", | |
| "glob", | |
| "[CLEANUP]/flutter_logs_dir", | |
| "*" | |
| ], | |
| "infra_step": true, | |
| "name": "process logs.logs", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@", | |
| "@@@STEP_LOG_LINE@glob@[CLEANUP]/flutter_logs_dir/a.txt@@@", | |
| "@@@STEP_LOG_END@glob@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "log links", | |
| "~followup_annotations": [ | |
| "@@@STEP_LINK@myfile.txt@https://storage.googleapis.com/flutter_logs/flutter/00000000-0000-0000-0000-000000001337/mytaskname/00000000-0000-0000-0000-000000001337/myfile.txt@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "vpython3", | |
| "-u", | |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", | |
| "--json-output", | |
| "/path/to/tmp/json", | |
| "listdir", | |
| "[CLEANUP]/flutter_logs_dir", | |
| "--recursive" | |
| ], | |
| "infra_step": true, | |
| "name": "log links.List logs path", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@", | |
| "@@@STEP_LOG_LINE@listdir@[CLEANUP]/flutter_logs_dir/myfile.txt@@@", | |
| "@@@STEP_LOG_END@listdir@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "store metrics" | |
| }, | |
| { | |
| "cmd": [ | |
| "python3", | |
| "-u", | |
| "RECIPE_MODULE[depot_tools::gsutil]/resources/gsutil_smart_retry.py", | |
| "--", | |
| "RECIPE_REPO[depot_tools]/gsutil.py", | |
| "-m", | |
| "----", | |
| "cp", | |
| "-r", | |
| "[CLEANUP]/flutter_logs_dir", | |
| "gs://flutter_logs/flutter/hash/taskname/00000000-0000-0000-0000-00000000133a" | |
| ], | |
| "infra_step": true, | |
| "name": "store metrics.gsutil upload logs hash", | |
| "~followup_annotations": [ | |
| "@@@STEP_NEST_LEVEL@1@@@", | |
| "@@@STEP_LINK@archive logs@https://console.cloud.google.com/storage/browser/flutter_logs/flutter/hash/taskname/00000000-0000-0000-0000-00000000133a@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [], | |
| "name": "store metrics (2)" | |
| }, | |
| { | |
| "cmd": [ | |
| "vpython3", | |
| "-u", | |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", | |
| "--json-output", | |
| "/path/to/tmp/json", | |
| "copy", | |
| "{\"a\": \"b\"}", | |
| "[CLEANUP]/flutter_logs_dir/errors.log" | |
| ], | |
| "infra_step": true, | |
| "name": "write file", | |
| "~followup_annotations": [ | |
| "@@@STEP_LOG_LINE@errors.log@{\"a\": \"b\"}@@@", | |
| "@@@STEP_LOG_END@errors.log@@@" | |
| ] | |
| }, | |
| { | |
| "cmd": [ | |
| "vpython3", | |
| "-u", | |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", | |
| "--json-output", | |
| "/path/to/tmp/json", | |
| "copy", | |
| "[CLEANUP]/flutter_logs_dir/errors.log", | |
| "/path/to/tmp/" | |
| ], | |
| "infra_step": true, | |
| "name": "Read log file", | |
| "~followup_annotations": [ | |
| "@@@STEP_LOG_END@errors.log@@@" | |
| ] | |
| }, | |
| { | |
| "name": "$result" | |
| } | |
| ] |