[ { "cmd": [ "vpython", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", "/path/to/tmp/json", "glob", "[START_DIR]/test", "*.png" ], "infra_step": true, "name": "find .png images", "~followup_annotations": [ "@@@STEP_LOG_LINE@glob@[START_DIR]/test/someimage.png@@@", "@@@STEP_LOG_END@glob@@@" ] }, { "cmd": [ "gsutil", "-m", "cp", "[START_DIR]/test/*.png", "gs://skia-infra-gm/dm-images-v1" ], "name": "upload .png images", "~followup_annotations": [ "@@@STEP_FAILURE@@@" ] }, { "cmd": [ "gsutil", "-m", "cp", "[START_DIR]/test/*.png", "gs://skia-infra-gm/dm-images-v1" ], "name": "upload .png images (attempt 2)", "~followup_annotations": [ "@@@STEP_FAILURE@@@" ] }, { "cmd": [ "gsutil", "-m", "cp", "[START_DIR]/test/*.png", "gs://skia-infra-gm/dm-images-v1" ], "name": "upload .png images (attempt 3)", "~followup_annotations": [ "@@@STEP_FAILURE@@@" ] }, { "cmd": [ "gsutil", "-m", "cp", "[START_DIR]/test/*.png", "gs://skia-infra-gm/dm-images-v1" ], "name": "upload .png images (attempt 4)", "~followup_annotations": [ "@@@STEP_FAILURE@@@" ] }, { "cmd": [ "gsutil", "-m", "cp", "[START_DIR]/test/*.png", "gs://skia-infra-gm/dm-images-v1" ], "name": "upload .png images (attempt 5)", "~followup_annotations": [ "@@@STEP_FAILURE@@@" ] }, { "failure": { "failure": {}, "humanReason": "Step('upload .png images (attempt 5)') (retcode: 1)" }, "name": "$result" } ]