blob: 10275f90773678039c47a0c319629a1649741653 [file] [log] [blame] [edit]
[
{
"cmd": [
"echo",
"Hello World"
],
"name": "hello"
},
{
"cmd": [
"echo",
"Why hello, there."
],
"name": "hello (2)"
},
{
"cmd": [
"mkdir",
"-p",
"something"
],
"name": "mk subdir"
},
{
"cmd": [
"bash",
"-c",
"echo Why hello, there, in a subdir."
],
"cwd": "[START_DIR]/something",
"name": "something"
},
{
"cmd": [
"bash",
"-c",
"echo what happen"
],
"name": "start_dir ignored"
},
{
"cmd": [
"bash",
"-c",
"echo Good bye, $friend."
],
"env": {
"friend": "Darth Vader"
},
"name": "goodbye"
},
{
"cmd": [
"recipes.py",
"--help"
],
"env": {
"PATH": "RECIPE_REPO[recipe_engine]:<PATH>"
},
"name": "recipes help"
},
{
"cmd": [
"bash",
"-c",
"exit 3"
],
"name": "anything is cool"
},
{
"cmd": [
"echo",
"hello"
],
"name": "hello (3)",
"~followup_annotations": [
"@@@STEP_LOG_LINE@the reason@The reason@@@",
"@@@STEP_LOG_LINE@the reason@it failed@@@",
"@@@STEP_LOG_END@the reason@@@",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [],
"name": "Just print stuff",
"~followup_annotations": [
"@@@STEP_LOG_LINE@more@More stuff@@@",
"@@@STEP_LOG_END@more@@@"
]
},
{
"cmd": [
"echo",
"goodbye"
],
"name": "goodbye (2)"
},
{
"cmd": [
"echo",
"warning"
],
"name": "warning"
},
{
"cmd": [
"echo",
"testa"
],
"name": "testa"
},
{
"cmd": [
"echo",
"testb"
],
"infra_step": true,
"name": "testb"
},
{
"cmd": [
"echo",
"cleaning",
"up",
"build"
],
"infra_step": true,
"name": "cleanup"
},
{
"cmd": [
"python",
"-c",
"import sys; print sys.argv",
"echo",
"main",
"application"
],
"name": "application"
},
{
"cmd": [
"echo",
"/path/to/tmp/json"
],
"name": "no-op",
"~followup_annotations": [
"@@@STEP_LOG_END@json.output (invalid)@@@",
"@@@STEP_LOG_LINE@json.output (exception)@No JSON object could be decoded@@@",
"@@@STEP_LOG_END@json.output (exception)@@@"
]
},
{
"cmd": [],
"name": "RECIPE CRASH (Uncaught exception)",
"~followup_annotations": [
"@@@STEP_EXCEPTION@@@",
"The recipe has crashed at point 'Uncaught exception'!",
"",
"Traceback (most recent call last):",
" File \"RECIPE_REPO[recipe_engine]/recipe_engine/internal/engine.py\", line 365, in run_steps",
" raw_result = recipe_obj.run_steps(api, engine)",
" File \"RECIPE_REPO[recipe_engine]/recipe_engine/internal/recipe_deps.py\", line 714, in run_steps",
" properties_def, api=api)",
" File \"RECIPE_REPO[recipe_engine]/recipe_engine/internal/property_invoker.py\", line 89, in invoke_with_properties",
" arg_names, **additional_args)",
" File \"RECIPE_REPO[recipe_engine]/recipe_engine/internal/property_invoker.py\", line 52, in _invoke_with_properties",
" return callable_obj(*props, **additional_args)",
" File \"RECIPE_REPO[recipe_engine]/recipe_modules/step/examples/full.py\", line 132, in RunSteps",
" _ = result.json.outpurt",
" File \"RECIPE_REPO[recipe_engine]/recipe_engine/step_data.py\", line 25, in __getattr__",
" self._step_name, self._namespace, name))",
"AttributeError: StepData('no-op').json has no attribute 'outpurt'."
]
},
{
"failure": {
"humanReason": "Uncaught Exception: AttributeError(\"StepData('no-op').json has no attribute 'outpurt'.\",)"
},
"name": "$result"
}
]