Fix Chromebook output step and skpbench

They pull stuff of using scp, which does not perform well
if a directory does not exist.

Skpbench also needs to be updated to use new adb.

Bug: skia:
NOTRY=true
Change-Id: I1e9f2dbddaab05e1aeb4d71d97f1e6e4bfdd299a
Reviewed-on: https://skia-review.googlesource.com/59081
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
This commit is contained in:
Kevin Lubick 2017-10-12 15:15:47 -04:00 committed by Skia Commit-Bot
parent ce6cb49967
commit 02f709e416
24 changed files with 1081 additions and 226 deletions

View File

@ -811,9 +811,9 @@ Recipe for the Skia RecreateSKPs Bot.
[DEPS](/infra/bots/recipes/skpbench.py#12): [recipe\_engine/context][recipe_engine/recipe_modules/context], [recipe\_engine/file][recipe_engine/recipe_modules/file], [recipe\_engine/path][recipe_engine/recipe_modules/path], [recipe\_engine/properties][recipe_engine/recipe_modules/properties], [recipe\_engine/python][recipe_engine/recipe_modules/python], [recipe\_engine/raw\_io][recipe_engine/recipe_modules/raw_io], [recipe\_engine/step][recipe_engine/recipe_modules/step], [recipe\_engine/time][recipe_engine/recipe_modules/time], [core](#recipe_modules-core), [flavor](#recipe_modules-flavor), [run](#recipe_modules-run), [vars](#recipe_modules-vars)
&mdash; **def [RunSteps](/infra/bots/recipes/skpbench.py#101)(api):**
&mdash; **def [RunSteps](/infra/bots/recipes/skpbench.py#103)(api):**
&mdash; **def [skpbench\_steps](/infra/bots/recipes/skpbench.py#39)(api):**
&mdash; **def [skpbench\_steps](/infra/bots/recipes/skpbench.py#41)(api):**
benchmark Skia using skpbench.
### *recipes* / [swarming:examples/full](/infra/bots/recipe_modules/swarming/examples/full.py)

View File

@ -202,19 +202,6 @@
"infra_step": true,
"name": "write SVG_VERSION"
},
{
"cmd": [
"[START_DIR]/out/Release/dm",
"--some-flag"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"name": "dm"
},
{
"name": "$result",
"recipe_result": null,

View File

@ -640,7 +640,7 @@
"cmd": [
"adb.1.0.35",
"push",
"[START_DIR]/out/Debug/dm",
"[START_DIR]/out/Debug/nanobench",
"/data/local/tmp/"
],
"cwd": "[START_DIR]/skia",
@ -651,7 +651,7 @@
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "push dm"
"name": "push nanobench"
},
{
"cmd": [
@ -661,17 +661,17 @@
"--json-output",
"/path/to/tmp/json",
"copy",
"set -x; /data/local/tmp/dm --some-flag; echo $? >/data/local/tmp/rc",
"[START_DIR]/tmp/dm.sh"
"set -x; /data/local/tmp/nanobench --some-flag; echo $? >/data/local/tmp/rc",
"[START_DIR]/tmp/nanobench.sh"
],
"infra_step": true,
"name": "write dm.sh"
"name": "write nanobench.sh"
},
{
"cmd": [
"adb.1.0.35",
"push",
"[START_DIR]/tmp/dm.sh",
"[START_DIR]/tmp/nanobench.sh",
"/data/local/tmp/"
],
"cwd": "[START_DIR]/skia",
@ -682,7 +682,7 @@
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "push dm.sh"
"name": "push nanobench.sh"
},
{
"cmd": [
@ -706,9 +706,9 @@
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb.1.0.35', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb.1.0.35', 'shell', 'cat',\n bin_dir + 'rc'])))\nexcept ValueError:\n print \"Couldn't read the return code. Probably killed for OOM.\"\n sys.exit(1)\n",
"/data/local/tmp/",
"dm.sh"
"nanobench.sh"
],
"name": "dm",
"name": "nanobench",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
@ -725,23 +725,6 @@
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb.1.0.35",
"pull",
"/sdcard/revenge_of_the_skiabot/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[START_DIR]/skia",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "pull /sdcard/revenge_of_the_skiabot/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
},
{
"cmd": [
"adb.1.0.35",

View File

@ -640,7 +640,7 @@
"cmd": [
"adb.1.0.35",
"push",
"[START_DIR]/out/Debug/dm",
"[START_DIR]/out/Debug/nanobench",
"/data/local/tmp/"
],
"cwd": "[START_DIR]/skia",
@ -651,7 +651,7 @@
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "push dm"
"name": "push nanobench"
},
{
"cmd": [
@ -661,17 +661,17 @@
"--json-output",
"/path/to/tmp/json",
"copy",
"set -x; /data/local/tmp/dm --some-flag; echo $? >/data/local/tmp/rc",
"[START_DIR]/tmp/dm.sh"
"set -x; /data/local/tmp/nanobench --some-flag; echo $? >/data/local/tmp/rc",
"[START_DIR]/tmp/nanobench.sh"
],
"infra_step": true,
"name": "write dm.sh"
"name": "write nanobench.sh"
},
{
"cmd": [
"adb.1.0.35",
"push",
"[START_DIR]/tmp/dm.sh",
"[START_DIR]/tmp/nanobench.sh",
"/data/local/tmp/"
],
"cwd": "[START_DIR]/skia",
@ -682,7 +682,7 @@
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "push dm.sh"
"name": "push nanobench.sh"
},
{
"cmd": [
@ -706,9 +706,9 @@
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb.1.0.35', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb.1.0.35', 'shell', 'cat',\n bin_dir + 'rc'])))\nexcept ValueError:\n print \"Couldn't read the return code. Probably killed for OOM.\"\n sys.exit(1)\n",
"/data/local/tmp/",
"dm.sh"
"nanobench.sh"
],
"name": "dm",
"name": "nanobench",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
@ -725,23 +725,6 @@
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb.1.0.35",
"pull",
"/sdcard/revenge_of_the_skiabot/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[START_DIR]/skia",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "pull /sdcard/revenge_of_the_skiabot/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
},
{
"cmd": [
"adb.1.0.35",

View File

@ -732,12 +732,40 @@
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nprint subprocess.check_output(['scp', host, device])\n",
"[START_DIR]/out/Release/dm",
"foo@127.0.0.1:/home/chronos/user/bin/dm"
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"rmtree",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-ChromeOS-Clang-Chromebook_513C24_K01-GPU-MaliT860-arm-Release/data"
],
"infra_step": true,
"name": "scp [START_DIR]/out/Release/dm foo@127.0.0.1:/home/chronos/user/bin/dm",
"name": "rmtree data"
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"ensure-directory",
"--mode",
"0777",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-ChromeOS-Clang-Chromebook_513C24_K01-GPU-MaliT860-arm-Release/data"
],
"infra_step": true,
"name": "makedirs data"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nprint subprocess.check_output(['scp', host, device])\n",
"[START_DIR]/out/Release/nanobench",
"foo@127.0.0.1:/home/chronos/user/bin/nanobench"
],
"infra_step": true,
"name": "scp [START_DIR]/out/Release/nanobench foo@127.0.0.1:/home/chronos/user/bin/nanobench",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
@ -758,7 +786,7 @@
"foo@127.0.0.1",
"chmod",
"+x",
"/home/chronos/user/bin/dm"
"/home/chronos/user/bin/nanobench"
],
"env": {
"BUILDTYPE": "Release",
@ -767,7 +795,7 @@
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "chmod dm"
"name": "chmod nanobench"
},
{
"cmd": [
@ -777,7 +805,7 @@
"-t",
"-t",
"foo@127.0.0.1",
"/home/chronos/user/bin/dm",
"/home/chronos/user/bin/nanobench",
"--some-flag"
],
"env": {
@ -787,27 +815,7 @@
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "dm"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nsrc = sys.argv[1] + '/*'\ndest = sys.argv[2]\nprint subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)\n",
"foo@127.0.0.1:/home/chronos/user/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"infra_step": true,
"name": "scp -r foo@127.0.0.1:/home/chronos/user/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@src = sys.argv[1] + '/*'@@@",
"@@@STEP_LOG_LINE@python.inline@dest = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@print subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
"name": "nanobench"
},
{
"cmd": [

View File

@ -731,7 +731,7 @@
"cmd": [
"adb",
"push",
"[START_DIR]/out/Release/dm",
"[START_DIR]/out/Release/nanobench",
"/cache/skia/bin"
],
"cwd": "[START_DIR]/skia",
@ -742,7 +742,7 @@
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "push dm"
"name": "push nanobench"
},
{
"cmd": [
@ -752,7 +752,7 @@
"-t",
"-t",
"root@192.168.1.2",
"/cache/skia/bin/dm",
"/cache/skia/bin/nanobench",
"--some-flag"
],
"env": {
@ -761,24 +761,7 @@
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"name": "dm"
},
{
"cmd": [
"adb",
"pull",
"/cache/skia/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[START_DIR]/skia",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "pull /cache/skia/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
"name": "nanobench"
},
{
"cmd": [

View File

@ -192,7 +192,7 @@
"-u",
"RECIPE_MODULE[skia::flavor]/resources/symbolize_stack_trace.py",
"[START_DIR]",
"[START_DIR]/out/Debug/dm",
"[START_DIR]/out/Debug/nanobench",
"--some-flag"
],
"cwd": "[START_DIR]/skia",
@ -203,7 +203,7 @@
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]:[START_DIR]/clang_linux/bin",
"SKIA_OUT": "[START_DIR]/out"
},
"name": "symbolized dm"
"name": "symbolized nanobench"
},
{
"name": "$result",

View File

@ -192,7 +192,7 @@
"-u",
"RECIPE_MODULE[skia::flavor]/resources/symbolize_stack_trace.py",
"[START_DIR]",
"[START_DIR]/out/Release/dm",
"[START_DIR]/out/Release/nanobench",
"--some-flag"
],
"cwd": "[START_DIR]/skia",
@ -205,7 +205,7 @@
"SKIA_OUT": "[START_DIR]/out",
"UBSAN_OPTIONS": "symbolize=1 print_stacktrace=1"
},
"name": "symbolized dm"
"name": "symbolized nanobench"
},
{
"name": "$result",

View File

@ -192,7 +192,7 @@
"-u",
"RECIPE_MODULE[skia::flavor]/resources/symbolize_stack_trace.py",
"[START_DIR]",
"[START_DIR]/out/Release/dm",
"[START_DIR]/out/Release/nanobench",
"--some-flag"
],
"cwd": "[START_DIR]/skia",
@ -205,7 +205,7 @@
"SKIA_OUT": "[START_DIR]/out",
"UBSAN_OPTIONS": "symbolize=1 print_stacktrace=1"
},
"name": "symbolized dm"
"name": "symbolized nanobench"
},
{
"name": "$result",

View File

@ -193,7 +193,7 @@
"RECIPE_MODULE[skia::flavor]/resources/symbolize_stack_trace.py",
"[START_DIR]",
"catchsegv",
"[START_DIR]/out/Release/dm",
"[START_DIR]/out/Release/nanobench",
"--some-flag"
],
"cwd": "[CUSTOM_/_B_WORK]/skia",
@ -203,7 +203,7 @@
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"name": "symbolized dm"
"name": "symbolized nanobench"
},
{
"name": "$result",

View File

@ -0,0 +1,845 @@
[
{
"cmd": [
"python",
"-u",
"[START_DIR]/skia/bin/fetch-gn"
],
"cwd": "[START_DIR]/skia",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"LD_LIBRARY_PATH": "[START_DIR]/armhf_sysroot/lib",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "fetch-gn"
},
{
"cmd": [
"[START_DIR]/skia/bin/gn",
"gen",
"[START_DIR]/out/Release",
"--args=cc=\"[START_DIR]/clang_linux/bin/clang\" cxx=\"[START_DIR]/clang_linux/bin/clang++\" extra_asmflags=[\"--target=armv7a-linux-gnueabihf\", \"--sysroot=[START_DIR]/armhf_sysroot\", \"-march=armv7-a\", \"-mfpu=neon\", \"-mthumb\"] extra_cflags=[\"--target=armv7a-linux-gnueabihf\", \"--sysroot=[START_DIR]/armhf_sysroot\", \"-I[START_DIR]/chromebook_arm_gles/include\", \"-I[START_DIR]/armhf_sysroot/include\", \"-I[START_DIR]/armhf_sysroot/include/c++/4.8.4\", \"-I[START_DIR]/armhf_sysroot/include/c++/4.8.4/arm-linux-gnueabihf\", \"-DMESA_EGL_NO_X11_HEADERS\"] extra_ldflags=[\"--target=armv7a-linux-gnueabihf\", \"--sysroot=[START_DIR]/armhf_sysroot\", \"-B[START_DIR]/armhf_sysroot/bin\", \"-B[START_DIR]/armhf_sysroot/gcc-cross\", \"-L[START_DIR]/armhf_sysroot/gcc-cross\", \"-L[START_DIR]/armhf_sysroot/lib\", \"-L[START_DIR]/chromebook_arm_gles/lib\"] is_debug=false skia_use_egl=true skia_use_fontconfig=false skia_use_system_freetype2=false target_cpu=\"None\""
],
"cwd": "[START_DIR]/skia",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"LD_LIBRARY_PATH": "[START_DIR]/armhf_sysroot/lib",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"name": "gn gen"
},
{
"cmd": [
"ninja",
"-C",
"[START_DIR]/out/Release",
"nanobench",
"dm"
],
"cwd": "[START_DIR]/skia",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"LD_LIBRARY_PATH": "[START_DIR]/armhf_sysroot/lib",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"name": "ninja"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nSSH_MACHINE_FILE = os.path.expanduser('~/ssh_machine.json')\nwith open(SSH_MACHINE_FILE, 'r') as f:\n print f.read()\n"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "read chromeos ip",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os@@@",
"@@@STEP_LOG_LINE@python.inline@SSH_MACHINE_FILE = os.path.expanduser('~/ssh_machine.json')@@@",
"@@@STEP_LOG_LINE@python.inline@with open(SSH_MACHINE_FILE, 'r') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ print f.read()@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nprint subprocess.check_output(['scp', host, device])\n",
"file.txt",
"foo@127.0.0.1:file.txt"
],
"infra_step": true,
"name": "scp file.txt foo@127.0.0.1:file.txt",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@print subprocess.check_output(['scp', host, device])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"rmtree",
"results_dir"
],
"infra_step": true,
"name": "rmtree results_dir"
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"ensure-directory",
"--mode",
"0777",
"results_dir"
],
"infra_step": true,
"name": "makedirs results_dir"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"rm",
"-rf",
"device_results_dir"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "rm device_results_dir"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"mkdir",
"-p",
"device_results_dir"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "mkdir device_results_dir"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"mkdir",
"-p",
"/home/chronos/user/resources"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "mkdir /home/chronos/user/resources"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"sudo",
"mount",
"-i",
"-o",
"remount,exec",
"/home/chronos"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "remount /home/chronos/user/ as exec"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"rm",
"-rf",
"/home/chronos/user/bin"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "rm /home/chronos/user/bin"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"mkdir",
"-p",
"/home/chronos/user/bin"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "mkdir /home/chronos/user/bin"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nsrc = sys.argv[1] + '/*'\ndest = sys.argv[2]\nprint subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)\n",
"[START_DIR]/skia/resources",
"foo@127.0.0.1:/home/chronos/user/resources"
],
"infra_step": true,
"name": "scp -r [START_DIR]/skia/resources foo@127.0.0.1:/home/chronos/user/resources",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@src = sys.argv[1] + '/*'@@@",
"@@@STEP_LOG_LINE@python.inline@dest = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@print subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"[START_DIR]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"infra_step": true,
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"42",
"[START_DIR]/tmp/SKP_VERSION"
],
"infra_step": true,
"name": "write SKP_VERSION"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"cat",
"/home/chronos/user/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "read /home/chronos/user/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"rm",
"-f",
"/home/chronos/user/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "rm /home/chronos/user/SKP_VERSION"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"rm",
"-rf",
"/home/chronos/user/skps"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "rm /home/chronos/user/skps"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"mkdir",
"-p",
"/home/chronos/user/skps"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "mkdir /home/chronos/user/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nsrc = sys.argv[1] + '/*'\ndest = sys.argv[2]\nprint subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)\n",
"[START_DIR]/skp",
"foo@127.0.0.1:/home/chronos/user/skps"
],
"infra_step": true,
"name": "scp -r [START_DIR]/skp foo@127.0.0.1:/home/chronos/user/skps",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@src = sys.argv[1] + '/*'@@@",
"@@@STEP_LOG_LINE@python.inline@dest = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@print subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nprint subprocess.check_output(['scp', host, device])\n",
"[START_DIR]/tmp/SKP_VERSION",
"foo@127.0.0.1:/home/chronos/user/SKP_VERSION"
],
"infra_step": true,
"name": "scp [START_DIR]/tmp/SKP_VERSION foo@127.0.0.1:/home/chronos/user/SKP_VERSION",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@print subprocess.check_output(['scp', host, device])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"[START_DIR]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"infra_step": true,
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"42",
"[START_DIR]/tmp/SK_IMAGE_VERSION"
],
"infra_step": true,
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"cat",
"/home/chronos/user/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "read /home/chronos/user/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"rm",
"-f",
"/home/chronos/user/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "rm /home/chronos/user/SK_IMAGE_VERSION"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"rm",
"-rf",
"/home/chronos/user/images"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "rm /home/chronos/user/images"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"mkdir",
"-p",
"/home/chronos/user/images"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "mkdir /home/chronos/user/images"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nsrc = sys.argv[1] + '/*'\ndest = sys.argv[2]\nprint subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)\n",
"[START_DIR]/skimage",
"foo@127.0.0.1:/home/chronos/user/images"
],
"infra_step": true,
"name": "scp -r [START_DIR]/skimage foo@127.0.0.1:/home/chronos/user/images",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@src = sys.argv[1] + '/*'@@@",
"@@@STEP_LOG_LINE@python.inline@dest = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@print subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nprint subprocess.check_output(['scp', host, device])\n",
"[START_DIR]/tmp/SK_IMAGE_VERSION",
"foo@127.0.0.1:/home/chronos/user/SK_IMAGE_VERSION"
],
"infra_step": true,
"name": "scp [START_DIR]/tmp/SK_IMAGE_VERSION foo@127.0.0.1:/home/chronos/user/SK_IMAGE_VERSION",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@print subprocess.check_output(['scp', host, device])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"[START_DIR]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"infra_step": true,
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"copy",
"42",
"[START_DIR]/tmp/SVG_VERSION"
],
"infra_step": true,
"name": "write SVG_VERSION"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"cat",
"/home/chronos/user/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "read /home/chronos/user/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"rm",
"-f",
"/home/chronos/user/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "rm /home/chronos/user/SVG_VERSION"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"rm",
"-rf",
"/home/chronos/user/svgs"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "rm /home/chronos/user/svgs"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"mkdir",
"-p",
"/home/chronos/user/svgs"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "mkdir /home/chronos/user/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nsrc = sys.argv[1] + '/*'\ndest = sys.argv[2]\nprint subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)\n",
"[START_DIR]/svg",
"foo@127.0.0.1:/home/chronos/user/svgs"
],
"infra_step": true,
"name": "scp -r [START_DIR]/svg foo@127.0.0.1:/home/chronos/user/svgs",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@src = sys.argv[1] + '/*'@@@",
"@@@STEP_LOG_LINE@python.inline@dest = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@print subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nprint subprocess.check_output(['scp', host, device])\n",
"[START_DIR]/tmp/SVG_VERSION",
"foo@127.0.0.1:/home/chronos/user/SVG_VERSION"
],
"infra_step": true,
"name": "scp [START_DIR]/tmp/SVG_VERSION foo@127.0.0.1:/home/chronos/user/SVG_VERSION",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@print subprocess.check_output(['scp', host, device])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"rmtree",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"infra_step": true,
"name": "rmtree dm"
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"ensure-directory",
"--mode",
"0777",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"infra_step": true,
"name": "makedirs dm"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nprint subprocess.check_output(['scp', host, device])\n",
"[START_DIR]/out/Release/dm",
"foo@127.0.0.1:/home/chronos/user/bin/dm"
],
"infra_step": true,
"name": "scp [START_DIR]/out/Release/dm foo@127.0.0.1:/home/chronos/user/bin/dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@print subprocess.check_output(['scp', host, device])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"chmod",
"+x",
"/home/chronos/user/bin/dm"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "chmod dm"
},
{
"cmd": [
"ssh",
"-oConnectTimeout=15",
"-oBatchMode=yes",
"-t",
"-t",
"foo@127.0.0.1",
"/home/chronos/user/bin/dm",
"--some-flag"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "dm"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nsrc = sys.argv[1] + '/*'\ndest = sys.argv[2]\nprint subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)\n",
"foo@127.0.0.1:/home/chronos/user/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"infra_step": true,
"name": "scp -r foo@127.0.0.1:/home/chronos/user/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@src = sys.argv[1] + '/*'@@@",
"@@@STEP_LOG_LINE@python.inline@dest = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@print subprocess.check_output('scp -r %s %s' % (src, dest), shell=True)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -583,21 +583,6 @@
"infra_step": true,
"name": "pull_if_needed dm"
},
{
"cmd": [
"[START_DIR]/skia/platform_tools/ios/bin/ios_pull_if_needed",
"perf",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Test-iOS-Clang-iPadPro-GPU-GT7800-arm64-Debug/data"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "pull_if_needed perf"
},
{
"name": "$result",
"recipe_result": null,

View File

@ -640,7 +640,7 @@
"cmd": [
"adb.1.0.35",
"push",
"[START_DIR]/out/Debug/dm",
"[START_DIR]/out/Debug/nanobench",
"/data/local/tmp/"
],
"cwd": "[START_DIR]/skia",
@ -651,7 +651,7 @@
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "push dm"
"name": "push nanobench"
},
{
"cmd": [
@ -661,17 +661,17 @@
"--json-output",
"/path/to/tmp/json",
"copy",
"set -x; /data/local/tmp/dm --some-flag; echo $? >/data/local/tmp/rc",
"[START_DIR]/tmp/dm.sh"
"set -x; /data/local/tmp/nanobench --some-flag; echo $? >/data/local/tmp/rc",
"[START_DIR]/tmp/nanobench.sh"
],
"infra_step": true,
"name": "write dm.sh"
"name": "write nanobench.sh"
},
{
"cmd": [
"adb.1.0.35",
"push",
"[START_DIR]/tmp/dm.sh",
"[START_DIR]/tmp/nanobench.sh",
"/data/local/tmp/"
],
"cwd": "[START_DIR]/skia",
@ -682,7 +682,7 @@
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "push dm.sh"
"name": "push nanobench.sh"
},
{
"cmd": [
@ -706,9 +706,9 @@
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb.1.0.35', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb.1.0.35', 'shell', 'cat',\n bin_dir + 'rc'])))\nexcept ValueError:\n print \"Couldn't read the return code. Probably killed for OOM.\"\n sys.exit(1)\n",
"/data/local/tmp/",
"dm.sh"
"nanobench.sh"
],
"name": "dm",
"name": "nanobench",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
@ -725,23 +725,6 @@
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb.1.0.35",
"pull",
"/sdcard/revenge_of_the_skiabot/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[START_DIR]/skia",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "pull /sdcard/revenge_of_the_skiabot/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
},
{
"cmd": [
"adb.1.0.35",

View File

@ -694,7 +694,7 @@
"cmd": [
"adb.1.0.35",
"push",
"[START_DIR]/out/Debug/dm",
"[START_DIR]/out/Debug/nanobench",
"/data/local/tmp/"
],
"cwd": "[START_DIR]/skia",
@ -705,7 +705,7 @@
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "push dm"
"name": "push nanobench"
},
{
"cmd": [
@ -715,17 +715,17 @@
"--json-output",
"/path/to/tmp/json",
"copy",
"set -x; /data/local/tmp/dm --some-flag; echo $? >/data/local/tmp/rc",
"[START_DIR]/tmp/dm.sh"
"set -x; /data/local/tmp/nanobench --some-flag; echo $? >/data/local/tmp/rc",
"[START_DIR]/tmp/nanobench.sh"
],
"infra_step": true,
"name": "write dm.sh"
"name": "write nanobench.sh"
},
{
"cmd": [
"adb.1.0.35",
"push",
"[START_DIR]/tmp/dm.sh",
"[START_DIR]/tmp/nanobench.sh",
"/data/local/tmp/"
],
"cwd": "[START_DIR]/skia",
@ -736,7 +736,7 @@
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "push dm.sh"
"name": "push nanobench.sh"
},
{
"cmd": [
@ -760,9 +760,9 @@
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb.1.0.35', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb.1.0.35', 'shell', 'cat',\n bin_dir + 'rc'])))\nexcept ValueError:\n print \"Couldn't read the return code. Probably killed for OOM.\"\n sys.exit(1)\n",
"/data/local/tmp/",
"dm.sh"
"nanobench.sh"
],
"name": "dm",
"name": "nanobench",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
@ -779,23 +779,6 @@
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb.1.0.35",
"pull",
"/sdcard/revenge_of_the_skiabot/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[START_DIR]/skia",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "pull /sdcard/revenge_of_the_skiabot/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
},
{
"cmd": [
"adb.1.0.35",

View File

@ -694,7 +694,7 @@
"cmd": [
"adb.1.0.35",
"push",
"[START_DIR]/out/Debug/dm",
"[START_DIR]/out/Debug/nanobench",
"/data/local/tmp/"
],
"cwd": "[START_DIR]/skia",
@ -705,7 +705,7 @@
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "push dm"
"name": "push nanobench"
},
{
"cmd": [
@ -715,17 +715,17 @@
"--json-output",
"/path/to/tmp/json",
"copy",
"set -x; /data/local/tmp/dm --some-flag; echo $? >/data/local/tmp/rc",
"[START_DIR]/tmp/dm.sh"
"set -x; /data/local/tmp/nanobench --some-flag; echo $? >/data/local/tmp/rc",
"[START_DIR]/tmp/nanobench.sh"
],
"infra_step": true,
"name": "write dm.sh"
"name": "write nanobench.sh"
},
{
"cmd": [
"adb.1.0.35",
"push",
"[START_DIR]/tmp/dm.sh",
"[START_DIR]/tmp/nanobench.sh",
"/data/local/tmp/"
],
"cwd": "[START_DIR]/skia",
@ -736,7 +736,7 @@
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "push dm.sh"
"name": "push nanobench.sh"
},
{
"cmd": [
@ -760,9 +760,9 @@
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb.1.0.35', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb.1.0.35', 'shell', 'cat',\n bin_dir + 'rc'])))\nexcept ValueError:\n print \"Couldn't read the return code. Probably killed for OOM.\"\n sys.exit(1)\n",
"/data/local/tmp/",
"dm.sh"
"nanobench.sh"
],
"name": "dm",
"name": "nanobench",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
@ -779,23 +779,6 @@
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb.1.0.35",
"pull",
"/sdcard/revenge_of_the_skiabot/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[START_DIR]/skia",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "pull /sdcard/revenge_of_the_skiabot/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
},
{
"cmd": [
"adb.1.0.35",

View File

@ -43,11 +43,14 @@ def RunSteps(api):
api.flavor.create_clean_host_dir('results_dir')
api.flavor.create_clean_device_dir('device_results_dir')
api.flavor.install_everything()
api.flavor.step('dm', ['dm', '--some-flag'])
api.flavor.copy_directory_contents_to_host(
api.flavor.device_dirs.dm_dir, api.vars.dm_dir)
api.flavor.copy_directory_contents_to_host(
api.flavor.device_dirs.perf_data_dir, api.vars.perf_data_dir)
if 'Test' in api.properties['buildername']:
api.flavor.step('dm', ['dm', '--some-flag'])
api.flavor.copy_directory_contents_to_host(
api.flavor.device_dirs.dm_dir, api.vars.dm_dir)
elif 'Perf' in api.properties['buildername']:
api.flavor.step('nanobench', ['nanobench', '--some-flag'])
api.flavor.copy_directory_contents_to_host(
api.flavor.device_dirs.perf_data_dir, api.vars.perf_data_dir)
finally:
api.flavor.cleanup_steps()
api.run.check_failure()
@ -84,6 +87,7 @@ TEST_BUILDERS = [
'Perf-Debian9-Clang-GCE-CPU-AVX2-x86_64-Release-ASAN',
'Perf-Debian9-Clang-GCE-CPU-AVX2-x86_64-Release-UBSAN_float_cast_overflow',
'Perf-Ubuntu14-GCC-GCE-CPU-AVX2-x86_64-Release-CT_BENCH_1k_SKPs',
'Test-ChromeOS-Clang-Chromebook_513C24_K01-GPU-MaliT860-arm-Release',
'Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Debug-Coverage',
'Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Release-TSAN',
'Test-Debian9-GCC-GCE-CPU-AVX2-x86_64-Release',

View File

@ -193,6 +193,12 @@ class GNChromebookFlavorUtils(gn_flavor.GNFlavorUtils):
# Push and run either dm or nanobench
name = cmd[0]
if name == 'dm':
self.create_clean_host_dir(self.m.vars.dm_dir)
if name == 'nanobench':
self.create_clean_host_dir(self.m.vars.perf_data_dir)
app = self.m.vars.skia_out.join(self.m.vars.configuration, cmd[0])
cmd[0] = '%s/%s' % (self._bin_dir, cmd[0])

View File

@ -656,6 +656,46 @@
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"rmtree",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-ChromeOS-Clang-Chromebook_C100p-GPU-MaliT764-arm-Release/data"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "rmtree data"
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"ensure-directory",
"--mode",
"0777",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-ChromeOS-Clang-Chromebook_C100p-GPU-MaliT764-arm-Release/data"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "makedirs data"
},
{
"cmd": [
"python",

View File

@ -186,7 +186,7 @@
},
{
"cmd": [
"adb",
"adb.1.0.35",
"push",
"[START_DIR]/out/Release/skpbench",
"/data/local/tmp/"

View File

@ -186,7 +186,7 @@
},
{
"cmd": [
"adb",
"adb.1.0.35",
"push",
"[START_DIR]/out/Release/skpbench",
"/data/local/tmp/"

View File

@ -186,7 +186,7 @@
},
{
"cmd": [
"adb",
"adb.1.0.35",
"push",
"[START_DIR]/out/Release/skpbench",
"/data/local/tmp/"

View File

@ -24,6 +24,8 @@ DEPS = [
'vars',
]
ADB_BINARY = 'adb.1.0.35'
def _run(api, title, *cmd, **kwargs):
with api.context(cwd=api.vars.skia_dir):
@ -33,7 +35,7 @@ def _run(api, title, *cmd, **kwargs):
def _adb(api, title, *cmd, **kwargs):
if 'infra_step' not in kwargs:
kwargs['infra_step'] = True
return _run(api, title, 'adb', *cmd, **kwargs)
return _run(api, title, ADB_BINARY, *cmd, **kwargs)
def skpbench_steps(api):

View File

@ -740,6 +740,46 @@
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"rmtree",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "rmtree dm"
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"ensure-directory",
"--mode",
"0777",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "makedirs dm"
},
{
"cmd": [
"python",

View File

@ -740,6 +740,46 @@
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"rmtree",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "rmtree dm"
},
{
"cmd": [
"python",
"-u",
"RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
"--json-output",
"/path/to/tmp/json",
"ensure-directory",
"--mode",
"0777",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[START_DIR]/out"
},
"infra_step": true,
"name": "makedirs dm"
},
{
"cmd": [
"python",