da11774fcc
An error from addr2line (e.g. unknown binary type) can truncate the output, hiding the remainder of the stack trace. Instead print the original line. Change-Id: I563aae4333a79a17560378e399e79b60c79f9ac7 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261288 Commit-Queue: Kevin Lubick <kjlubick@google.com> Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com> Reviewed-by: Kevin Lubick <kjlubick@google.com>
301 lines
10 KiB
JSON
301 lines
10 KiB
JSON
[
|
|
{
|
|
"cmd": [
|
|
"vpython",
|
|
"-u",
|
|
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
|
|
"--json-output",
|
|
"/path/to/tmp/json",
|
|
"ensure-directory",
|
|
"--mode",
|
|
"0777",
|
|
"[START_DIR]/tmp"
|
|
],
|
|
"infra_step": true,
|
|
"name": "makedirs tmp_dir"
|
|
},
|
|
{
|
|
"cmd": [
|
|
"python",
|
|
"-u",
|
|
"import os\nprint os.environ.get('SWARMING_BOT_ID', '')\n"
|
|
],
|
|
"name": "get swarming bot id",
|
|
"~followup_annotations": [
|
|
"@@@STEP_LOG_LINE@python.inline@import os@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_BOT_ID', '')@@@",
|
|
"@@@STEP_LOG_END@python.inline@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"/opt/infra-android/tools/adb",
|
|
"shell",
|
|
"mkdir",
|
|
"-p",
|
|
"/sdcard/revenge_of_the_skiabot/resources"
|
|
],
|
|
"cwd": "[START_DIR]/skia",
|
|
"env": {
|
|
"ADB_VENDOR_KEYS": "/home/chrome-bot/.android/chrome_infrastructure_adbkey",
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
|
},
|
|
"infra_step": true,
|
|
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
|
|
},
|
|
{
|
|
"cmd": [],
|
|
"name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
|
|
"~followup_annotations": [
|
|
"@@@STEP_EXCEPTION@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"vpython",
|
|
"-u",
|
|
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
|
|
"--json-output",
|
|
"/path/to/tmp/json",
|
|
"listdir",
|
|
"[START_DIR]/skia/resources",
|
|
"--recursive"
|
|
],
|
|
"infra_step": true,
|
|
"name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources.list [START_DIR]/skia/resources",
|
|
"~followup_annotations": [
|
|
"@@@STEP_NEST_LEVEL@1@@@",
|
|
"@@@STEP_LOG_LINE@listdir@[START_DIR]/skia/resources/.file3@@@",
|
|
"@@@STEP_LOG_LINE@listdir@[START_DIR]/skia/resources/.ignore/file4@@@",
|
|
"@@@STEP_LOG_LINE@listdir@[START_DIR]/skia/resources/file1@@@",
|
|
"@@@STEP_LOG_LINE@listdir@[START_DIR]/skia/resources/subdir/file2@@@",
|
|
"@@@STEP_LOG_END@listdir@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"/opt/infra-android/tools/adb",
|
|
"push",
|
|
"[START_DIR]/skia/resources/.file3",
|
|
"/sdcard/revenge_of_the_skiabot/resources/.file3"
|
|
],
|
|
"cwd": "[START_DIR]/skia",
|
|
"env": {
|
|
"ADB_VENDOR_KEYS": "/home/chrome-bot/.android/chrome_infrastructure_adbkey",
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
|
},
|
|
"infra_step": true,
|
|
"name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources.push [START_DIR]/skia/resources/.file3",
|
|
"~followup_annotations": [
|
|
"@@@STEP_NEST_LEVEL@1@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"/opt/infra-android/tools/adb",
|
|
"push",
|
|
"[START_DIR]/skia/resources/file1",
|
|
"/sdcard/revenge_of_the_skiabot/resources/file1"
|
|
],
|
|
"cwd": "[START_DIR]/skia",
|
|
"env": {
|
|
"ADB_VENDOR_KEYS": "/home/chrome-bot/.android/chrome_infrastructure_adbkey",
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
|
},
|
|
"infra_step": true,
|
|
"name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources.push [START_DIR]/skia/resources/file1",
|
|
"~followup_annotations": [
|
|
"@@@STEP_NEST_LEVEL@1@@@",
|
|
"@@@STEP_EXCEPTION@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"/opt/infra-android/tools/adb",
|
|
"kill-server"
|
|
],
|
|
"cwd": "[START_DIR]/skia",
|
|
"env": {
|
|
"ADB_VENDOR_KEYS": "/home/chrome-bot/.android/chrome_infrastructure_adbkey",
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
|
},
|
|
"infra_step": true,
|
|
"name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources.kill adb server after failure of 'push [START_DIR]/skia/resources/file1' (attempt 1)",
|
|
"timeout": 30,
|
|
"~followup_annotations": [
|
|
"@@@STEP_NEST_LEVEL@1@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"/opt/infra-android/tools/adb",
|
|
"wait-for-device"
|
|
],
|
|
"cwd": "[START_DIR]/skia",
|
|
"env": {
|
|
"ADB_VENDOR_KEYS": "/home/chrome-bot/.android/chrome_infrastructure_adbkey",
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
|
},
|
|
"infra_step": true,
|
|
"name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources.wait for device after failure of 'push [START_DIR]/skia/resources/file1' (attempt 1)",
|
|
"timeout": 180,
|
|
"~followup_annotations": [
|
|
"@@@STEP_NEST_LEVEL@1@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"/opt/infra-android/tools/adb",
|
|
"push",
|
|
"[START_DIR]/skia/resources/file1",
|
|
"/sdcard/revenge_of_the_skiabot/resources/file1"
|
|
],
|
|
"cwd": "[START_DIR]/skia",
|
|
"env": {
|
|
"ADB_VENDOR_KEYS": "/home/chrome-bot/.android/chrome_infrastructure_adbkey",
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
|
},
|
|
"infra_step": true,
|
|
"name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources.push [START_DIR]/skia/resources/file1 (attempt 2)",
|
|
"~followup_annotations": [
|
|
"@@@STEP_NEST_LEVEL@1@@@",
|
|
"@@@STEP_EXCEPTION@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"/opt/infra-android/tools/adb",
|
|
"kill-server"
|
|
],
|
|
"cwd": "[START_DIR]/skia",
|
|
"env": {
|
|
"ADB_VENDOR_KEYS": "/home/chrome-bot/.android/chrome_infrastructure_adbkey",
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
|
},
|
|
"infra_step": true,
|
|
"name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources.kill adb server after failure of 'push [START_DIR]/skia/resources/file1' (attempt 2)",
|
|
"timeout": 30,
|
|
"~followup_annotations": [
|
|
"@@@STEP_NEST_LEVEL@1@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"/opt/infra-android/tools/adb",
|
|
"wait-for-device"
|
|
],
|
|
"cwd": "[START_DIR]/skia",
|
|
"env": {
|
|
"ADB_VENDOR_KEYS": "/home/chrome-bot/.android/chrome_infrastructure_adbkey",
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
|
},
|
|
"infra_step": true,
|
|
"name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources.wait for device after failure of 'push [START_DIR]/skia/resources/file1' (attempt 2)",
|
|
"timeout": 180,
|
|
"~followup_annotations": [
|
|
"@@@STEP_NEST_LEVEL@1@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"/opt/infra-android/tools/adb",
|
|
"push",
|
|
"[START_DIR]/skia/resources/file1",
|
|
"/sdcard/revenge_of_the_skiabot/resources/file1"
|
|
],
|
|
"cwd": "[START_DIR]/skia",
|
|
"env": {
|
|
"ADB_VENDOR_KEYS": "/home/chrome-bot/.android/chrome_infrastructure_adbkey",
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
|
},
|
|
"infra_step": true,
|
|
"name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources.push [START_DIR]/skia/resources/file1 (attempt 3)",
|
|
"~followup_annotations": [
|
|
"@@@STEP_NEST_LEVEL@1@@@",
|
|
"@@@STEP_EXCEPTION@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"python",
|
|
"-u",
|
|
"\nimport os\nimport subprocess\nimport sys\nout = sys.argv[1]\nlog = subprocess.check_output(['/opt/infra-android/tools/adb', 'logcat', '-d'])\nfor line in log.split('\\n'):\n tokens = line.split()\n if len(tokens) == 11 and tokens[-7] == 'F' and tokens[-3] == 'pc':\n addr, path = tokens[-2:]\n local = os.path.join(out, os.path.basename(path))\n if os.path.exists(local):\n try:\n sym = subprocess.check_output(['addr2line', '-Cfpe', local, addr])\n line = line.replace(addr, addr + ' ' + sym.strip())\n except subprocess.CalledProcessError:\n pass\n print line\n",
|
|
"[START_DIR]/build"
|
|
],
|
|
"env": {
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
|
},
|
|
"infra_step": true,
|
|
"name": "dump log",
|
|
"timeout": 300,
|
|
"~followup_annotations": [
|
|
"@@@STEP_LOG_LINE@python.inline@@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@import os@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@out = sys.argv[1]@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@log = subprocess.check_output(['/opt/infra-android/tools/adb', 'logcat', '-d'])@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@for line in log.split('\\n'):@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ tokens = line.split()@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ if len(tokens) == 11 and tokens[-7] == 'F' and tokens[-3] == 'pc':@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ addr, path = tokens[-2:]@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ local = os.path.join(out, os.path.basename(path))@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(local):@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ sym = subprocess.check_output(['addr2line', '-Cfpe', local, addr])@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ line = line.replace(addr, addr + ' ' + sym.strip())@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ except subprocess.CalledProcessError:@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ pass@@@",
|
|
"@@@STEP_LOG_LINE@python.inline@ print line@@@",
|
|
"@@@STEP_LOG_END@python.inline@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"vpython",
|
|
"-u",
|
|
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
|
|
"--json-output",
|
|
"/path/to/tmp/json",
|
|
"copy",
|
|
" ",
|
|
"/home/chrome-bot/build123-m2--device5.force_quarantine"
|
|
],
|
|
"infra_step": true,
|
|
"name": "Quarantining Bot",
|
|
"~followup_annotations": [
|
|
"@@@STEP_LOG_LINE@build123-m2--device5.force_quarantine@ @@@",
|
|
"@@@STEP_LOG_END@build123-m2--device5.force_quarantine@@@"
|
|
]
|
|
},
|
|
{
|
|
"cmd": [
|
|
"/opt/infra-android/tools/adb",
|
|
"kill-server"
|
|
],
|
|
"cwd": "[START_DIR]/skia",
|
|
"env": {
|
|
"ADB_VENDOR_KEYS": "/home/chrome-bot/.android/chrome_infrastructure_adbkey",
|
|
"CHROME_HEADLESS": "1",
|
|
"PATH": "<PATH>:RECIPE_REPO[depot_tools]"
|
|
},
|
|
"infra_step": true,
|
|
"name": "kill adb server"
|
|
},
|
|
{
|
|
"failure": {
|
|
"humanReason": "Infra Failure: Step('push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources.push [START_DIR]/skia/resources/file1 (attempt 3)') (retcode: 1)"
|
|
},
|
|
"name": "$result"
|
|
}
|
|
] |