GN: remove old Android recipe code.

All the Android builders, testers, and perfers are on gn_android_flavor now.

Not as scary as it looks... all the big line count changes are deletes.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2352653002

Review-Url: https://codereview.chromium.org/2352653002
This commit is contained in:
mtklein 2016-09-19 07:26:41 -07:00 committed by Commit bot
parent 8716a8ae94
commit 122fac3061
48 changed files with 7847 additions and 18783 deletions

View File

@ -1,349 +0,0 @@
# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# pylint: disable=W0201
import copy
import default_flavor
"""Android flavor utils, used for building for and running tests on Android."""
def get_device(api):
builder_cfg = api.builder_name_schema.DictForBuilderName(
api.vars.builder_name)
if 'Android' in builder_cfg.get('extra_config', ''):
# Compile bots.
if 'NoNeon' in builder_cfg['extra_config']:
return 'arm_v7'
return {
'Arm64': 'arm64',
'x86': 'x86',
'x86_64': 'x86_64',
'Mips': 'mips',
'Mips64': 'mips64',
'MipsDSP2': 'mips_dsp2',
}.get(builder_cfg['target_arch'], 'arm_v7_neon')
else:
# Test/Perf bots.
return {
'AndroidOne': 'arm_v7_neon',
'GalaxyS3': 'arm_v7_neon',
'GalaxyS4': 'arm_v7_neon',
'GalaxyS7': 'arm64',
'NVIDIA_Shield': 'arm64',
'Nexus10': 'arm_v7_neon',
'Nexus5': 'arm_v7_neon',
'Nexus6': 'arm_v7_neon',
'Nexus6p': 'arm64',
'Nexus7': 'arm_v7_neon',
'Nexus7v2': 'arm_v7_neon',
'Nexus9': 'arm64',
'NexusPlayer': 'x86',
}[builder_cfg['model']]
class _ADBWrapper(object):
"""Wrapper for the ADB recipe module.
The ADB recipe module looks for the ADB binary at a path we don't have checked
out on our bots. This wrapper ensures that we set a custom ADB path before
attempting to use the module.
"""
def __init__(self, m, path_to_adb, serial_args, android_flavor):
self.m = m
self.m.adb.set_adb_path(path_to_adb)
self._has_root = False # This is set in install().
self._serial_args = serial_args
self._wait_count = 0
self._android_flavor = android_flavor
def wait_for_device(self):
"""Run 'adb wait-for-device'."""
self._wait_count += 1
cmd = [
self._android_flavor.android_bin.join('adb_wait_for_device')
] + self._serial_args
self.m.run(
self.m.step,
name='wait for device (%d)' % self._wait_count,
cmd=cmd,
env=self._android_flavor._default_env,
infra_step=True)
cmd = [
self._android_flavor.android_bin.join('adb_wait_for_charge'),
] + self._serial_args
self.m.run(
self.m.step,
name='wait for charge (%d)' % self._wait_count,
cmd=cmd,
env=self._android_flavor._default_env,
infra_step=True)
def maybe_wait_for_device(self):
"""Run 'adb wait-for-device' if it hasn't already been run."""
if self._wait_count == 0:
self.wait_for_device()
def __call__(self, *args, **kwargs):
self.maybe_wait_for_device()
return self.m.run(self.m.adb, *args, **kwargs)
class AndroidFlavorUtils(default_flavor.DefaultFlavorUtils):
def __init__(self, m):
super(AndroidFlavorUtils, self).__init__(m)
self.device = get_device(m)
self.android_bin = self.m.vars.skia_dir.join(
'platform_tools', 'android', 'bin')
self._android_sdk_root = self.m.vars.slave_dir.join(
'android_sdk', 'android-sdk')
self.serial = None
self.serial_args = []
try:
path_to_adb = self.m.step(
'which adb',
cmd=['which', 'adb'],
stdout=self.m.raw_io.output(),
infra_step=True).stdout.rstrip()
except self.m.step.StepFailure:
path_to_adb = self.m.path.join(self._android_sdk_root,
'platform-tools', 'adb')
self._adb = _ADBWrapper(
self.m, path_to_adb, self.serial_args, self)
self._default_env = {'ANDROID_SDK_ROOT': self._android_sdk_root,
'ANDROID_HOME': self._android_sdk_root,
'SKIA_ANDROID_VERBOSE_SETUP': 1}
def step(self, name, cmd, env=None, **kwargs):
self._adb.maybe_wait_for_device()
args = [
self.android_bin.join('android_run_skia'),
'--verbose',
'--logcat',
'-d', self.device,
] + self.serial_args + [
'-t', self.m.vars.configuration,
]
env = dict(env or {})
env.update(self._default_env)
return self.m.run(self.m.step, name=name, cmd=args + cmd,
env=env, **kwargs)
def compile(self, target, **kwargs):
"""Build the given target."""
env = kwargs.pop('env', {})
env.update(dict(self._default_env))
ccache = self.m.run.ccache()
if ccache:
env['ANDROID_MAKE_CCACHE'] = ccache
cmd = [self.android_bin.join('android_ninja'), target, '-d', self.device]
if 'Clang' in self.m.vars.builder_name:
cmd.append('--clang')
if 'GCC' in self.m.vars.builder_name:
cmd.append('--gcc')
if 'Vulkan' in self.m.vars.builder_name:
cmd.append('--vulkan')
self.m.run(self.m.step, 'build %s' % target, cmd=cmd,
env=env, cwd=self.m.path['checkout'], **kwargs)
def device_path_join(self, *args):
"""Like os.path.join(), but for paths on a connected Android device."""
return '/'.join(args)
def device_path_exists(self, path):
"""Like os.path.exists(), but for paths on a connected device."""
exists_str = 'FILE_EXISTS'
return exists_str in self._adb(
name='exists %s' % self.m.path.basename(path),
serial=self.serial,
cmd=['shell', 'if', '[', '-e', path, '];',
'then', 'echo', exists_str + ';', 'fi'],
stdout=self.m.raw_io.output(),
infra_step=True
).stdout
def _remove_device_dir(self, path):
"""Remove the directory on the device."""
self._adb(name='rmdir %s' % self.m.path.basename(path),
serial=self.serial,
cmd=['shell', 'rm', '-r', path],
infra_step=True)
# Sometimes the removal fails silently. Verify that it worked.
if self.device_path_exists(path):
raise Exception('Failed to remove %s!' % path) # pragma: no cover
def _create_device_dir(self, path):
"""Create the directory on the device."""
self._adb(name='mkdir %s' % self.m.path.basename(path),
serial=self.serial,
cmd=['shell', 'mkdir', '-p', path],
infra_step=True)
def copy_directory_contents_to_device(self, host_dir, device_dir):
"""Like shutil.copytree(), but for copying to a connected device."""
self.m.run(
self.m.step,
name='push %s' % self.m.path.basename(host_dir),
cmd=[
self.android_bin.join('adb_push_if_needed'), '--verbose',
] + self.serial_args + [
host_dir, device_dir,
],
env=self._default_env,
infra_step=True)
def copy_directory_contents_to_host(self, device_dir, host_dir):
"""Like shutil.copytree(), but for copying from a connected device."""
self.m.run(
self.m.step,
name='pull %s' % self.m.path.basename(device_dir),
cmd=[
self.android_bin.join('adb_pull_if_needed'), '--verbose',
] + self.serial_args + [
device_dir, host_dir,
],
env=self._default_env,
infra_step=True)
def copy_file_to_device(self, host_path, device_path):
"""Like shutil.copyfile, but for copying to a connected device."""
self._adb(name='push %s' % self.m.path.basename(host_path),
serial=self.serial,
cmd=['push', host_path, device_path],
infra_step=True)
def create_clean_device_dir(self, path):
"""Like shutil.rmtree() + os.makedirs(), but on a connected device."""
self._remove_device_dir(path)
self._create_device_dir(path)
def has_root(self):
"""Determine if we have root access on this device."""
# Special case: GalaxyS3 hangs on `adb root`. Don't bother.
if 'GalaxyS3' in self.m.vars.builder_name:
return False
# Determine if we have root access.
has_root = False
try:
output = self._adb(name='adb root',
serial=self.serial,
cmd=['root'],
stdout=self.m.raw_io.output(),
infra_step=True).stdout.rstrip()
if ('restarting adbd as root' in output or
'adbd is already running as root' in output):
has_root = True
except self.m.step.StepFailure: # pragma: nocover
pass
# Wait for the device to reconnect.
self.m.run(
self.m.step,
name='wait',
cmd=['sleep', '10'],
infra_step=True)
self._adb.wait_for_device()
return has_root
def install(self):
"""Run device-specific installation steps."""
device_scratch_dir = self._adb(
name='get EXTERNAL_STORAGE dir',
serial=self.serial,
cmd=['shell', 'echo', '$EXTERNAL_STORAGE'],
stdout=self.m.raw_io.output(),
infra_step=True,
).stdout.rstrip()
prefix = self.device_path_join(device_scratch_dir, 'skiabot', 'skia_')
self.device_dirs = default_flavor.DeviceDirs(
dm_dir=prefix + 'dm',
perf_data_dir=prefix + 'perf',
resource_dir=prefix + 'resources',
images_dir=prefix + 'images',
skp_dir=prefix + 'skp/skps',
svg_dir=prefix + 'svg/svgs',
tmp_dir=prefix + 'tmp_dir')
self._has_root = self.has_root()
self.m.run(self.m.step,
name='kill skia',
cmd=[
self.android_bin.join('android_kill_skia'),
'--verbose',
] + self.serial_args,
env=self._default_env,
infra_step=True)
if self._has_root:
self._adb(name='stop shell',
serial=self.serial,
cmd=['shell', 'stop'],
infra_step=True)
# Print out battery stats.
self._adb(name='starting battery stats',
serial=self.serial,
cmd=['shell', 'dumpsys', 'batteryproperties'],
infra_step=True)
# Print out CPU scale info.
if self._has_root:
self._adb(name='cat scaling_governor',
serial=self.serial,
cmd=['shell', 'cat',
'/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor'],
infra_step=True)
self._adb(name='cat cpu_freq',
serial=self.serial,
cmd=['shell', 'cat',
'/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq'],
infra_step=True)
def cleanup_steps(self):
"""Run any device-specific cleanup steps."""
if self.m.vars.role in (self.m.builder_name_schema.BUILDER_ROLE_TEST,
self.m.builder_name_schema.BUILDER_ROLE_PERF):
self._adb(name='final battery stats',
serial=self.serial,
cmd=['shell', 'dumpsys', 'batteryproperties'],
infra_step=True)
self._adb(name='reboot',
serial=self.serial,
cmd=['reboot'],
infra_step=True)
self.m.run(
self.m.step,
name='wait for reboot',
cmd=['sleep', '10'],
infra_step=True)
self._adb.wait_for_device()
# The ADB binary conflicts with py-adb used by swarming. Kill it
# when finished to play nice.
self._adb(name='kill-server',
serial=self.serial,
cmd=['kill-server'],
infra_step=True)
def read_file_on_device(self, path, *args, **kwargs):
"""Read the given file."""
return self._adb(name='read %s' % self.m.path.basename(path),
serial=self.serial,
cmd=['shell', 'cat', path],
stdout=self.m.raw_io.output(),
infra_step=True).stdout.rstrip()
def remove_file_on_device(self, path, *args, **kwargs):
"""Delete the given file."""
return self._adb(name='rm %s' % self.m.path.basename(path),
serial=self.serial,
cmd=['shell', 'rm', '-f', path],
infra_step=True,
*args,
**kwargs)

View File

@ -8,7 +8,6 @@
from recipe_engine import recipe_api
from . import android_flavor
from . import cmake_flavor
from . import default_flavor
from . import gn_android_flavor
@ -29,12 +28,6 @@ VERSION_FILE_SVG = 'SVG_VERSION'
VERSION_NONE = -1
def is_android(builder_cfg):
"""Determine whether the given builder is an Android builder."""
return ('Android' in builder_cfg.get('extra_config', '') or
builder_cfg.get('os') == 'Android')
def is_cmake(builder_cfg):
return 'CMake' in builder_cfg.get('extra_config', '')
@ -63,9 +56,7 @@ class SkiaFlavorApi(recipe_api.RecipeApi):
if gn.supported():
return gn
if is_android(builder_cfg):
return android_flavor.AndroidFlavorUtils(self.m)
elif is_cmake(builder_cfg):
if is_cmake(builder_cfg):
return cmake_flavor.CMakeFlavorUtils(self.m)
elif is_ios(builder_cfg):
return ios_flavor.iOSFlavorUtils(self.m)

View File

@ -63,6 +63,8 @@ class GNAndroidFlavorUtils(default_flavor.DefaultFlavorUtils):
args['is_debug'] = 'false'
if 'Vulkan' in extra_config:
args['ndk_api'] = 24
if 'FrameworkDefs' in extra_config:
args['skia_enable_android_framework_defines'] = 'true'
gn_args = ' '.join('%s=%s' % (k,v) for (k,v) in sorted(args.iteritems()))

View File

@ -115,30 +115,3 @@ for pattern in build_products_whitelist:
''' % str(BUILD_PRODUCTS_ISOLATE_WHITELIST),
args=[src, dst],
infra_step=True)
def ccache(self):
if not self._checked_for_ccache:
self._checked_for_ccache = True
if not self.m.platform.is_win:
result = self(
self.m.python.inline,
name='has ccache?',
program='''import json
import subprocess
import sys
ccache = None
try:
ccache = subprocess.check_output(['which', 'ccache']).rstrip()
except:
pass
print json.dumps({'ccache': ccache})
''',
stdout=self.m.json.output(),
infra_step=True,
abort_on_failure=False,
fail_build_on_failure=False)
if result and result.stdout and result.stdout.get('ccache'):
self._ccache = result.stdout['ccache']
return self._ccache

View File

@ -1,232 +0,0 @@
[
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_/_B_WORK]",
"511"
],
"name": "makedirs checkout_path",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"config",
"--spec",
"cache_dir = '[CUSTOM_/_B_CACHE]'\nsolutions = [{'deps_file': '.DEPS.git', 'managed': False, 'name': 'skia', 'url': 'https://skia.googlesource.com/skia.git'}]"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Mac-Clang-Arm7-Debug-Android"
},
"name": "gclient setup"
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"sync",
"--verbose",
"--with_branch_heads",
"--nohooks",
"-j8",
"--reset",
"--force",
"--upstream",
"--no-nag-max",
"--delete_unversioned_trees",
"--revision",
"skia@abc123",
"--output-json",
"/path/to/tmp/json"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Mac-Clang-Arm7-Debug-Android"
},
"name": "gclient sync",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"solutions\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"skia/\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@",
"@@@SET_BUILD_PROPERTY@got_revision@\"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"recurse",
"git",
"config",
"user.name",
"local_bot"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Mac-Clang-Arm7-Debug-Android"
},
"name": "gclient recurse (git config user.name)"
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"recurse",
"git",
"config",
"user.email",
"local_bot@example.com"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Mac-Clang-Arm7-Debug-Android"
},
"name": "gclient recurse (git config user.email)"
},
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"python",
"-u",
"import json\nimport subprocess\nimport sys\n\nccache = None\ntry:\n ccache = subprocess.check_output(['which', 'ccache']).rstrip()\nexcept:\n pass\nprint json.dumps({'ccache': ccache})\n"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Mac-Clang-Arm7-Debug-Android"
},
"name": "has ccache?",
"stdout": "/path/to/tmp/json",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"ccache\": \"/usr/bin/ccache\"@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@",
"@@@STEP_LOG_LINE@python.inline@import json@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@ccache = None@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ ccache = subprocess.check_output(['which', 'ccache']).rstrip()@@@",
"@@@STEP_LOG_LINE@python.inline@except:@@@",
"@@@STEP_LOG_LINE@python.inline@ pass@@@",
"@@@STEP_LOG_LINE@python.inline@print json.dumps({'ccache': ccache})@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[CUSTOM_/_B_WORK]/skia/platform_tools/android/bin/android_ninja",
"most",
"-d",
"arm_v7_neon",
"--clang"
],
"cwd": "[CUSTOM_/_B_WORK]/skia",
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_MAKE_CCACHE": "/usr/bin/ccache",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CC": "/usr/bin/clang",
"CHROME_HEADLESS": "1",
"CXX": "/usr/bin/clang++",
"GYP_DEFINES": "skia_arch_type=arm skia_clang_build=1 skia_warnings_as_errors=0",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Mac-Clang-Arm7-Debug-Android"
},
"name": "build most"
},
{
"cmd": [
"python",
"-u",
"import errno\nimport glob\nimport os\nimport shutil\nimport sys\n\nsrc = sys.argv[1]\ndst = sys.argv[2]\nbuild_products_whitelist = ['dm', 'dm.exe', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']\n\ntry:\n os.makedirs(dst)\nexcept OSError as e:\n if e.errno != errno.EEXIST:\n raise\n\nfor pattern in build_products_whitelist:\n path = os.path.join(src, pattern)\n for f in glob.glob(path):\n dst_path = os.path.join(dst, os.path.relpath(f, src))\n if not os.path.isdir(os.path.dirname(dst_path)):\n os.makedirs(os.path.dirname(dst_path))\n print 'Copying build product %s to %s' % (f, dst_path)\n shutil.move(f, dst_path)\n",
"[CUSTOM_/_B_WORK]/skia/out/Build-Mac-Clang-Arm7-Debug-Android/Debug",
"[CUSTOM_[SWARM_OUT_DIR]]/out/Debug"
],
"name": "copy build products",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@import errno@@@",
"@@@STEP_LOG_LINE@python.inline@import glob@@@",
"@@@STEP_LOG_LINE@python.inline@import os@@@",
"@@@STEP_LOG_LINE@python.inline@import shutil@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@src = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@dst = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@build_products_whitelist = ['dm', 'dm.exe', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(dst)@@@",
"@@@STEP_LOG_LINE@python.inline@except OSError as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ if e.errno != errno.EEXIST:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@for pattern in build_products_whitelist:@@@",
"@@@STEP_LOG_LINE@python.inline@ path = os.path.join(src, pattern)@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in glob.glob(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ dst_path = os.path.join(dst, os.path.relpath(f, src))@@@",
"@@@STEP_LOG_LINE@python.inline@ if not os.path.isdir(os.path.dirname(dst_path)):@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(os.path.dirname(dst_path))@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Copying build product %s to %s' % (f, dst_path)@@@",
"@@@STEP_LOG_LINE@python.inline@ shutil.move(f, dst_path)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -35,7 +35,7 @@
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android-Trybot"
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android-Trybot"
},
"name": "gclient setup"
},
@ -64,7 +64,7 @@
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android-Trybot"
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android-Trybot"
},
"name": "gclient sync",
"~followup_annotations": [
@ -95,7 +95,7 @@
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android-Trybot"
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android-Trybot"
},
"name": "gclient recurse (git config user.name)"
},
@ -115,7 +115,7 @@
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android-Trybot"
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android-Trybot"
},
"name": "gclient recurse (git config user.email)"
},
@ -141,76 +141,45 @@
},
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"python",
"-u",
"import json\nimport subprocess\nimport sys\n\nccache = None\ntry:\n ccache = subprocess.check_output(['which', 'ccache']).rstrip()\nexcept:\n pass\nprint json.dumps({'ccache': ccache})\n"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android-Trybot"
},
"name": "has ccache?",
"stdout": "/path/to/tmp/json",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"ccache\": \"/usr/bin/ccache\"@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@",
"@@@STEP_LOG_LINE@python.inline@import json@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@ccache = None@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ ccache = subprocess.check_output(['which', 'ccache']).rstrip()@@@",
"@@@STEP_LOG_LINE@python.inline@except:@@@",
"@@@STEP_LOG_LINE@python.inline@ pass@@@",
"@@@STEP_LOG_LINE@python.inline@print json.dumps({'ccache': ccache})@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[CUSTOM_/_B_WORK]/skia/platform_tools/android/bin/android_ninja",
"most",
"-d",
"arm_v7_neon",
"--gcc"
"[CUSTOM_/_B_WORK]/skia/bin/fetch-gn"
],
"cwd": "[CUSTOM_/_B_WORK]/skia",
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_MAKE_CCACHE": "/usr/bin/ccache",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"GYP_DEFINES": "skia_arch_type=arm skia_warnings_as_errors=1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android-Trybot"
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]"
},
"name": "build most"
"name": "fetch-gn"
},
{
"cmd": [
"gn",
"gen",
"[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android-Trybot/Debug",
"--args=ndk=\"[SLAVE_BUILD]/android_ndk_linux\" target_cpu=\"arm64\""
],
"cwd": "[CUSTOM_/_B_WORK]/skia",
"env": {
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]"
},
"name": "gn gen"
},
{
"cmd": [
"ninja",
"-C",
"[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android-Trybot/Debug"
],
"cwd": "[CUSTOM_/_B_WORK]/skia",
"env": {
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]"
},
"name": "ninja"
},
{
"cmd": [
"python",
"-u",
"import errno\nimport glob\nimport os\nimport shutil\nimport sys\n\nsrc = sys.argv[1]\ndst = sys.argv[2]\nbuild_products_whitelist = ['dm', 'dm.exe', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']\n\ntry:\n os.makedirs(dst)\nexcept OSError as e:\n if e.errno != errno.EEXIST:\n raise\n\nfor pattern in build_products_whitelist:\n path = os.path.join(src, pattern)\n for f in glob.glob(path):\n dst_path = os.path.join(dst, os.path.relpath(f, src))\n if not os.path.isdir(os.path.dirname(dst_path)):\n os.makedirs(os.path.dirname(dst_path))\n print 'Copying build product %s to %s' % (f, dst_path)\n shutil.move(f, dst_path)\n",
"[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android-Trybot/Debug",
"[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android-Trybot/Debug",
"[CUSTOM_[SWARM_OUT_DIR]]/out/Debug"
],
"name": "copy build products",

View File

@ -35,7 +35,7 @@
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_NoNeon"
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android_FrameworkDefs"
},
"name": "gclient setup"
},
@ -64,7 +64,7 @@
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_NoNeon"
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android_FrameworkDefs"
},
"name": "gclient sync",
"~followup_annotations": [
@ -95,7 +95,7 @@
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_NoNeon"
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android_FrameworkDefs"
},
"name": "gclient recurse (git config user.name)"
},
@ -115,82 +115,51 @@
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_NoNeon"
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android_FrameworkDefs"
},
"name": "gclient recurse (git config user.email)"
},
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"python",
"-u",
"import json\nimport subprocess\nimport sys\n\nccache = None\ntry:\n ccache = subprocess.check_output(['which', 'ccache']).rstrip()\nexcept:\n pass\nprint json.dumps({'ccache': ccache})\n"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_NoNeon"
},
"name": "has ccache?",
"stdout": "/path/to/tmp/json",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"ccache\": \"/usr/bin/ccache\"@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@",
"@@@STEP_LOG_LINE@python.inline@import json@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@ccache = None@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ ccache = subprocess.check_output(['which', 'ccache']).rstrip()@@@",
"@@@STEP_LOG_LINE@python.inline@except:@@@",
"@@@STEP_LOG_LINE@python.inline@ pass@@@",
"@@@STEP_LOG_LINE@python.inline@print json.dumps({'ccache': ccache})@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[CUSTOM_/_B_WORK]/skia/platform_tools/android/bin/android_ninja",
"most",
"-d",
"arm_v7",
"--gcc"
"[CUSTOM_/_B_WORK]/skia/bin/fetch-gn"
],
"cwd": "[CUSTOM_/_B_WORK]/skia",
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_MAKE_CCACHE": "/usr/bin/ccache",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"GYP_DEFINES": "skia_arch_type=arm skia_warnings_as_errors=1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_NoNeon"
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]"
},
"name": "build most"
"name": "fetch-gn"
},
{
"cmd": [
"gn",
"gen",
"[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android_FrameworkDefs/Debug",
"--args=ndk=\"[SLAVE_BUILD]/android_ndk_linux\" skia_enable_android_framework_defines=true target_cpu=\"arm64\""
],
"cwd": "[CUSTOM_/_B_WORK]/skia",
"env": {
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]"
},
"name": "gn gen"
},
{
"cmd": [
"ninja",
"-C",
"[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android_FrameworkDefs/Debug"
],
"cwd": "[CUSTOM_/_B_WORK]/skia",
"env": {
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]"
},
"name": "ninja"
},
{
"cmd": [
"python",
"-u",
"import errno\nimport glob\nimport os\nimport shutil\nimport sys\n\nsrc = sys.argv[1]\ndst = sys.argv[2]\nbuild_products_whitelist = ['dm', 'dm.exe', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']\n\ntry:\n os.makedirs(dst)\nexcept OSError as e:\n if e.errno != errno.EEXIST:\n raise\n\nfor pattern in build_products_whitelist:\n path = os.path.join(src, pattern)\n for f in glob.glob(path):\n dst_path = os.path.join(dst, os.path.relpath(f, src))\n if not os.path.isdir(os.path.dirname(dst_path)):\n os.makedirs(os.path.dirname(dst_path))\n print 'Copying build product %s to %s' % (f, dst_path)\n shutil.move(f, dst_path)\n",
"[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_NoNeon/Debug",
"[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-GN_Android_FrameworkDefs/Debug",
"[CUSTOM_[SWARM_OUT_DIR]]/out/Debug"
],
"name": "copy build products",

View File

@ -1,230 +0,0 @@
[
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_/_B_WORK]",
"511"
],
"name": "makedirs checkout_path",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"config",
"--spec",
"cache_dir = '[CUSTOM_/_B_CACHE]'\nsolutions = [{'deps_file': '.DEPS.git', 'managed': False, 'name': 'skia', 'url': 'https://skia.googlesource.com/skia.git'}]"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_FrameworkDefs"
},
"name": "gclient setup"
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"sync",
"--verbose",
"--with_branch_heads",
"--nohooks",
"-j8",
"--reset",
"--force",
"--upstream",
"--no-nag-max",
"--delete_unversioned_trees",
"--revision",
"skia@abc123",
"--output-json",
"/path/to/tmp/json"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_FrameworkDefs"
},
"name": "gclient sync",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"solutions\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"skia/\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@",
"@@@SET_BUILD_PROPERTY@got_revision@\"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"recurse",
"git",
"config",
"user.name",
"local_bot"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_FrameworkDefs"
},
"name": "gclient recurse (git config user.name)"
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"recurse",
"git",
"config",
"user.email",
"local_bot@example.com"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_FrameworkDefs"
},
"name": "gclient recurse (git config user.email)"
},
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"python",
"-u",
"import json\nimport subprocess\nimport sys\n\nccache = None\ntry:\n ccache = subprocess.check_output(['which', 'ccache']).rstrip()\nexcept:\n pass\nprint json.dumps({'ccache': ccache})\n"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_FrameworkDefs"
},
"name": "has ccache?",
"stdout": "/path/to/tmp/json",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"ccache\": \"/usr/bin/ccache\"@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@",
"@@@STEP_LOG_LINE@python.inline@import json@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@ccache = None@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ ccache = subprocess.check_output(['which', 'ccache']).rstrip()@@@",
"@@@STEP_LOG_LINE@python.inline@except:@@@",
"@@@STEP_LOG_LINE@python.inline@ pass@@@",
"@@@STEP_LOG_LINE@python.inline@print json.dumps({'ccache': ccache})@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[CUSTOM_/_B_WORK]/skia/platform_tools/android/bin/android_ninja",
"most",
"-d",
"arm_v7_neon",
"--gcc"
],
"cwd": "[CUSTOM_/_B_WORK]/skia",
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_MAKE_CCACHE": "/usr/bin/ccache",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"GYP_DEFINES": "skia_arch_type=arm skia_use_android_framework_defines=1 skia_warnings_as_errors=1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_FrameworkDefs"
},
"name": "build most"
},
{
"cmd": [
"python",
"-u",
"import errno\nimport glob\nimport os\nimport shutil\nimport sys\n\nsrc = sys.argv[1]\ndst = sys.argv[2]\nbuild_products_whitelist = ['dm', 'dm.exe', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']\n\ntry:\n os.makedirs(dst)\nexcept OSError as e:\n if e.errno != errno.EEXIST:\n raise\n\nfor pattern in build_products_whitelist:\n path = os.path.join(src, pattern)\n for f in glob.glob(path):\n dst_path = os.path.join(dst, os.path.relpath(f, src))\n if not os.path.isdir(os.path.dirname(dst_path)):\n os.makedirs(os.path.dirname(dst_path))\n print 'Copying build product %s to %s' % (f, dst_path)\n shutil.move(f, dst_path)\n",
"[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Debug-Android_FrameworkDefs/Debug",
"[CUSTOM_[SWARM_OUT_DIR]]/out/Debug"
],
"name": "copy build products",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@import errno@@@",
"@@@STEP_LOG_LINE@python.inline@import glob@@@",
"@@@STEP_LOG_LINE@python.inline@import os@@@",
"@@@STEP_LOG_LINE@python.inline@import shutil@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@src = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@dst = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@build_products_whitelist = ['dm', 'dm.exe', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(dst)@@@",
"@@@STEP_LOG_LINE@python.inline@except OSError as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ if e.errno != errno.EEXIST:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@for pattern in build_products_whitelist:@@@",
"@@@STEP_LOG_LINE@python.inline@ path = os.path.join(src, pattern)@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in glob.glob(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ dst_path = os.path.join(dst, os.path.relpath(f, src))@@@",
"@@@STEP_LOG_LINE@python.inline@ if not os.path.isdir(os.path.dirname(dst_path)):@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(os.path.dirname(dst_path))@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Copying build product %s to %s' % (f, dst_path)@@@",
"@@@STEP_LOG_LINE@python.inline@ shutil.move(f, dst_path)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,230 +0,0 @@
[
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_/_B_WORK]",
"511"
],
"name": "makedirs checkout_path",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"config",
"--spec",
"cache_dir = '[CUSTOM_/_B_CACHE]'\nsolutions = [{'deps_file': '.DEPS.git', 'managed': False, 'name': 'skia', 'url': 'https://skia.googlesource.com/skia.git'}]"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android"
},
"name": "gclient setup"
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"sync",
"--verbose",
"--with_branch_heads",
"--nohooks",
"-j8",
"--reset",
"--force",
"--upstream",
"--no-nag-max",
"--delete_unversioned_trees",
"--revision",
"skia@abc123",
"--output-json",
"/path/to/tmp/json"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android"
},
"name": "gclient sync",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"solutions\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"skia/\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@",
"@@@SET_BUILD_PROPERTY@got_revision@\"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"recurse",
"git",
"config",
"user.name",
"local_bot"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android"
},
"name": "gclient recurse (git config user.name)"
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"recurse",
"git",
"config",
"user.email",
"local_bot@example.com"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android"
},
"name": "gclient recurse (git config user.email)"
},
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"python",
"-u",
"import json\nimport subprocess\nimport sys\n\nccache = None\ntry:\n ccache = subprocess.check_output(['which', 'ccache']).rstrip()\nexcept:\n pass\nprint json.dumps({'ccache': ccache})\n"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android"
},
"name": "has ccache?",
"stdout": "/path/to/tmp/json",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"ccache\": \"/usr/bin/ccache\"@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@",
"@@@STEP_LOG_LINE@python.inline@import json@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@ccache = None@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ ccache = subprocess.check_output(['which', 'ccache']).rstrip()@@@",
"@@@STEP_LOG_LINE@python.inline@except:@@@",
"@@@STEP_LOG_LINE@python.inline@ pass@@@",
"@@@STEP_LOG_LINE@python.inline@print json.dumps({'ccache': ccache})@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[CUSTOM_/_B_WORK]/skia/platform_tools/android/bin/android_ninja",
"most",
"-d",
"arm_v7_neon",
"--gcc"
],
"cwd": "[CUSTOM_/_B_WORK]/skia",
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_MAKE_CCACHE": "/usr/bin/ccache",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"GYP_DEFINES": "skia_arch_type=arm skia_warnings_as_errors=1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android"
},
"name": "build most"
},
{
"cmd": [
"python",
"-u",
"import errno\nimport glob\nimport os\nimport shutil\nimport sys\n\nsrc = sys.argv[1]\ndst = sys.argv[2]\nbuild_products_whitelist = ['dm', 'dm.exe', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']\n\ntry:\n os.makedirs(dst)\nexcept OSError as e:\n if e.errno != errno.EEXIST:\n raise\n\nfor pattern in build_products_whitelist:\n path = os.path.join(src, pattern)\n for f in glob.glob(path):\n dst_path = os.path.join(dst, os.path.relpath(f, src))\n if not os.path.isdir(os.path.dirname(dst_path)):\n os.makedirs(os.path.dirname(dst_path))\n print 'Copying build product %s to %s' % (f, dst_path)\n shutil.move(f, dst_path)\n",
"[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android/Release",
"[CUSTOM_[SWARM_OUT_DIR]]/out/Release"
],
"name": "copy build products",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@import errno@@@",
"@@@STEP_LOG_LINE@python.inline@import glob@@@",
"@@@STEP_LOG_LINE@python.inline@import os@@@",
"@@@STEP_LOG_LINE@python.inline@import shutil@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@src = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@dst = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@build_products_whitelist = ['dm', 'dm.exe', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(dst)@@@",
"@@@STEP_LOG_LINE@python.inline@except OSError as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ if e.errno != errno.EEXIST:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@for pattern in build_products_whitelist:@@@",
"@@@STEP_LOG_LINE@python.inline@ path = os.path.join(src, pattern)@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in glob.glob(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ dst_path = os.path.join(dst, os.path.relpath(f, src))@@@",
"@@@STEP_LOG_LINE@python.inline@ if not os.path.isdir(os.path.dirname(dst_path)):@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(os.path.dirname(dst_path))@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Copying build product %s to %s' % (f, dst_path)@@@",
"@@@STEP_LOG_LINE@python.inline@ shutil.move(f, dst_path)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,231 +0,0 @@
[
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_/_B_WORK]",
"511"
],
"name": "makedirs checkout_path",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"config",
"--spec",
"cache_dir = '[CUSTOM_/_B_CACHE]'\nsolutions = [{'deps_file': '.DEPS.git', 'managed': False, 'name': 'skia', 'url': 'https://skia.googlesource.com/skia.git'}]"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android_Vulkan"
},
"name": "gclient setup"
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"sync",
"--verbose",
"--with_branch_heads",
"--nohooks",
"-j8",
"--reset",
"--force",
"--upstream",
"--no-nag-max",
"--delete_unversioned_trees",
"--revision",
"skia@abc123",
"--output-json",
"/path/to/tmp/json"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android_Vulkan"
},
"name": "gclient sync",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"solutions\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"skia/\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@",
"@@@SET_BUILD_PROPERTY@got_revision@\"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@"
]
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"recurse",
"git",
"config",
"user.name",
"local_bot"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android_Vulkan"
},
"name": "gclient recurse (git config user.name)"
},
{
"cmd": [
"python",
"-u",
"RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
"recurse",
"git",
"config",
"user.email",
"local_bot@example.com"
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android_Vulkan"
},
"name": "gclient recurse (git config user.email)"
},
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"python",
"-u",
"import json\nimport subprocess\nimport sys\n\nccache = None\ntry:\n ccache = subprocess.check_output(['which', 'ccache']).rstrip()\nexcept:\n pass\nprint json.dumps({'ccache': ccache})\n"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android_Vulkan"
},
"name": "has ccache?",
"stdout": "/path/to/tmp/json",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"ccache\": \"/usr/bin/ccache\"@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@",
"@@@STEP_LOG_LINE@python.inline@import json@@@",
"@@@STEP_LOG_LINE@python.inline@import subprocess@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@ccache = None@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ ccache = subprocess.check_output(['which', 'ccache']).rstrip()@@@",
"@@@STEP_LOG_LINE@python.inline@except:@@@",
"@@@STEP_LOG_LINE@python.inline@ pass@@@",
"@@@STEP_LOG_LINE@python.inline@print json.dumps({'ccache': ccache})@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[CUSTOM_/_B_WORK]/skia/platform_tools/android/bin/android_ninja",
"most",
"-d",
"arm_v7_neon",
"--gcc",
"--vulkan"
],
"cwd": "[CUSTOM_/_B_WORK]/skia",
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_MAKE_CCACHE": "/usr/bin/ccache",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"GYP_DEFINES": "skia_arch_type=arm skia_warnings_as_errors=1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android_Vulkan"
},
"name": "build most"
},
{
"cmd": [
"python",
"-u",
"import errno\nimport glob\nimport os\nimport shutil\nimport sys\n\nsrc = sys.argv[1]\ndst = sys.argv[2]\nbuild_products_whitelist = ['dm', 'dm.exe', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']\n\ntry:\n os.makedirs(dst)\nexcept OSError as e:\n if e.errno != errno.EEXIST:\n raise\n\nfor pattern in build_products_whitelist:\n path = os.path.join(src, pattern)\n for f in glob.glob(path):\n dst_path = os.path.join(dst, os.path.relpath(f, src))\n if not os.path.isdir(os.path.dirname(dst_path)):\n os.makedirs(os.path.dirname(dst_path))\n print 'Copying build product %s to %s' % (f, dst_path)\n shutil.move(f, dst_path)\n",
"[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-GCC-Arm7-Release-Android_Vulkan/Release",
"[CUSTOM_[SWARM_OUT_DIR]]/out/Release"
],
"name": "copy build products",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@import errno@@@",
"@@@STEP_LOG_LINE@python.inline@import glob@@@",
"@@@STEP_LOG_LINE@python.inline@import os@@@",
"@@@STEP_LOG_LINE@python.inline@import shutil@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@src = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@dst = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@build_products_whitelist = ['dm', 'dm.exe', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(dst)@@@",
"@@@STEP_LOG_LINE@python.inline@except OSError as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ if e.errno != errno.EEXIST:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@for pattern in build_products_whitelist:@@@",
"@@@STEP_LOG_LINE@python.inline@ path = os.path.join(src, pattern)@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in glob.glob(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ dst_path = os.path.join(dst, os.path.relpath(f, src))@@@",
"@@@STEP_LOG_LINE@python.inline@ if not os.path.isdir(os.path.dirname(dst_path)):@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(os.path.dirname(dst_path))@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Copying build product %s to %s' % (f, dst_path)@@@",
"@@@STEP_LOG_LINE@python.inline@ shutil.move(f, dst_path)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -22,7 +22,6 @@ DEPS = [
TEST_BUILDERS = {
'client.skia.compile': {
'skiabot-linux-swarm-000': [
'Build-Mac-Clang-Arm7-Debug-Android',
'Build-Mac-Clang-Arm7-Release-iOS',
'Build-Mac-Clang-mipsel-Debug-GN_Android',
'Build-Mac-Clang-x86_64-Debug-CommandBuffer',
@ -32,11 +31,8 @@ TEST_BUILDERS = {
'Build-Ubuntu-Clang-arm64-Release-GN_Android_Vulkan',
'Build-Ubuntu-Clang-x86_64-Debug-ASAN',
'Build-Ubuntu-Clang-x86_64-Debug-GN',
'Build-Ubuntu-GCC-Arm7-Debug-Android-Trybot',
'Build-Ubuntu-GCC-Arm7-Debug-Android_FrameworkDefs',
'Build-Ubuntu-GCC-Arm7-Debug-Android_NoNeon',
'Build-Ubuntu-GCC-Arm7-Release-Android',
'Build-Ubuntu-GCC-Arm7-Release-Android_Vulkan',
'Build-Ubuntu-Clang-arm64-Debug-GN_Android-Trybot',
'Build-Ubuntu-Clang-arm64-Debug-GN_Android_FrameworkDefs',
'Build-Ubuntu-GCC-x86-Debug',
'Build-Ubuntu-GCC-x86_64-Debug-GN',
'Build-Ubuntu-GCC-x86_64-Debug-MSAN',
@ -168,10 +164,6 @@ def get_gyp_defines(builder_dict):
builder_dict.get('cpu_or_gpu_value') == 'Mesa'):
gyp_defs['skia_mesa'] = '1'
# skia_use_android_framework_defines.
if builder_dict.get('extra_config') == 'Android_FrameworkDefs':
gyp_defs['skia_use_android_framework_defines'] = '1'
# CommandBuffer.
if builder_dict.get('extra_config') == 'CommandBuffer':
gyp_defs['skia_command_buffer'] = '1'
@ -248,14 +240,6 @@ def GenTests(api):
test += api.platform('mac', 64)
else:
test += api.platform('linux', 64)
if 'Android' in builder and 'GN' not in builder:
ccache = '/usr/bin/ccache'
test += api.step_data('has ccache?',
stdout=api.json.output({'ccache':ccache}))
if 'Android' in builder and 'GN_Android' not in builder:
test += api.step_data(
'which adb',
retcode=1)
if 'Trybot' in builder:
test += api.properties(issue=500,
patchset=1,

View File

@ -0,0 +1,445 @@
[
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skia/resources",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skp",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skp/* /sdcard/revenge_of_the_skiabot/skps",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skimage",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skimage/* /sdcard/revenge_of_the_skiabot/images",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/svg",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/out/Debug/nanobench",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push nanobench"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"set -x; /data/local/tmp/nanobench --undefok -i /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/nanobench --nocpu --pre_log --images --gpuStatsDump true --useThermalManager 1,1,10,1000 --scales 1.0 1.1 --config vk --match ~blurroundrect ~patch_grid ~desk_carsvg ~inc0.gif ~inc1.gif ~incInterlaced.gif ~inc0.jpg ~incGray.jpg ~inc0.wbmp ~inc1.wbmp ~inc0.webp ~inc1.webp ~inc0.ico ~inc1.ico ~inc0.png ~inc1.png ~inc2.png ~inc12.png ~inc13.png ~inc14.png ~inc0.webp ~inc1.webp; echo $? >/data/local/tmp/rc",
"[SLAVE_BUILD]/tmp/nanobench.sh"
],
"name": "write nanobench.sh"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/nanobench.sh",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push nanobench.sh"
},
{
"cmd": [
"adb",
"logcat",
"-c"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "clear log"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', '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/",
"nanobench.sh"
],
"name": "nanobench",
"~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@bin_dir = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@",
"@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
"@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"logcat",
"-d"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "dump log"
},
{
"cmd": [
"adb",
"reboot"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "reboot"
},
{
"cmd": [
"adb",
"kill-server"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "kill adb server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -0,0 +1,445 @@
[
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skia/resources",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skp",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skp/* /sdcard/revenge_of_the_skiabot/skps",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skimage",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skimage/* /sdcard/revenge_of_the_skiabot/images",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/svg",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/out/Debug/nanobench",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push nanobench"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"set -x; /data/local/tmp/nanobench --undefok -i /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/nanobench --nocpu --pre_log --images --gpuStatsDump true --useThermalManager 1,1,10,1000 --scales 1.0 1.1 --config 8888 gpu nonrendering angle hwui f16 srgb msaa4 nvpr4 nvprdit4 --match ~blurroundrect ~patch_grid ~desk_carsvg ~keymobi_shop_mobileweb_ebay_com.skp ~inc0.gif ~inc1.gif ~incInterlaced.gif ~inc0.jpg ~incGray.jpg ~inc0.wbmp ~inc1.wbmp ~inc0.webp ~inc1.webp ~inc0.ico ~inc1.ico ~inc0.png ~inc1.png ~inc2.png ~inc12.png ~inc13.png ~inc14.png ~inc0.webp ~inc1.webp; echo $? >/data/local/tmp/rc",
"[SLAVE_BUILD]/tmp/nanobench.sh"
],
"name": "write nanobench.sh"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/nanobench.sh",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push nanobench.sh"
},
{
"cmd": [
"adb",
"logcat",
"-c"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "clear log"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', '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/",
"nanobench.sh"
],
"name": "nanobench",
"~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@bin_dir = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@",
"@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
"@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"logcat",
"-d"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "dump log"
},
{
"cmd": [
"adb",
"reboot"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "reboot"
},
{
"cmd": [
"adb",
"kill-server"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "kill adb server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -0,0 +1,499 @@
[
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skia/resources",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skp",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skp/* /sdcard/revenge_of_the_skiabot/skps",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skimage",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skimage/* /sdcard/revenge_of_the_skiabot/images",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/svg",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/perf"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/perf"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/perf"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/perf"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/out/Release/nanobench",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push nanobench"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"set -x; /data/local/tmp/nanobench --undefok -i /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/nanobench --nocpu --pre_log --images --gpuStatsDump true --useThermalManager 1,1,10,1000 --scales 1.0 1.1 --config 8888 gpu nonrendering angle hwui f16 srgb msaa4 nvpr4 nvprdit4 esinst --match ~blurroundrect ~patch_grid ~desk_carsvg ~inc0.gif ~inc1.gif ~incInterlaced.gif ~inc0.jpg ~incGray.jpg ~inc0.wbmp ~inc1.wbmp ~inc0.webp ~inc1.webp ~inc0.ico ~inc1.ico ~inc0.png ~inc1.png ~inc2.png ~inc12.png ~inc13.png ~inc14.png ~inc0.webp ~inc1.webp --outResultsFile /sdcard/revenge_of_the_skiabot/perf/nanobench_abc123.json --properties gitHash abc123 build_number 5 --key arch arm compiler Clang cpu_or_gpu GPU cpu_or_gpu_value Adreno420 extra_config GN_Android model Nexus6 os Android; echo $? >/data/local/tmp/rc",
"[SLAVE_BUILD]/tmp/nanobench.sh"
],
"name": "write nanobench.sh"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/nanobench.sh",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push nanobench.sh"
},
{
"cmd": [
"adb",
"logcat",
"-c"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "clear log"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', '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/",
"nanobench.sh"
],
"name": "nanobench",
"~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@bin_dir = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@",
"@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
"@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-Clang-Nexus6-GPU-Adreno420-arm-Release-GN_Android/data",
"511"
],
"name": "makedirs perf_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"pull",
"/sdcard/revenge_of_the_skiabot/perf",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-Clang-Nexus6-GPU-Adreno420-arm-Release-GN_Android/data"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "pull /sdcard/revenge_of_the_skiabot/perf [CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-Clang-Nexus6-GPU-Adreno420-arm-Release-GN_Android/data"
},
{
"cmd": [
"adb",
"logcat",
"-d"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "dump log"
},
{
"cmd": [
"adb",
"reboot"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "reboot"
},
{
"cmd": [
"adb",
"kill-server"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "kill adb server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -0,0 +1,499 @@
[
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skia/resources",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skp",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skp/* /sdcard/revenge_of_the_skiabot/skps",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skimage",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skimage/* /sdcard/revenge_of_the_skiabot/images",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/svg",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/perf"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/perf"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/perf"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/perf"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/out/Release/nanobench",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push nanobench"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"set -x; /data/local/tmp/nanobench --undefok -i /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/nanobench --nocpu --pre_log --images --gpuStatsDump true --useThermalManager 1,1,10,1000 --scales 1.0 1.1 --config 8888 gpu nonrendering angle hwui f16 srgb msaa4 nvpr4 nvprdit4 --match ~blurroundrect ~patch_grid ~desk_carsvg ~inc0.gif ~inc1.gif ~incInterlaced.gif ~inc0.jpg ~incGray.jpg ~inc0.wbmp ~inc1.wbmp ~inc0.webp ~inc1.webp ~inc0.ico ~inc1.ico ~inc0.png ~inc1.png ~inc2.png ~inc12.png ~inc13.png ~inc14.png ~inc0.webp ~inc1.webp --outResultsFile /sdcard/revenge_of_the_skiabot/perf/nanobench_abc123.json --properties gitHash abc123 build_number 5 --key arch arm compiler Clang cpu_or_gpu GPU cpu_or_gpu_value Tegra3 extra_config GN_Android model Nexus7 os Android; echo $? >/data/local/tmp/rc",
"[SLAVE_BUILD]/tmp/nanobench.sh"
],
"name": "write nanobench.sh"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/nanobench.sh",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push nanobench.sh"
},
{
"cmd": [
"adb",
"logcat",
"-c"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "clear log"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', '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/",
"nanobench.sh"
],
"name": "nanobench",
"~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@bin_dir = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@",
"@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
"@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-Clang-Nexus7-GPU-Tegra3-arm-Release-GN_Android/data",
"511"
],
"name": "makedirs perf_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"pull",
"/sdcard/revenge_of_the_skiabot/perf",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-Clang-Nexus7-GPU-Tegra3-arm-Release-GN_Android/data"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "pull /sdcard/revenge_of_the_skiabot/perf [CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-Clang-Nexus7-GPU-Tegra3-arm-Release-GN_Android/data"
},
{
"cmd": [
"adb",
"logcat",
"-d"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "dump log"
},
{
"cmd": [
"adb",
"reboot"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "reboot"
},
{
"cmd": [
"adb",
"kill-server"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "kill adb server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -0,0 +1,499 @@
[
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skia/resources",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skp",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skp/* /sdcard/revenge_of_the_skiabot/skps",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skimage",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skimage/* /sdcard/revenge_of_the_skiabot/images",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/svg",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/perf"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/perf"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/perf"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/perf"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/out/Release/nanobench",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push nanobench"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"set -x; /data/local/tmp/nanobench --undefok -i /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/nanobench --nocpu --pre_log --images --gpuStatsDump true --useThermalManager 1,1,10,1000 --scales 1.0 1.1 --config 8888 gpu nonrendering angle hwui f16 srgb --match ~blurroundrect ~patch_grid ~desk_carsvg ~desk_unicodetable ~interlaced1.png ~interlaced2.png ~interlaced3.png ~inc0.gif ~inc1.gif ~incInterlaced.gif ~inc0.jpg ~incGray.jpg ~inc0.wbmp ~inc1.wbmp ~inc0.webp ~inc1.webp ~inc0.ico ~inc1.ico ~inc0.png ~inc1.png ~inc2.png ~inc12.png ~inc13.png ~inc14.png ~inc0.webp ~inc1.webp --outResultsFile /sdcard/revenge_of_the_skiabot/perf/nanobench_abc123.json --properties gitHash abc123 build_number 5 --key arch x86 compiler Clang cpu_or_gpu GPU cpu_or_gpu_value PowerVR extra_config GN_Android model NexusPlayer os Android; echo $? >/data/local/tmp/rc",
"[SLAVE_BUILD]/tmp/nanobench.sh"
],
"name": "write nanobench.sh"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/nanobench.sh",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push nanobench.sh"
},
{
"cmd": [
"adb",
"logcat",
"-c"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "clear log"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', '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/",
"nanobench.sh"
],
"name": "nanobench",
"~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@bin_dir = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@",
"@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
"@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-Clang-NexusPlayer-GPU-PowerVR-x86-Release-GN_Android/data",
"511"
],
"name": "makedirs perf_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"pull",
"/sdcard/revenge_of_the_skiabot/perf",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-Clang-NexusPlayer-GPU-PowerVR-x86-Release-GN_Android/data"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "pull /sdcard/revenge_of_the_skiabot/perf [CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-Clang-NexusPlayer-GPU-PowerVR-x86-Release-GN_Android/data"
},
{
"cmd": [
"adb",
"logcat",
"-d"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "dump log"
},
{
"cmd": [
"adb",
"reboot"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "reboot"
},
{
"cmd": [
"adb",
"kill-server"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "kill adb server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,475 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_perf"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "rmdir skia_perf"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_perf",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "exists skia_perf",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_perf"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_perf"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm_v7_neon",
"-t",
"Release",
"nanobench",
"--undefok",
"-i",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/nanobench",
"--nocpu",
"--pre_log",
"--images",
"--gpuStatsDump",
"true",
"--useThermalManager",
"1,1,10,1000",
"--scales",
"1.0",
"1.1",
"--config",
"8888",
"gpu",
"nonrendering",
"angle",
"hwui",
"f16",
"srgb",
"msaa4",
"nvpr4",
"nvprdit4",
"--match",
"~blurroundrect",
"~patch_grid",
"~desk_carsvg",
"~shapes_",
"~inc0.gif",
"~inc1.gif",
"~incInterlaced.gif",
"~inc0.jpg",
"~incGray.jpg",
"~inc0.wbmp",
"~inc1.wbmp",
"~inc0.webp",
"~inc1.webp",
"~inc0.ico",
"~inc1.ico",
"~inc0.png",
"~inc1.png",
"~inc2.png",
"~inc12.png",
"~inc13.png",
"~inc14.png",
"~inc0.webp",
"~inc1.webp",
"--outResultsFile",
"/storage/emulated/legacy/skiabot/skia_perf/nanobench_abc123.json",
"--properties",
"gitHash",
"abc123",
"build_number",
"5",
"--key",
"arch",
"Arm7",
"compiler",
"GCC",
"cpu_or_gpu",
"GPU",
"cpu_or_gpu_value",
"Mali400",
"model",
"GalaxyS3",
"os",
"Android"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "nanobench"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-GCC-GalaxyS3-GPU-Mali400-Arm7-Release/data",
"511"
],
"name": "makedirs perf_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_perf",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-GCC-GalaxyS3-GPU-Mali400-Arm7-Release/data"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "pull skia_perf"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,448 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"root"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm64",
"-t",
"Debug",
"nanobench",
"--undefok",
"-i",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/nanobench",
"--nocpu",
"--pre_log",
"--images",
"--gpuStatsDump",
"true",
"--useThermalManager",
"1,1,10,1000",
"--scales",
"1.0",
"1.1",
"--config",
"vk",
"--match",
"~blurroundrect",
"~patch_grid",
"~desk_carsvg",
"~inc0.gif",
"~inc1.gif",
"~incInterlaced.gif",
"~inc0.jpg",
"~incGray.jpg",
"~inc0.wbmp",
"~inc1.wbmp",
"~inc0.webp",
"~inc1.webp",
"~inc0.ico",
"~inc1.ico",
"~inc0.png",
"~inc1.png",
"~inc2.png",
"~inc12.png",
"~inc13.png",
"~inc14.png",
"~inc0.webp",
"~inc1.webp"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "nanobench"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,458 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"root"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm_v7_neon",
"-t",
"Debug",
"nanobench",
"--undefok",
"-i",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/nanobench",
"--nocpu",
"--pre_log",
"--images",
"--gpuStatsDump",
"true",
"--useThermalManager",
"1,1,10,1000",
"--scales",
"1.0",
"1.1",
"--config",
"8888",
"gpu",
"nonrendering",
"angle",
"hwui",
"f16",
"srgb",
"msaa4",
"nvpr4",
"nvprdit4",
"--match",
"~blurroundrect",
"~patch_grid",
"~desk_carsvg",
"~keymobi_shop_mobileweb_ebay_com.skp",
"~inc0.gif",
"~inc1.gif",
"~incInterlaced.gif",
"~inc0.jpg",
"~incGray.jpg",
"~inc0.wbmp",
"~inc1.wbmp",
"~inc0.webp",
"~inc1.webp",
"~inc0.ico",
"~inc1.ico",
"~inc0.png",
"~inc1.png",
"~inc2.png",
"~inc12.png",
"~inc13.png",
"~inc14.png",
"~inc0.webp",
"~inc1.webp"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "nanobench"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,569 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"root"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_perf"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "rmdir skia_perf"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_perf",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "exists skia_perf",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_perf"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_perf"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm_v7_neon",
"-t",
"Release",
"nanobench",
"--undefok",
"-i",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/nanobench",
"--nocpu",
"--pre_log",
"--images",
"--gpuStatsDump",
"true",
"--useThermalManager",
"1,1,10,1000",
"--scales",
"1.0",
"1.1",
"--config",
"8888",
"gpu",
"nonrendering",
"angle",
"hwui",
"f16",
"srgb",
"msaa4",
"nvpr4",
"nvprdit4",
"esinst",
"--match",
"~blurroundrect",
"~patch_grid",
"~desk_carsvg",
"~inc0.gif",
"~inc1.gif",
"~incInterlaced.gif",
"~inc0.jpg",
"~incGray.jpg",
"~inc0.wbmp",
"~inc1.wbmp",
"~inc0.webp",
"~inc1.webp",
"~inc0.ico",
"~inc1.ico",
"~inc0.png",
"~inc1.png",
"~inc2.png",
"~inc12.png",
"~inc13.png",
"~inc14.png",
"~inc0.webp",
"~inc1.webp",
"--outResultsFile",
"/storage/emulated/legacy/skiabot/skia_perf/nanobench_abc123.json",
"--properties",
"gitHash",
"abc123",
"build_number",
"5",
"--key",
"arch",
"Arm7",
"compiler",
"GCC",
"cpu_or_gpu",
"GPU",
"cpu_or_gpu_value",
"Adreno420",
"model",
"Nexus6",
"os",
"Android"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "nanobench"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-GCC-Nexus6-GPU-Adreno420-Arm7-Release/data",
"511"
],
"name": "makedirs perf_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_perf",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-GCC-Nexus6-GPU-Adreno420-Arm7-Release/data"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "pull skia_perf"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,568 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"root"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_perf"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "rmdir skia_perf"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_perf",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "exists skia_perf",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_perf"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_perf"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm_v7_neon",
"-t",
"Release",
"nanobench",
"--undefok",
"-i",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/nanobench",
"--nocpu",
"--pre_log",
"--images",
"--gpuStatsDump",
"true",
"--useThermalManager",
"1,1,10,1000",
"--scales",
"1.0",
"1.1",
"--config",
"8888",
"gpu",
"nonrendering",
"angle",
"hwui",
"f16",
"srgb",
"msaa4",
"nvpr4",
"nvprdit4",
"--match",
"~blurroundrect",
"~patch_grid",
"~desk_carsvg",
"~inc0.gif",
"~inc1.gif",
"~incInterlaced.gif",
"~inc0.jpg",
"~incGray.jpg",
"~inc0.wbmp",
"~inc1.wbmp",
"~inc0.webp",
"~inc1.webp",
"~inc0.ico",
"~inc1.ico",
"~inc0.png",
"~inc1.png",
"~inc2.png",
"~inc12.png",
"~inc13.png",
"~inc14.png",
"~inc0.webp",
"~inc1.webp",
"--outResultsFile",
"/storage/emulated/legacy/skiabot/skia_perf/nanobench_abc123.json",
"--properties",
"gitHash",
"abc123",
"build_number",
"5",
"--key",
"arch",
"Arm7",
"compiler",
"GCC",
"cpu_or_gpu",
"GPU",
"cpu_or_gpu_value",
"Tegra3",
"model",
"Nexus7",
"os",
"Android"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "nanobench"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Release/data",
"511"
],
"name": "makedirs perf_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_perf",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Release/data"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "pull skia_perf"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,569 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"root"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_perf"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "rmdir skia_perf"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_perf",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "exists skia_perf",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_perf"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_perf"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"x86",
"-t",
"Release",
"nanobench",
"--undefok",
"-i",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/nanobench",
"--nocpu",
"--pre_log",
"--images",
"--gpuStatsDump",
"true",
"--useThermalManager",
"1,1,10,1000",
"--scales",
"1.0",
"1.1",
"--config",
"8888",
"gpu",
"nonrendering",
"angle",
"hwui",
"f16",
"srgb",
"--match",
"~blurroundrect",
"~patch_grid",
"~desk_carsvg",
"~desk_unicodetable",
"~interlaced1.png",
"~interlaced2.png",
"~interlaced3.png",
"~inc0.gif",
"~inc1.gif",
"~incInterlaced.gif",
"~inc0.jpg",
"~incGray.jpg",
"~inc0.wbmp",
"~inc1.wbmp",
"~inc0.webp",
"~inc1.webp",
"~inc0.ico",
"~inc1.ico",
"~inc0.png",
"~inc1.png",
"~inc2.png",
"~inc12.png",
"~inc13.png",
"~inc14.png",
"~inc0.webp",
"~inc1.webp",
"--outResultsFile",
"/storage/emulated/legacy/skiabot/skia_perf/nanobench_abc123.json",
"--properties",
"gitHash",
"abc123",
"build_number",
"5",
"--key",
"arch",
"x86",
"compiler",
"GCC",
"cpu_or_gpu",
"GPU",
"cpu_or_gpu_value",
"PowerVR",
"model",
"NexusPlayer",
"os",
"Android"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "nanobench"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-GCC-NexusPlayer-GPU-PowerVR-x86-Release/data",
"511"
],
"name": "makedirs perf_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_perf",
"[CUSTOM_[SWARM_OUT_DIR]]/perfdata/Perf-Android-GCC-NexusPlayer-GPU-PowerVR-x86-Release/data"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "pull skia_perf"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -23,12 +23,12 @@ DEPS = [
TEST_BUILDERS = {
'client.skia': {
'skiabot-linux-swarm-000': [
'Perf-Android-GCC-GalaxyS3-GPU-Mali400-Arm7-Release',
'Perf-Android-GCC-NVIDIA_Shield-GPU-TegraX1-Arm64-Debug-Vulkan',
'Perf-Android-GCC-Nexus5-GPU-Adreno330-Arm7-Debug',
'Perf-Android-GCC-Nexus6-GPU-Adreno420-Arm7-Release',
'Perf-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Release',
'Perf-Android-GCC-NexusPlayer-GPU-PowerVR-x86-Release',
('Perf-Android-Clang-NVIDIA_Shield-GPU-TegraX1-arm64-Debug' +
'-GN_Android_Vulkan'),
'Perf-Android-Clang-Nexus5-GPU-Adreno330-arm-Debug-GN_Android',
'Perf-Android-Clang-Nexus6-GPU-Adreno420-arm-Release-GN_Android',
'Perf-Android-Clang-Nexus7-GPU-Tegra3-arm-Release-GN_Android',
'Perf-Android-Clang-NexusPlayer-GPU-PowerVR-x86-Release-GN_Android',
'Perf-Mac-Clang-MacMini6.2-CPU-AVX-x86_64-Release-GN',
'Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-GN',
'Perf-Ubuntu-GCC-ShuttleA-GPU-GTX550Ti-x86_64-Release-Valgrind',
@ -127,11 +127,6 @@ def nanobench_flags(bot):
match.append('~interlaced2.png')
match.append('~interlaced3.png')
# This low-end Android bot crashes about 25% of the time while running the
# (somewhat intense) shapes benchmarks.
if 'Perf-Android-GCC-GalaxyS3-GPU-Mali400-Arm7-Release' in bot:
match.append('~shapes_')
# We do not need or want to benchmark the decodes of incomplete images.
# In fact, in nanobench we assert that the full image decode succeeds.
match.append('~inc0.gif')
@ -247,34 +242,6 @@ def RunSteps(api):
def GenTests(api):
def AndroidTestData(builder):
test_data = (
api.step_data(
'get EXTERNAL_STORAGE dir',
stdout=api.raw_io.output('/storage/emulated/legacy')) +
api.step_data(
'read SKP_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data(
'read SK_IMAGE_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data(
'read SVG_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data(
'which adb',
retcode=1)
)
if not 'Debug' in builder:
test_data += api.step_data(
'exists skia_perf',
stdout=api.raw_io.output(''))
if not 'GalaxyS3' in builder:
test_data += api.step_data(
'adb root',
stdout=api.raw_io.output('restarting adbd as root'))
return test_data
for mastername, slaves in TEST_BUILDERS.iteritems():
for slavename, builders_by_slave in slaves.iteritems():
for builder in builders_by_slave:
@ -296,10 +263,6 @@ def GenTests(api):
api.path['slave_build'].join('tmp', 'uninteresting_hashes.txt')
)
)
if ('Android' in builder and
('Test' in builder or 'Perf' in builder) and
not 'Appurify' in builder):
test += AndroidTestData(builder)
if 'Trybot' in builder:
test += api.properties(issue=500,
patchset=1,

View File

@ -0,0 +1,596 @@
[
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skia/resources",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skp",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skp/* /sdcard/revenge_of_the_skiabot/skps",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skimage",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skimage/* /sdcard/revenge_of_the_skiabot/images",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/svg",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/uninteresting_hashes.txt /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/out/Release/dm",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"set -x; /data/local/tmp/dm --undefok --resourcePath /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/dm --colorImages /sdcard/revenge_of_the_skiabot/images/colorspace --nameByHash --properties gitHash abc123 master client.skia builder Test-Android-Clang-AndroidOne-GPU-Mali400MP2-arm-Release-GN_Android build_number 5 --svgs /sdcard/revenge_of_the_skiabot/svgs --key arch arm compiler Clang configuration Release cpu_or_gpu GPU cpu_or_gpu_value Mali400MP2 extra_config GN_Android model AndroidOne os Android --uninterestingHashesFile /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt --writePath /sdcard/revenge_of_the_skiabot/dm_out --nocpu --config 8888 gpu gpusrgb msaa4 serialize-8888 tiles_rt-8888 pic-8888 --src tests gm image colorImage svg --blacklist gpusrgb image _ _ _ test _ GrShape serialize-8888 gm _ bleed_image serialize-8888 gm _ c_gms serialize-8888 gm _ colortype serialize-8888 gm _ colortype_xfermodes serialize-8888 gm _ drawfilter serialize-8888 gm _ fontmgr_bounds_0.75_0 serialize-8888 gm _ fontmgr_bounds_1_-0.25 serialize-8888 gm _ fontmgr_bounds serialize-8888 gm _ fontmgr_match serialize-8888 gm _ fontmgr_iter serialize-8888 gm _ imagemasksubset serialize-8888 gm _ bitmapfilters serialize-8888 gm _ bitmapshaders serialize-8888 gm _ bleed serialize-8888 gm _ bleed_alpha_bmp serialize-8888 gm _ bleed_alpha_bmp_shader serialize-8888 gm _ convex_poly_clip serialize-8888 gm _ extractalpha serialize-8888 gm _ filterbitmap_checkerboard_32_32_g8 serialize-8888 gm _ filterbitmap_image_mandrill_64 serialize-8888 gm _ shadows serialize-8888 gm _ simpleaaclip_aaclip serialize-8888 gm _ composeshader_bitmap serialize-8888 gm _ scaled_tilemodes_npot serialize-8888 gm _ scaled_tilemodes serialize-8888 gm _ bleed_alpha_image serialize-8888 gm _ bleed_alpha_image_shader serialize-8888 gm _ verylargebitmap serialize-8888 gm _ verylarge_picture_image pic-8888 gm _ drawfilter pic-8888 gm _ image-cacherator-from-picture serialize-8888 gm _ image-cacherator-from-picture pic-8888 gm _ image-cacherator-from-raster serialize-8888 gm _ image-cacherator-from-raster pic-8888 gm _ image-cacherator-from-ctable serialize-8888 gm _ image-cacherator-from-ctable pic-8888 gm _ gamut serialize-8888 gm _ gamut _ image _ interlaced1.png _ image _ interlaced2.png _ image _ interlaced3.png _ image _ .arw _ image _ .cr2 _ image _ .dng _ image _ .nef _ image _ .nrw _ image _ .orf _ image _ .raf _ image _ .rw2 _ image _ .pef _ image _ .srw _ image _ .ARW _ image _ .CR2 _ image _ .DNG _ image _ .NEF _ image _ .NRW _ image _ .ORF _ image _ .RAF _ image _ .RW2 _ image _ .PEF _ image _ .SRW --match ~WritePixels; echo $? >/data/local/tmp/rc",
"[SLAVE_BUILD]/tmp/dm.sh"
],
"name": "write dm.sh"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/dm.sh",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm.sh"
},
{
"cmd": [
"adb",
"logcat",
"-c"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "clear log"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', '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"
],
"name": "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@bin_dir = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@",
"@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
"@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"pull",
"/sdcard/revenge_of_the_skiabot/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "pull /sdcard/revenge_of_the_skiabot/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
},
{
"cmd": [
"adb",
"logcat",
"-d"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "dump log"
},
{
"cmd": [
"adb",
"reboot"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "reboot"
},
{
"cmd": [
"adb",
"kill-server"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "kill adb server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -0,0 +1,596 @@
[
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skia/resources",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skp",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skp/* /sdcard/revenge_of_the_skiabot/skps",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skimage",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skimage/* /sdcard/revenge_of_the_skiabot/images",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/svg",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/uninteresting_hashes.txt /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/out/Debug/dm",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"set -x; /data/local/tmp/dm --undefok --resourcePath /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/dm --colorImages /sdcard/revenge_of_the_skiabot/images/colorspace --nameByHash --properties gitHash abc123 master client.skia builder Test-Android-Clang-GalaxyS3-GPU-Mali400-arm-Debug-GN_Android build_number 5 --svgs /sdcard/revenge_of_the_skiabot/svgs --key arch arm compiler Clang configuration Debug cpu_or_gpu GPU cpu_or_gpu_value Mali400 extra_config GN_Android model GalaxyS3 os Android --uninterestingHashesFile /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt --writePath /sdcard/revenge_of_the_skiabot/dm_out --nocpu --config 8888 gpu gpusrgb msaa4 serialize-8888 tiles_rt-8888 pic-8888 gpudft --src tests gm image colorImage svg --threads 0 --blacklist gpusrgb image _ _ _ test _ GrShape serialize-8888 gm _ bleed_image serialize-8888 gm _ c_gms serialize-8888 gm _ colortype serialize-8888 gm _ colortype_xfermodes serialize-8888 gm _ drawfilter serialize-8888 gm _ fontmgr_bounds_0.75_0 serialize-8888 gm _ fontmgr_bounds_1_-0.25 serialize-8888 gm _ fontmgr_bounds serialize-8888 gm _ fontmgr_match serialize-8888 gm _ fontmgr_iter serialize-8888 gm _ imagemasksubset serialize-8888 gm _ bitmapfilters serialize-8888 gm _ bitmapshaders serialize-8888 gm _ bleed serialize-8888 gm _ bleed_alpha_bmp serialize-8888 gm _ bleed_alpha_bmp_shader serialize-8888 gm _ convex_poly_clip serialize-8888 gm _ extractalpha serialize-8888 gm _ filterbitmap_checkerboard_32_32_g8 serialize-8888 gm _ filterbitmap_image_mandrill_64 serialize-8888 gm _ shadows serialize-8888 gm _ simpleaaclip_aaclip serialize-8888 gm _ composeshader_bitmap serialize-8888 gm _ scaled_tilemodes_npot serialize-8888 gm _ scaled_tilemodes serialize-8888 gm _ bleed_alpha_image serialize-8888 gm _ bleed_alpha_image_shader serialize-8888 gm _ verylargebitmap serialize-8888 gm _ verylarge_picture_image pic-8888 gm _ drawfilter pic-8888 gm _ image-cacherator-from-picture serialize-8888 gm _ image-cacherator-from-picture pic-8888 gm _ image-cacherator-from-raster serialize-8888 gm _ image-cacherator-from-raster pic-8888 gm _ image-cacherator-from-ctable serialize-8888 gm _ image-cacherator-from-ctable pic-8888 gm _ gamut serialize-8888 gm _ gamut _ image _ interlaced1.png _ image _ interlaced2.png _ image _ interlaced3.png _ image _ .arw _ image _ .cr2 _ image _ .dng _ image _ .nef _ image _ .nrw _ image _ .orf _ image _ .raf _ image _ .rw2 _ image _ .pef _ image _ .srw _ image _ .ARW _ image _ .CR2 _ image _ .DNG _ image _ .NEF _ image _ .NRW _ image _ .ORF _ image _ .RAF _ image _ .RW2 _ image _ .PEF _ image _ .SRW --match ~WritePixels; echo $? >/data/local/tmp/rc",
"[SLAVE_BUILD]/tmp/dm.sh"
],
"name": "write dm.sh"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/dm.sh",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm.sh"
},
{
"cmd": [
"adb",
"logcat",
"-c"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "clear log"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', '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"
],
"name": "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@bin_dir = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@",
"@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
"@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"pull",
"/sdcard/revenge_of_the_skiabot/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "pull /sdcard/revenge_of_the_skiabot/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
},
{
"cmd": [
"adb",
"logcat",
"-d"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "dump log"
},
{
"cmd": [
"adb",
"reboot"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "reboot"
},
{
"cmd": [
"adb",
"kill-server"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "kill adb server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -0,0 +1,596 @@
[
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skia/resources",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skp",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skp/* /sdcard/revenge_of_the_skiabot/skps",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skimage",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skimage/* /sdcard/revenge_of_the_skiabot/images",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/svg",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/uninteresting_hashes.txt /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/out/Debug/dm",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"set -x; /data/local/tmp/dm --undefok --resourcePath /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/dm --colorImages /sdcard/revenge_of_the_skiabot/images/colorspace --nameByHash --properties gitHash abc123 master client.skia builder Test-Android-Clang-NVIDIA_Shield-GPU-TegraX1-arm64-Debug-GN_Android build_number 5 --svgs /sdcard/revenge_of_the_skiabot/svgs --key arch arm64 compiler Clang configuration Debug cpu_or_gpu GPU cpu_or_gpu_value TegraX1 extra_config GN_Android model NVIDIA_Shield os Android --uninterestingHashesFile /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt --writePath /sdcard/revenge_of_the_skiabot/dm_out --nocpu --config 8888 gl glsrgb glmsaa4 glinstdit4 serialize-8888 tiles_rt-8888 pic-8888 glinst --src tests gm image colorImage svg --blacklist glsrgb image _ _ _ test _ GrShape serialize-8888 gm _ bleed_image serialize-8888 gm _ c_gms serialize-8888 gm _ colortype serialize-8888 gm _ colortype_xfermodes serialize-8888 gm _ drawfilter serialize-8888 gm _ fontmgr_bounds_0.75_0 serialize-8888 gm _ fontmgr_bounds_1_-0.25 serialize-8888 gm _ fontmgr_bounds serialize-8888 gm _ fontmgr_match serialize-8888 gm _ fontmgr_iter serialize-8888 gm _ imagemasksubset serialize-8888 gm _ bitmapfilters serialize-8888 gm _ bitmapshaders serialize-8888 gm _ bleed serialize-8888 gm _ bleed_alpha_bmp serialize-8888 gm _ bleed_alpha_bmp_shader serialize-8888 gm _ convex_poly_clip serialize-8888 gm _ extractalpha serialize-8888 gm _ filterbitmap_checkerboard_32_32_g8 serialize-8888 gm _ filterbitmap_image_mandrill_64 serialize-8888 gm _ shadows serialize-8888 gm _ simpleaaclip_aaclip serialize-8888 gm _ composeshader_bitmap serialize-8888 gm _ scaled_tilemodes_npot serialize-8888 gm _ scaled_tilemodes serialize-8888 gm _ bleed_alpha_image serialize-8888 gm _ bleed_alpha_image_shader serialize-8888 gm _ verylargebitmap serialize-8888 gm _ verylarge_picture_image pic-8888 gm _ drawfilter pic-8888 gm _ image-cacherator-from-picture serialize-8888 gm _ image-cacherator-from-picture pic-8888 gm _ image-cacherator-from-raster serialize-8888 gm _ image-cacherator-from-raster pic-8888 gm _ image-cacherator-from-ctable serialize-8888 gm _ image-cacherator-from-ctable pic-8888 gm _ gamut serialize-8888 gm _ gamut _ image _ interlaced1.png _ image _ interlaced2.png _ image _ interlaced3.png _ image _ .arw _ image _ .cr2 _ image _ .dng _ image _ .nef _ image _ .nrw _ image _ .orf _ image _ .raf _ image _ .rw2 _ image _ .pef _ image _ .srw _ image _ .ARW _ image _ .CR2 _ image _ .DNG _ image _ .NEF _ image _ .NRW _ image _ .ORF _ image _ .RAF _ image _ .RW2 _ image _ .PEF _ image _ .SRW; echo $? >/data/local/tmp/rc",
"[SLAVE_BUILD]/tmp/dm.sh"
],
"name": "write dm.sh"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/dm.sh",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm.sh"
},
{
"cmd": [
"adb",
"logcat",
"-c"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "clear log"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', '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"
],
"name": "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@bin_dir = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@",
"@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
"@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"pull",
"/sdcard/revenge_of_the_skiabot/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "pull /sdcard/revenge_of_the_skiabot/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
},
{
"cmd": [
"adb",
"logcat",
"-d"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "dump log"
},
{
"cmd": [
"adb",
"reboot"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "reboot"
},
{
"cmd": [
"adb",
"kill-server"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "kill adb server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -0,0 +1,596 @@
[
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skia/resources",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skp",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skp/* /sdcard/revenge_of_the_skiabot/skps",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skimage",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skimage/* /sdcard/revenge_of_the_skiabot/images",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/svg",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/uninteresting_hashes.txt /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/out/Release/dm",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"set -x; /data/local/tmp/dm --undefok --resourcePath /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/dm --colorImages /sdcard/revenge_of_the_skiabot/images/colorspace --nameByHash --properties gitHash abc123 master client.skia builder Test-Android-Clang-Nexus10-GPU-MaliT604-arm-Release-GN_Android build_number 5 --svgs /sdcard/revenge_of_the_skiabot/svgs --key arch arm compiler Clang configuration Release cpu_or_gpu GPU cpu_or_gpu_value MaliT604 extra_config GN_Android model Nexus10 os Android --uninterestingHashesFile /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt --writePath /sdcard/revenge_of_the_skiabot/dm_out --nocpu --config 8888 gpu gpusrgb msaa4 serialize-8888 tiles_rt-8888 pic-8888 --src tests gm image colorImage svg --blacklist gpusrgb image _ _ _ test _ GrShape serialize-8888 gm _ bleed_image serialize-8888 gm _ c_gms serialize-8888 gm _ colortype serialize-8888 gm _ colortype_xfermodes serialize-8888 gm _ drawfilter serialize-8888 gm _ fontmgr_bounds_0.75_0 serialize-8888 gm _ fontmgr_bounds_1_-0.25 serialize-8888 gm _ fontmgr_bounds serialize-8888 gm _ fontmgr_match serialize-8888 gm _ fontmgr_iter serialize-8888 gm _ imagemasksubset serialize-8888 gm _ bitmapfilters serialize-8888 gm _ bitmapshaders serialize-8888 gm _ bleed serialize-8888 gm _ bleed_alpha_bmp serialize-8888 gm _ bleed_alpha_bmp_shader serialize-8888 gm _ convex_poly_clip serialize-8888 gm _ extractalpha serialize-8888 gm _ filterbitmap_checkerboard_32_32_g8 serialize-8888 gm _ filterbitmap_image_mandrill_64 serialize-8888 gm _ shadows serialize-8888 gm _ simpleaaclip_aaclip serialize-8888 gm _ composeshader_bitmap serialize-8888 gm _ scaled_tilemodes_npot serialize-8888 gm _ scaled_tilemodes serialize-8888 gm _ bleed_alpha_image serialize-8888 gm _ bleed_alpha_image_shader serialize-8888 gm _ verylargebitmap serialize-8888 gm _ verylarge_picture_image pic-8888 gm _ drawfilter pic-8888 gm _ image-cacherator-from-picture serialize-8888 gm _ image-cacherator-from-picture pic-8888 gm _ image-cacherator-from-raster serialize-8888 gm _ image-cacherator-from-raster pic-8888 gm _ image-cacherator-from-ctable serialize-8888 gm _ image-cacherator-from-ctable pic-8888 gm _ gamut serialize-8888 gm _ gamut _ image _ interlaced1.png _ image _ interlaced2.png _ image _ interlaced3.png _ image _ .arw _ image _ .cr2 _ image _ .dng _ image _ .nef _ image _ .nrw _ image _ .orf _ image _ .raf _ image _ .rw2 _ image _ .pef _ image _ .srw _ image _ .ARW _ image _ .CR2 _ image _ .DNG _ image _ .NEF _ image _ .NRW _ image _ .ORF _ image _ .RAF _ image _ .RW2 _ image _ .PEF _ image _ .SRW --match ~CopySurface; echo $? >/data/local/tmp/rc",
"[SLAVE_BUILD]/tmp/dm.sh"
],
"name": "write dm.sh"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/dm.sh",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm.sh"
},
{
"cmd": [
"adb",
"logcat",
"-c"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "clear log"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', '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"
],
"name": "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@bin_dir = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@",
"@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
"@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"pull",
"/sdcard/revenge_of_the_skiabot/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "pull /sdcard/revenge_of_the_skiabot/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
},
{
"cmd": [
"adb",
"logcat",
"-d"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "dump log"
},
{
"cmd": [
"adb",
"reboot"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "reboot"
},
{
"cmd": [
"adb",
"kill-server"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "kill adb server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -0,0 +1,596 @@
[
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skia/resources",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skp",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skp/* /sdcard/revenge_of_the_skiabot/skps",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skimage",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skimage/* /sdcard/revenge_of_the_skiabot/images",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/svg",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/uninteresting_hashes.txt /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/out/Debug/dm",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"set -x; /data/local/tmp/dm --undefok --resourcePath /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/dm --colorImages /sdcard/revenge_of_the_skiabot/images/colorspace --nameByHash --properties gitHash abc123 master client.skia builder Test-Android-Clang-Nexus6-GPU-Adreno420-arm-Debug-GN_Android build_number 5 --svgs /sdcard/revenge_of_the_skiabot/svgs --key arch arm compiler Clang configuration Debug cpu_or_gpu GPU cpu_or_gpu_value Adreno420 extra_config GN_Android model Nexus6 os Android --uninterestingHashesFile /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt --writePath /sdcard/revenge_of_the_skiabot/dm_out --nocpu --config 8888 gpu gpusrgb msaa4 serialize-8888 tiles_rt-8888 pic-8888 esinst --src tests gm image colorImage svg --blacklist gpusrgb image _ _ _ test _ GrShape serialize-8888 gm _ bleed_image serialize-8888 gm _ c_gms serialize-8888 gm _ colortype serialize-8888 gm _ colortype_xfermodes serialize-8888 gm _ drawfilter serialize-8888 gm _ fontmgr_bounds_0.75_0 serialize-8888 gm _ fontmgr_bounds_1_-0.25 serialize-8888 gm _ fontmgr_bounds serialize-8888 gm _ fontmgr_match serialize-8888 gm _ fontmgr_iter serialize-8888 gm _ imagemasksubset serialize-8888 gm _ bitmapfilters serialize-8888 gm _ bitmapshaders serialize-8888 gm _ bleed serialize-8888 gm _ bleed_alpha_bmp serialize-8888 gm _ bleed_alpha_bmp_shader serialize-8888 gm _ convex_poly_clip serialize-8888 gm _ extractalpha serialize-8888 gm _ filterbitmap_checkerboard_32_32_g8 serialize-8888 gm _ filterbitmap_image_mandrill_64 serialize-8888 gm _ shadows serialize-8888 gm _ simpleaaclip_aaclip serialize-8888 gm _ composeshader_bitmap serialize-8888 gm _ scaled_tilemodes_npot serialize-8888 gm _ scaled_tilemodes serialize-8888 gm _ bleed_alpha_image serialize-8888 gm _ bleed_alpha_image_shader serialize-8888 gm _ verylargebitmap serialize-8888 gm _ verylarge_picture_image pic-8888 gm _ drawfilter pic-8888 gm _ image-cacherator-from-picture serialize-8888 gm _ image-cacherator-from-picture pic-8888 gm _ image-cacherator-from-raster serialize-8888 gm _ image-cacherator-from-raster pic-8888 gm _ image-cacherator-from-ctable serialize-8888 gm _ image-cacherator-from-ctable pic-8888 gm _ gamut serialize-8888 gm _ gamut _ image _ interlaced1.png _ image _ interlaced2.png _ image _ interlaced3.png _ image _ .arw _ image _ .cr2 _ image _ .dng _ image _ .nef _ image _ .nrw _ image _ .orf _ image _ .raf _ image _ .rw2 _ image _ .pef _ image _ .srw _ image _ .ARW _ image _ .CR2 _ image _ .DNG _ image _ .NEF _ image _ .NRW _ image _ .ORF _ image _ .RAF _ image _ .RW2 _ image _ .PEF _ image _ .SRW; echo $? >/data/local/tmp/rc",
"[SLAVE_BUILD]/tmp/dm.sh"
],
"name": "write dm.sh"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/dm.sh",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm.sh"
},
{
"cmd": [
"adb",
"logcat",
"-c"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "clear log"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', '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"
],
"name": "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@bin_dir = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@",
"@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
"@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"pull",
"/sdcard/revenge_of_the_skiabot/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "pull /sdcard/revenge_of_the_skiabot/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
},
{
"cmd": [
"adb",
"logcat",
"-d"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "dump log"
},
{
"cmd": [
"adb",
"reboot"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "reboot"
},
{
"cmd": [
"adb",
"kill-server"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "kill adb server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -0,0 +1,596 @@
[
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skia/resources",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skp",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skp/* /sdcard/revenge_of_the_skiabot/skps",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skimage",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skimage/* /sdcard/revenge_of_the_skiabot/images",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/svg",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/uninteresting_hashes.txt /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/out/Debug/dm",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"set -x; /data/local/tmp/dm --undefok --resourcePath /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/dm --colorImages /sdcard/revenge_of_the_skiabot/images/colorspace --nameByHash --properties gitHash abc123 master client.skia builder Test-Android-Clang-Nexus7-GPU-Tegra3-arm-Debug-GN_Android build_number 5 --svgs /sdcard/revenge_of_the_skiabot/svgs --key arch arm compiler Clang configuration Debug cpu_or_gpu GPU cpu_or_gpu_value Tegra3 extra_config GN_Android model Nexus7 os Android --uninterestingHashesFile /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt --writePath /sdcard/revenge_of_the_skiabot/dm_out --nocpu --config 8888 gpu gpusrgb serialize-8888 tiles_rt-8888 pic-8888 --src tests gm image colorImage svg --blacklist gpusrgb image _ _ _ test _ GrShape serialize-8888 gm _ bleed_image serialize-8888 gm _ c_gms serialize-8888 gm _ colortype serialize-8888 gm _ colortype_xfermodes serialize-8888 gm _ drawfilter serialize-8888 gm _ fontmgr_bounds_0.75_0 serialize-8888 gm _ fontmgr_bounds_1_-0.25 serialize-8888 gm _ fontmgr_bounds serialize-8888 gm _ fontmgr_match serialize-8888 gm _ fontmgr_iter serialize-8888 gm _ imagemasksubset serialize-8888 gm _ bitmapfilters serialize-8888 gm _ bitmapshaders serialize-8888 gm _ bleed serialize-8888 gm _ bleed_alpha_bmp serialize-8888 gm _ bleed_alpha_bmp_shader serialize-8888 gm _ convex_poly_clip serialize-8888 gm _ extractalpha serialize-8888 gm _ filterbitmap_checkerboard_32_32_g8 serialize-8888 gm _ filterbitmap_image_mandrill_64 serialize-8888 gm _ shadows serialize-8888 gm _ simpleaaclip_aaclip serialize-8888 gm _ composeshader_bitmap serialize-8888 gm _ scaled_tilemodes_npot serialize-8888 gm _ scaled_tilemodes serialize-8888 gm _ bleed_alpha_image serialize-8888 gm _ bleed_alpha_image_shader serialize-8888 gm _ verylargebitmap serialize-8888 gm _ verylarge_picture_image pic-8888 gm _ drawfilter pic-8888 gm _ image-cacherator-from-picture serialize-8888 gm _ image-cacherator-from-picture pic-8888 gm _ image-cacherator-from-raster serialize-8888 gm _ image-cacherator-from-raster pic-8888 gm _ image-cacherator-from-ctable serialize-8888 gm _ image-cacherator-from-ctable pic-8888 gm _ gamut serialize-8888 gm _ gamut _ image _ interlaced1.png _ image _ interlaced2.png _ image _ interlaced3.png _ image _ .arw _ image _ .cr2 _ image _ .dng _ image _ .nef _ image _ .nrw _ image _ .orf _ image _ .raf _ image _ .rw2 _ image _ .pef _ image _ .srw _ image _ .ARW _ image _ .CR2 _ image _ .DNG _ image _ .NEF _ image _ .NRW _ image _ .ORF _ image _ .RAF _ image _ .RW2 _ image _ .PEF _ image _ .SRW; echo $? >/data/local/tmp/rc",
"[SLAVE_BUILD]/tmp/dm.sh"
],
"name": "write dm.sh"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/dm.sh",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm.sh"
},
{
"cmd": [
"adb",
"logcat",
"-c"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "clear log"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', '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"
],
"name": "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@bin_dir = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@",
"@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
"@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"pull",
"/sdcard/revenge_of_the_skiabot/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "pull /sdcard/revenge_of_the_skiabot/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
},
{
"cmd": [
"adb",
"logcat",
"-d"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "dump log"
},
{
"cmd": [
"adb",
"reboot"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "reboot"
},
{
"cmd": [
"adb",
"kill-server"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "kill adb server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -0,0 +1,596 @@
[
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skia/resources",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skp",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skp/* /sdcard/revenge_of_the_skiabot/skps",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skimage",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skimage/* /sdcard/revenge_of_the_skiabot/images",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/svg",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/uninteresting_hashes.txt /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/out/Debug/dm",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"set -x; /data/local/tmp/dm --undefok --resourcePath /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/dm --colorImages /sdcard/revenge_of_the_skiabot/images/colorspace --nameByHash --properties gitHash abc123 master client.skia builder Test-Android-Clang-Nexus9-CPU-Denver-arm64-Debug-GN_Android build_number 5 --svgs /sdcard/revenge_of_the_skiabot/svgs --key arch arm64 compiler Clang configuration Debug cpu_or_gpu CPU cpu_or_gpu_value Denver extra_config GN_Android model Nexus9 os Android --uninterestingHashesFile /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt --writePath /sdcard/revenge_of_the_skiabot/dm_out --nogpu --config 8888 gpu gpusrgb msaa4 serialize-8888 tiles_rt-8888 pic-8888 --src tests gm image colorImage svg --blacklist gpusrgb image _ _ _ test _ GrShape serialize-8888 gm _ bleed_image serialize-8888 gm _ c_gms serialize-8888 gm _ colortype serialize-8888 gm _ colortype_xfermodes serialize-8888 gm _ drawfilter serialize-8888 gm _ fontmgr_bounds_0.75_0 serialize-8888 gm _ fontmgr_bounds_1_-0.25 serialize-8888 gm _ fontmgr_bounds serialize-8888 gm _ fontmgr_match serialize-8888 gm _ fontmgr_iter serialize-8888 gm _ imagemasksubset serialize-8888 gm _ bitmapfilters serialize-8888 gm _ bitmapshaders serialize-8888 gm _ bleed serialize-8888 gm _ bleed_alpha_bmp serialize-8888 gm _ bleed_alpha_bmp_shader serialize-8888 gm _ convex_poly_clip serialize-8888 gm _ extractalpha serialize-8888 gm _ filterbitmap_checkerboard_32_32_g8 serialize-8888 gm _ filterbitmap_image_mandrill_64 serialize-8888 gm _ shadows serialize-8888 gm _ simpleaaclip_aaclip serialize-8888 gm _ composeshader_bitmap serialize-8888 gm _ scaled_tilemodes_npot serialize-8888 gm _ scaled_tilemodes serialize-8888 gm _ bleed_alpha_image serialize-8888 gm _ bleed_alpha_image_shader serialize-8888 gm _ verylargebitmap serialize-8888 gm _ verylarge_picture_image pic-8888 gm _ drawfilter pic-8888 gm _ image-cacherator-from-picture serialize-8888 gm _ image-cacherator-from-picture pic-8888 gm _ image-cacherator-from-raster serialize-8888 gm _ image-cacherator-from-raster pic-8888 gm _ image-cacherator-from-ctable serialize-8888 gm _ image-cacherator-from-ctable pic-8888 gm _ gamut serialize-8888 gm _ gamut _ image _ .arw _ image _ .cr2 _ image _ .dng _ image _ .nef _ image _ .nrw _ image _ .orf _ image _ .raf _ image _ .rw2 _ image _ .pef _ image _ .srw _ image _ .ARW _ image _ .CR2 _ image _ .DNG _ image _ .NEF _ image _ .NRW _ image _ .ORF _ image _ .RAF _ image _ .RW2 _ image _ .PEF _ image _ .SRW --noRAW_threading; echo $? >/data/local/tmp/rc",
"[SLAVE_BUILD]/tmp/dm.sh"
],
"name": "write dm.sh"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/dm.sh",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm.sh"
},
{
"cmd": [
"adb",
"logcat",
"-c"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "clear log"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', '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"
],
"name": "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@bin_dir = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@",
"@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
"@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"pull",
"/sdcard/revenge_of_the_skiabot/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "pull /sdcard/revenge_of_the_skiabot/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
},
{
"cmd": [
"adb",
"logcat",
"-d"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "dump log"
},
{
"cmd": [
"adb",
"reboot"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "reboot"
},
{
"cmd": [
"adb",
"kill-server"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "kill adb server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -0,0 +1,596 @@
[
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/resources"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skia/resources",
"/sdcard/revenge_of_the_skiabot/resources"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/skps"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skp",
"/sdcard/revenge_of_the_skiabot/skps"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skp/* /sdcard/revenge_of_the_skiabot/skps",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/sdcard/revenge_of_the_skiabot/SKP_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/images"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/skimage",
"/sdcard/revenge_of_the_skiabot/images"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/skimage/* /sdcard/revenge_of_the_skiabot/images",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"cat",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-f",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/svgs"
},
{
"cmd": [
"python",
"-u",
"\nimport os\nimport subprocess\nimport sys\nhost = sys.argv[1]\ndevice = sys.argv[2]\nfor d, _, fs in os.walk(host):\n p = os.path.relpath(d, host)\n if p != '.' and p.startswith('.'):\n continue\n for f in fs:\n print os.path.join(p,f)\n subprocess.check_call(['adb', 'push',\n os.path.realpath(os.path.join(host, p, f)),\n os.path.join(device, p, f)])\n",
"[SLAVE_BUILD]/svg",
"/sdcard/revenge_of_the_skiabot/svgs"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/svg/* /sdcard/revenge_of_the_skiabot/svgs",
"~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@host = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@device = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@for d, _, fs in os.walk(host):@@@",
"@@@STEP_LOG_LINE@python.inline@ p = os.path.relpath(d, host)@@@",
"@@@STEP_LOG_LINE@python.inline@ if p != '.' and p.startswith('.'):@@@",
"@@@STEP_LOG_LINE@python.inline@ continue@@@",
"@@@STEP_LOG_LINE@python.inline@ for f in fs:@@@",
"@@@STEP_LOG_LINE@python.inline@ print os.path.join(p,f)@@@",
"@@@STEP_LOG_LINE@python.inline@ subprocess.check_call(['adb', 'push',@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.realpath(os.path.join(host, p, f)),@@@",
"@@@STEP_LOG_LINE@python.inline@ os.path.join(device, p, f)])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"/sdcard/revenge_of_the_skiabot/SVG_VERSION"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"shell",
"rm",
"-rf",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "rm /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"adb",
"shell",
"mkdir",
"-p",
"/sdcard/revenge_of_the_skiabot/dm_out"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "mkdir /sdcard/revenge_of_the_skiabot/dm_out"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push [SLAVE_BUILD]/tmp/uninteresting_hashes.txt /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/out/Release/dm",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"set -x; /data/local/tmp/dm --undefok --resourcePath /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/dm --colorImages /sdcard/revenge_of_the_skiabot/images/colorspace --nameByHash --properties gitHash abc123 master client.skia builder Test-Android-Clang-NexusPlayer-CPU-SSE4-x86-Release-GN_Android build_number 5 --svgs /sdcard/revenge_of_the_skiabot/svgs --key arch x86 compiler Clang configuration Release cpu_or_gpu CPU cpu_or_gpu_value SSE4 extra_config GN_Android model NexusPlayer os Android --uninterestingHashesFile /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt --writePath /sdcard/revenge_of_the_skiabot/dm_out --nogpu --config 8888 gpu gpusrgb --src tests gm image colorImage svg --blacklist gpusrgb image _ _ _ test _ GrShape --match ~ResourceCache --noRAW_threading; echo $? >/data/local/tmp/rc",
"[SLAVE_BUILD]/tmp/dm.sh"
],
"name": "write dm.sh"
},
{
"cmd": [
"adb",
"push",
"[SLAVE_BUILD]/tmp/dm.sh",
"/data/local/tmp/"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "push dm.sh"
},
{
"cmd": [
"adb",
"logcat",
"-c"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "clear log"
},
{
"cmd": [
"python",
"-u",
"\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['adb', '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"
],
"name": "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@bin_dir = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@",
"@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['adb', 'shell', 'sh', bin_dir + sh])@@@",
"@@@STEP_LOG_LINE@python.inline@try:@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['adb', 'shell', 'cat',@@@",
"@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@",
"@@@STEP_LOG_LINE@python.inline@except ValueError:@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"Couldn't read the return code. Probably killed for OOM.\"@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"adb",
"pull",
"/sdcard/revenge_of_the_skiabot/dm_out",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "pull /sdcard/revenge_of_the_skiabot/dm_out [CUSTOM_[SWARM_OUT_DIR]]/dm"
},
{
"cmd": [
"adb",
"logcat",
"-d"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "dump log"
},
{
"cmd": [
"adb",
"reboot"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "reboot"
},
{
"cmd": [
"adb",
"kill-server"
],
"cwd": "[SLAVE_BUILD]/skia",
"name": "kill adb server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,913 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"root"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "rmdir skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_dm",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "exists skia_dm",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_dm"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push uninteresting_hashes.txt"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm_v7_neon",
"-t",
"Release",
"dm",
"--undefok",
"--resourcePath",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/dm",
"--colorImages",
"/storage/emulated/legacy/skiabot/skia_images/colorspace",
"--nameByHash",
"--properties",
"gitHash",
"abc123",
"master",
"client.skia",
"builder",
"Test-Android-GCC-AndroidOne-GPU-Mali400MP2-Arm7-Release",
"build_number",
"5",
"--svgs",
"/storage/emulated/legacy/skiabot/skia_svg/svgs",
"--key",
"arch",
"Arm7",
"compiler",
"GCC",
"configuration",
"Release",
"cpu_or_gpu",
"GPU",
"cpu_or_gpu_value",
"Mali400MP2",
"model",
"AndroidOne",
"os",
"Android",
"--uninterestingHashesFile",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt",
"--writePath",
"/storage/emulated/legacy/skiabot/skia_dm",
"--nocpu",
"--config",
"8888",
"gpu",
"gpusrgb",
"msaa4",
"serialize-8888",
"tiles_rt-8888",
"pic-8888",
"--src",
"tests",
"gm",
"image",
"colorImage",
"svg",
"--blacklist",
"gpusrgb",
"image",
"_",
"_",
"_",
"test",
"_",
"GrShape",
"serialize-8888",
"gm",
"_",
"bleed_image",
"serialize-8888",
"gm",
"_",
"c_gms",
"serialize-8888",
"gm",
"_",
"colortype",
"serialize-8888",
"gm",
"_",
"colortype_xfermodes",
"serialize-8888",
"gm",
"_",
"drawfilter",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_0.75_0",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_1_-0.25",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds",
"serialize-8888",
"gm",
"_",
"fontmgr_match",
"serialize-8888",
"gm",
"_",
"fontmgr_iter",
"serialize-8888",
"gm",
"_",
"imagemasksubset",
"serialize-8888",
"gm",
"_",
"bitmapfilters",
"serialize-8888",
"gm",
"_",
"bitmapshaders",
"serialize-8888",
"gm",
"_",
"bleed",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp_shader",
"serialize-8888",
"gm",
"_",
"convex_poly_clip",
"serialize-8888",
"gm",
"_",
"extractalpha",
"serialize-8888",
"gm",
"_",
"filterbitmap_checkerboard_32_32_g8",
"serialize-8888",
"gm",
"_",
"filterbitmap_image_mandrill_64",
"serialize-8888",
"gm",
"_",
"shadows",
"serialize-8888",
"gm",
"_",
"simpleaaclip_aaclip",
"serialize-8888",
"gm",
"_",
"composeshader_bitmap",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes_npot",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image_shader",
"serialize-8888",
"gm",
"_",
"verylargebitmap",
"serialize-8888",
"gm",
"_",
"verylarge_picture_image",
"pic-8888",
"gm",
"_",
"drawfilter",
"pic-8888",
"gm",
"_",
"image-cacherator-from-picture",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-picture",
"pic-8888",
"gm",
"_",
"image-cacherator-from-raster",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-raster",
"pic-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"pic-8888",
"gm",
"_",
"gamut",
"serialize-8888",
"gm",
"_",
"gamut",
"_",
"image",
"_",
"interlaced1.png",
"_",
"image",
"_",
"interlaced2.png",
"_",
"image",
"_",
"interlaced3.png",
"_",
"image",
"_",
".arw",
"_",
"image",
"_",
".cr2",
"_",
"image",
"_",
".dng",
"_",
"image",
"_",
".nef",
"_",
"image",
"_",
".nrw",
"_",
"image",
"_",
".orf",
"_",
"image",
"_",
".raf",
"_",
"image",
"_",
".rw2",
"_",
"image",
"_",
".pef",
"_",
"image",
"_",
".srw",
"_",
"image",
"_",
".ARW",
"_",
"image",
"_",
".CR2",
"_",
"image",
"_",
".DNG",
"_",
"image",
"_",
".NEF",
"_",
"image",
"_",
".NRW",
"_",
"image",
"_",
".ORF",
"_",
"image",
"_",
".RAF",
"_",
"image",
"_",
".RW2",
"_",
"image",
"_",
".PEF",
"_",
"image",
"_",
".SRW",
"--match",
"~WritePixels"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "dm"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_dm",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "pull skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,822 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "rmdir skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_dm",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "exists skia_dm",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_dm"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push uninteresting_hashes.txt"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm_v7_neon",
"-t",
"Debug",
"dm",
"--undefok",
"--resourcePath",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/dm",
"--colorImages",
"/storage/emulated/legacy/skiabot/skia_images/colorspace",
"--nameByHash",
"--properties",
"gitHash",
"abc123",
"master",
"client.skia",
"builder",
"Test-Android-GCC-GalaxyS3-GPU-Mali400-Arm7-Debug",
"build_number",
"5",
"--svgs",
"/storage/emulated/legacy/skiabot/skia_svg/svgs",
"--key",
"arch",
"Arm7",
"compiler",
"GCC",
"configuration",
"Debug",
"cpu_or_gpu",
"GPU",
"cpu_or_gpu_value",
"Mali400",
"model",
"GalaxyS3",
"os",
"Android",
"--uninterestingHashesFile",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt",
"--writePath",
"/storage/emulated/legacy/skiabot/skia_dm",
"--nocpu",
"--config",
"8888",
"gpu",
"gpusrgb",
"msaa4",
"serialize-8888",
"tiles_rt-8888",
"pic-8888",
"gpudft",
"--src",
"tests",
"gm",
"image",
"colorImage",
"svg",
"--threads",
"0",
"--blacklist",
"gpusrgb",
"image",
"_",
"_",
"_",
"test",
"_",
"GrShape",
"serialize-8888",
"gm",
"_",
"bleed_image",
"serialize-8888",
"gm",
"_",
"c_gms",
"serialize-8888",
"gm",
"_",
"colortype",
"serialize-8888",
"gm",
"_",
"colortype_xfermodes",
"serialize-8888",
"gm",
"_",
"drawfilter",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_0.75_0",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_1_-0.25",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds",
"serialize-8888",
"gm",
"_",
"fontmgr_match",
"serialize-8888",
"gm",
"_",
"fontmgr_iter",
"serialize-8888",
"gm",
"_",
"imagemasksubset",
"serialize-8888",
"gm",
"_",
"bitmapfilters",
"serialize-8888",
"gm",
"_",
"bitmapshaders",
"serialize-8888",
"gm",
"_",
"bleed",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp_shader",
"serialize-8888",
"gm",
"_",
"convex_poly_clip",
"serialize-8888",
"gm",
"_",
"extractalpha",
"serialize-8888",
"gm",
"_",
"filterbitmap_checkerboard_32_32_g8",
"serialize-8888",
"gm",
"_",
"filterbitmap_image_mandrill_64",
"serialize-8888",
"gm",
"_",
"shadows",
"serialize-8888",
"gm",
"_",
"simpleaaclip_aaclip",
"serialize-8888",
"gm",
"_",
"composeshader_bitmap",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes_npot",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image_shader",
"serialize-8888",
"gm",
"_",
"verylargebitmap",
"serialize-8888",
"gm",
"_",
"verylarge_picture_image",
"pic-8888",
"gm",
"_",
"drawfilter",
"pic-8888",
"gm",
"_",
"image-cacherator-from-picture",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-picture",
"pic-8888",
"gm",
"_",
"image-cacherator-from-raster",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-raster",
"pic-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"pic-8888",
"gm",
"_",
"gamut",
"serialize-8888",
"gm",
"_",
"gamut",
"_",
"image",
"_",
"interlaced1.png",
"_",
"image",
"_",
"interlaced2.png",
"_",
"image",
"_",
"interlaced3.png",
"_",
"image",
"_",
".arw",
"_",
"image",
"_",
".cr2",
"_",
"image",
"_",
".dng",
"_",
"image",
"_",
".nef",
"_",
"image",
"_",
".nrw",
"_",
"image",
"_",
".orf",
"_",
"image",
"_",
".raf",
"_",
"image",
"_",
".rw2",
"_",
"image",
"_",
".pef",
"_",
"image",
"_",
".srw",
"_",
"image",
"_",
".ARW",
"_",
"image",
"_",
".CR2",
"_",
"image",
"_",
".DNG",
"_",
"image",
"_",
".NEF",
"_",
"image",
"_",
".NRW",
"_",
"image",
"_",
".ORF",
"_",
"image",
"_",
".RAF",
"_",
"image",
"_",
".RW2",
"_",
"image",
"_",
".PEF",
"_",
"image",
"_",
".SRW",
"--match",
"~WritePixels"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "dm"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_dm",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "pull skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,913 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"root"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "rmdir skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_dm",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "exists skia_dm",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_dm"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push uninteresting_hashes.txt"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm64",
"-t",
"Debug",
"dm",
"--undefok",
"--resourcePath",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/dm",
"--colorImages",
"/storage/emulated/legacy/skiabot/skia_images/colorspace",
"--nameByHash",
"--properties",
"gitHash",
"abc123",
"master",
"client.skia",
"builder",
"Test-Android-GCC-NVIDIA_Shield-GPU-TegraX1-Arm64-Debug",
"build_number",
"5",
"--svgs",
"/storage/emulated/legacy/skiabot/skia_svg/svgs",
"--key",
"arch",
"Arm64",
"compiler",
"GCC",
"configuration",
"Debug",
"cpu_or_gpu",
"GPU",
"cpu_or_gpu_value",
"TegraX1",
"model",
"NVIDIA_Shield",
"os",
"Android",
"--uninterestingHashesFile",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt",
"--writePath",
"/storage/emulated/legacy/skiabot/skia_dm",
"--nocpu",
"--config",
"8888",
"gl",
"glsrgb",
"glmsaa4",
"glinstdit4",
"serialize-8888",
"tiles_rt-8888",
"pic-8888",
"glinst",
"--src",
"tests",
"gm",
"image",
"colorImage",
"svg",
"--blacklist",
"glsrgb",
"image",
"_",
"_",
"_",
"test",
"_",
"GrShape",
"serialize-8888",
"gm",
"_",
"bleed_image",
"serialize-8888",
"gm",
"_",
"c_gms",
"serialize-8888",
"gm",
"_",
"colortype",
"serialize-8888",
"gm",
"_",
"colortype_xfermodes",
"serialize-8888",
"gm",
"_",
"drawfilter",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_0.75_0",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_1_-0.25",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds",
"serialize-8888",
"gm",
"_",
"fontmgr_match",
"serialize-8888",
"gm",
"_",
"fontmgr_iter",
"serialize-8888",
"gm",
"_",
"imagemasksubset",
"serialize-8888",
"gm",
"_",
"bitmapfilters",
"serialize-8888",
"gm",
"_",
"bitmapshaders",
"serialize-8888",
"gm",
"_",
"bleed",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp_shader",
"serialize-8888",
"gm",
"_",
"convex_poly_clip",
"serialize-8888",
"gm",
"_",
"extractalpha",
"serialize-8888",
"gm",
"_",
"filterbitmap_checkerboard_32_32_g8",
"serialize-8888",
"gm",
"_",
"filterbitmap_image_mandrill_64",
"serialize-8888",
"gm",
"_",
"shadows",
"serialize-8888",
"gm",
"_",
"simpleaaclip_aaclip",
"serialize-8888",
"gm",
"_",
"composeshader_bitmap",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes_npot",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image_shader",
"serialize-8888",
"gm",
"_",
"verylargebitmap",
"serialize-8888",
"gm",
"_",
"verylarge_picture_image",
"pic-8888",
"gm",
"_",
"drawfilter",
"pic-8888",
"gm",
"_",
"image-cacherator-from-picture",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-picture",
"pic-8888",
"gm",
"_",
"image-cacherator-from-raster",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-raster",
"pic-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"pic-8888",
"gm",
"_",
"gamut",
"serialize-8888",
"gm",
"_",
"gamut",
"_",
"image",
"_",
"interlaced1.png",
"_",
"image",
"_",
"interlaced2.png",
"_",
"image",
"_",
"interlaced3.png",
"_",
"image",
"_",
".arw",
"_",
"image",
"_",
".cr2",
"_",
"image",
"_",
".dng",
"_",
"image",
"_",
".nef",
"_",
"image",
"_",
".nrw",
"_",
"image",
"_",
".orf",
"_",
"image",
"_",
".raf",
"_",
"image",
"_",
".rw2",
"_",
"image",
"_",
".pef",
"_",
"image",
"_",
".srw",
"_",
"image",
"_",
".ARW",
"_",
"image",
"_",
".CR2",
"_",
"image",
"_",
".DNG",
"_",
"image",
"_",
".NEF",
"_",
"image",
"_",
".NRW",
"_",
"image",
"_",
".ORF",
"_",
"image",
"_",
".RAF",
"_",
"image",
"_",
".RW2",
"_",
"image",
"_",
".PEF",
"_",
"image",
"_",
".SRW"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "dm"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_dm",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "pull skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,913 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"root"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "rmdir skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_dm",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "exists skia_dm",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_dm"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push uninteresting_hashes.txt"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm_v7_neon",
"-t",
"Release",
"dm",
"--undefok",
"--resourcePath",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/dm",
"--colorImages",
"/storage/emulated/legacy/skiabot/skia_images/colorspace",
"--nameByHash",
"--properties",
"gitHash",
"abc123",
"master",
"client.skia",
"builder",
"Test-Android-GCC-Nexus10-GPU-MaliT604-Arm7-Release",
"build_number",
"5",
"--svgs",
"/storage/emulated/legacy/skiabot/skia_svg/svgs",
"--key",
"arch",
"Arm7",
"compiler",
"GCC",
"configuration",
"Release",
"cpu_or_gpu",
"GPU",
"cpu_or_gpu_value",
"MaliT604",
"model",
"Nexus10",
"os",
"Android",
"--uninterestingHashesFile",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt",
"--writePath",
"/storage/emulated/legacy/skiabot/skia_dm",
"--nocpu",
"--config",
"8888",
"gpu",
"gpusrgb",
"msaa4",
"serialize-8888",
"tiles_rt-8888",
"pic-8888",
"--src",
"tests",
"gm",
"image",
"colorImage",
"svg",
"--blacklist",
"gpusrgb",
"image",
"_",
"_",
"_",
"test",
"_",
"GrShape",
"serialize-8888",
"gm",
"_",
"bleed_image",
"serialize-8888",
"gm",
"_",
"c_gms",
"serialize-8888",
"gm",
"_",
"colortype",
"serialize-8888",
"gm",
"_",
"colortype_xfermodes",
"serialize-8888",
"gm",
"_",
"drawfilter",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_0.75_0",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_1_-0.25",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds",
"serialize-8888",
"gm",
"_",
"fontmgr_match",
"serialize-8888",
"gm",
"_",
"fontmgr_iter",
"serialize-8888",
"gm",
"_",
"imagemasksubset",
"serialize-8888",
"gm",
"_",
"bitmapfilters",
"serialize-8888",
"gm",
"_",
"bitmapshaders",
"serialize-8888",
"gm",
"_",
"bleed",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp_shader",
"serialize-8888",
"gm",
"_",
"convex_poly_clip",
"serialize-8888",
"gm",
"_",
"extractalpha",
"serialize-8888",
"gm",
"_",
"filterbitmap_checkerboard_32_32_g8",
"serialize-8888",
"gm",
"_",
"filterbitmap_image_mandrill_64",
"serialize-8888",
"gm",
"_",
"shadows",
"serialize-8888",
"gm",
"_",
"simpleaaclip_aaclip",
"serialize-8888",
"gm",
"_",
"composeshader_bitmap",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes_npot",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image_shader",
"serialize-8888",
"gm",
"_",
"verylargebitmap",
"serialize-8888",
"gm",
"_",
"verylarge_picture_image",
"pic-8888",
"gm",
"_",
"drawfilter",
"pic-8888",
"gm",
"_",
"image-cacherator-from-picture",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-picture",
"pic-8888",
"gm",
"_",
"image-cacherator-from-raster",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-raster",
"pic-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"pic-8888",
"gm",
"_",
"gamut",
"serialize-8888",
"gm",
"_",
"gamut",
"_",
"image",
"_",
"interlaced1.png",
"_",
"image",
"_",
"interlaced2.png",
"_",
"image",
"_",
"interlaced3.png",
"_",
"image",
"_",
".arw",
"_",
"image",
"_",
".cr2",
"_",
"image",
"_",
".dng",
"_",
"image",
"_",
".nef",
"_",
"image",
"_",
".nrw",
"_",
"image",
"_",
".orf",
"_",
"image",
"_",
".raf",
"_",
"image",
"_",
".rw2",
"_",
"image",
"_",
".pef",
"_",
"image",
"_",
".srw",
"_",
"image",
"_",
".ARW",
"_",
"image",
"_",
".CR2",
"_",
"image",
"_",
".DNG",
"_",
"image",
"_",
".NEF",
"_",
"image",
"_",
".NRW",
"_",
"image",
"_",
".ORF",
"_",
"image",
"_",
".RAF",
"_",
"image",
"_",
".RW2",
"_",
"image",
"_",
".PEF",
"_",
"image",
"_",
".SRW",
"--match",
"~CopySurface"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "dm"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_dm",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "pull skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,912 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"root"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "rmdir skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_dm",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "exists skia_dm",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_dm"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push uninteresting_hashes.txt"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm_v7_neon",
"-t",
"Debug",
"dm",
"--undefok",
"--resourcePath",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/dm",
"--colorImages",
"/storage/emulated/legacy/skiabot/skia_images/colorspace",
"--nameByHash",
"--properties",
"gitHash",
"abc123",
"master",
"client.skia",
"builder",
"Test-Android-GCC-Nexus6-GPU-Adreno420-Arm7-Debug",
"build_number",
"5",
"--svgs",
"/storage/emulated/legacy/skiabot/skia_svg/svgs",
"--key",
"arch",
"Arm7",
"compiler",
"GCC",
"configuration",
"Debug",
"cpu_or_gpu",
"GPU",
"cpu_or_gpu_value",
"Adreno420",
"model",
"Nexus6",
"os",
"Android",
"--uninterestingHashesFile",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt",
"--writePath",
"/storage/emulated/legacy/skiabot/skia_dm",
"--nocpu",
"--config",
"8888",
"gpu",
"gpusrgb",
"msaa4",
"serialize-8888",
"tiles_rt-8888",
"pic-8888",
"esinst",
"--src",
"tests",
"gm",
"image",
"colorImage",
"svg",
"--blacklist",
"gpusrgb",
"image",
"_",
"_",
"_",
"test",
"_",
"GrShape",
"serialize-8888",
"gm",
"_",
"bleed_image",
"serialize-8888",
"gm",
"_",
"c_gms",
"serialize-8888",
"gm",
"_",
"colortype",
"serialize-8888",
"gm",
"_",
"colortype_xfermodes",
"serialize-8888",
"gm",
"_",
"drawfilter",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_0.75_0",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_1_-0.25",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds",
"serialize-8888",
"gm",
"_",
"fontmgr_match",
"serialize-8888",
"gm",
"_",
"fontmgr_iter",
"serialize-8888",
"gm",
"_",
"imagemasksubset",
"serialize-8888",
"gm",
"_",
"bitmapfilters",
"serialize-8888",
"gm",
"_",
"bitmapshaders",
"serialize-8888",
"gm",
"_",
"bleed",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp_shader",
"serialize-8888",
"gm",
"_",
"convex_poly_clip",
"serialize-8888",
"gm",
"_",
"extractalpha",
"serialize-8888",
"gm",
"_",
"filterbitmap_checkerboard_32_32_g8",
"serialize-8888",
"gm",
"_",
"filterbitmap_image_mandrill_64",
"serialize-8888",
"gm",
"_",
"shadows",
"serialize-8888",
"gm",
"_",
"simpleaaclip_aaclip",
"serialize-8888",
"gm",
"_",
"composeshader_bitmap",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes_npot",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image_shader",
"serialize-8888",
"gm",
"_",
"verylargebitmap",
"serialize-8888",
"gm",
"_",
"verylarge_picture_image",
"pic-8888",
"gm",
"_",
"drawfilter",
"pic-8888",
"gm",
"_",
"image-cacherator-from-picture",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-picture",
"pic-8888",
"gm",
"_",
"image-cacherator-from-raster",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-raster",
"pic-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"pic-8888",
"gm",
"_",
"gamut",
"serialize-8888",
"gm",
"_",
"gamut",
"_",
"image",
"_",
"interlaced1.png",
"_",
"image",
"_",
"interlaced2.png",
"_",
"image",
"_",
"interlaced3.png",
"_",
"image",
"_",
".arw",
"_",
"image",
"_",
".cr2",
"_",
"image",
"_",
".dng",
"_",
"image",
"_",
".nef",
"_",
"image",
"_",
".nrw",
"_",
"image",
"_",
".orf",
"_",
"image",
"_",
".raf",
"_",
"image",
"_",
".rw2",
"_",
"image",
"_",
".pef",
"_",
"image",
"_",
".srw",
"_",
"image",
"_",
".ARW",
"_",
"image",
"_",
".CR2",
"_",
"image",
"_",
".DNG",
"_",
"image",
"_",
".NEF",
"_",
"image",
"_",
".NRW",
"_",
"image",
"_",
".ORF",
"_",
"image",
"_",
".RAF",
"_",
"image",
"_",
".RW2",
"_",
"image",
"_",
".PEF",
"_",
"image",
"_",
".SRW"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "dm"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_dm",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "pull skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,910 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"root"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "rmdir skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_dm",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "exists skia_dm",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_dm"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push uninteresting_hashes.txt"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm_v7_neon",
"-t",
"Debug",
"dm",
"--undefok",
"--resourcePath",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/dm",
"--colorImages",
"/storage/emulated/legacy/skiabot/skia_images/colorspace",
"--nameByHash",
"--properties",
"gitHash",
"abc123",
"master",
"client.skia",
"builder",
"Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Debug",
"build_number",
"5",
"--svgs",
"/storage/emulated/legacy/skiabot/skia_svg/svgs",
"--key",
"arch",
"Arm7",
"compiler",
"GCC",
"configuration",
"Debug",
"cpu_or_gpu",
"GPU",
"cpu_or_gpu_value",
"Tegra3",
"model",
"Nexus7",
"os",
"Android",
"--uninterestingHashesFile",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt",
"--writePath",
"/storage/emulated/legacy/skiabot/skia_dm",
"--nocpu",
"--config",
"8888",
"gpu",
"gpusrgb",
"serialize-8888",
"tiles_rt-8888",
"pic-8888",
"--src",
"tests",
"gm",
"image",
"colorImage",
"svg",
"--blacklist",
"gpusrgb",
"image",
"_",
"_",
"_",
"test",
"_",
"GrShape",
"serialize-8888",
"gm",
"_",
"bleed_image",
"serialize-8888",
"gm",
"_",
"c_gms",
"serialize-8888",
"gm",
"_",
"colortype",
"serialize-8888",
"gm",
"_",
"colortype_xfermodes",
"serialize-8888",
"gm",
"_",
"drawfilter",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_0.75_0",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_1_-0.25",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds",
"serialize-8888",
"gm",
"_",
"fontmgr_match",
"serialize-8888",
"gm",
"_",
"fontmgr_iter",
"serialize-8888",
"gm",
"_",
"imagemasksubset",
"serialize-8888",
"gm",
"_",
"bitmapfilters",
"serialize-8888",
"gm",
"_",
"bitmapshaders",
"serialize-8888",
"gm",
"_",
"bleed",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp_shader",
"serialize-8888",
"gm",
"_",
"convex_poly_clip",
"serialize-8888",
"gm",
"_",
"extractalpha",
"serialize-8888",
"gm",
"_",
"filterbitmap_checkerboard_32_32_g8",
"serialize-8888",
"gm",
"_",
"filterbitmap_image_mandrill_64",
"serialize-8888",
"gm",
"_",
"shadows",
"serialize-8888",
"gm",
"_",
"simpleaaclip_aaclip",
"serialize-8888",
"gm",
"_",
"composeshader_bitmap",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes_npot",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image_shader",
"serialize-8888",
"gm",
"_",
"verylargebitmap",
"serialize-8888",
"gm",
"_",
"verylarge_picture_image",
"pic-8888",
"gm",
"_",
"drawfilter",
"pic-8888",
"gm",
"_",
"image-cacherator-from-picture",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-picture",
"pic-8888",
"gm",
"_",
"image-cacherator-from-raster",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-raster",
"pic-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"pic-8888",
"gm",
"_",
"gamut",
"serialize-8888",
"gm",
"_",
"gamut",
"_",
"image",
"_",
"interlaced1.png",
"_",
"image",
"_",
"interlaced2.png",
"_",
"image",
"_",
"interlaced3.png",
"_",
"image",
"_",
".arw",
"_",
"image",
"_",
".cr2",
"_",
"image",
"_",
".dng",
"_",
"image",
"_",
".nef",
"_",
"image",
"_",
".nrw",
"_",
"image",
"_",
".orf",
"_",
"image",
"_",
".raf",
"_",
"image",
"_",
".rw2",
"_",
"image",
"_",
".pef",
"_",
"image",
"_",
".srw",
"_",
"image",
"_",
".ARW",
"_",
"image",
"_",
".CR2",
"_",
"image",
"_",
".DNG",
"_",
"image",
"_",
".NEF",
"_",
"image",
"_",
".NRW",
"_",
"image",
"_",
".ORF",
"_",
"image",
"_",
".RAF",
"_",
"image",
"_",
".RW2",
"_",
"image",
"_",
".PEF",
"_",
"image",
"_",
".SRW"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "dm"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_dm",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "pull skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,900 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"root"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "rmdir skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_dm",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "exists skia_dm",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_dm"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push uninteresting_hashes.txt"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm64",
"-t",
"Debug",
"dm",
"--undefok",
"--resourcePath",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/dm",
"--colorImages",
"/storage/emulated/legacy/skiabot/skia_images/colorspace",
"--nameByHash",
"--properties",
"gitHash",
"abc123",
"master",
"client.skia",
"builder",
"Test-Android-GCC-Nexus9-CPU-Denver-Arm64-Debug",
"build_number",
"5",
"--svgs",
"/storage/emulated/legacy/skiabot/skia_svg/svgs",
"--key",
"arch",
"Arm64",
"compiler",
"GCC",
"configuration",
"Debug",
"cpu_or_gpu",
"CPU",
"cpu_or_gpu_value",
"Denver",
"model",
"Nexus9",
"os",
"Android",
"--uninterestingHashesFile",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt",
"--writePath",
"/storage/emulated/legacy/skiabot/skia_dm",
"--nogpu",
"--config",
"8888",
"gpu",
"gpusrgb",
"msaa4",
"serialize-8888",
"tiles_rt-8888",
"pic-8888",
"--src",
"tests",
"gm",
"image",
"colorImage",
"svg",
"--blacklist",
"gpusrgb",
"image",
"_",
"_",
"_",
"test",
"_",
"GrShape",
"serialize-8888",
"gm",
"_",
"bleed_image",
"serialize-8888",
"gm",
"_",
"c_gms",
"serialize-8888",
"gm",
"_",
"colortype",
"serialize-8888",
"gm",
"_",
"colortype_xfermodes",
"serialize-8888",
"gm",
"_",
"drawfilter",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_0.75_0",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_1_-0.25",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds",
"serialize-8888",
"gm",
"_",
"fontmgr_match",
"serialize-8888",
"gm",
"_",
"fontmgr_iter",
"serialize-8888",
"gm",
"_",
"imagemasksubset",
"serialize-8888",
"gm",
"_",
"bitmapfilters",
"serialize-8888",
"gm",
"_",
"bitmapshaders",
"serialize-8888",
"gm",
"_",
"bleed",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp_shader",
"serialize-8888",
"gm",
"_",
"convex_poly_clip",
"serialize-8888",
"gm",
"_",
"extractalpha",
"serialize-8888",
"gm",
"_",
"filterbitmap_checkerboard_32_32_g8",
"serialize-8888",
"gm",
"_",
"filterbitmap_image_mandrill_64",
"serialize-8888",
"gm",
"_",
"shadows",
"serialize-8888",
"gm",
"_",
"simpleaaclip_aaclip",
"serialize-8888",
"gm",
"_",
"composeshader_bitmap",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes_npot",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image_shader",
"serialize-8888",
"gm",
"_",
"verylargebitmap",
"serialize-8888",
"gm",
"_",
"verylarge_picture_image",
"pic-8888",
"gm",
"_",
"drawfilter",
"pic-8888",
"gm",
"_",
"image-cacherator-from-picture",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-picture",
"pic-8888",
"gm",
"_",
"image-cacherator-from-raster",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-raster",
"pic-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"pic-8888",
"gm",
"_",
"gamut",
"serialize-8888",
"gm",
"_",
"gamut",
"_",
"image",
"_",
".arw",
"_",
"image",
"_",
".cr2",
"_",
"image",
"_",
".dng",
"_",
"image",
"_",
".nef",
"_",
"image",
"_",
".nrw",
"_",
"image",
"_",
".orf",
"_",
"image",
"_",
".raf",
"_",
"image",
"_",
".rw2",
"_",
"image",
"_",
".pef",
"_",
"image",
"_",
".srw",
"_",
"image",
"_",
".ARW",
"_",
"image",
"_",
".CR2",
"_",
"image",
"_",
".DNG",
"_",
"image",
"_",
".NEF",
"_",
"image",
"_",
".NRW",
"_",
"image",
"_",
".ORF",
"_",
"image",
"_",
".RAF",
"_",
"image",
"_",
".RW2",
"_",
"image",
"_",
".PEF",
"_",
"image",
"_",
".SRW",
"--noRAW_threading"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "dm"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_dm",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "pull skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,666 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"root"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "rmdir skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_dm",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "exists skia_dm",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_dm"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push uninteresting_hashes.txt"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"x86",
"-t",
"Release",
"dm",
"--undefok",
"--resourcePath",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/dm",
"--colorImages",
"/storage/emulated/legacy/skiabot/skia_images/colorspace",
"--nameByHash",
"--properties",
"gitHash",
"abc123",
"master",
"client.skia",
"builder",
"Test-Android-GCC-NexusPlayer-CPU-SSE4-x86-Release",
"build_number",
"5",
"--svgs",
"/storage/emulated/legacy/skiabot/skia_svg/svgs",
"--key",
"arch",
"x86",
"compiler",
"GCC",
"configuration",
"Release",
"cpu_or_gpu",
"CPU",
"cpu_or_gpu_value",
"SSE4",
"model",
"NexusPlayer",
"os",
"Android",
"--uninterestingHashesFile",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt",
"--writePath",
"/storage/emulated/legacy/skiabot/skia_dm",
"--nogpu",
"--config",
"8888",
"gpu",
"gpusrgb",
"--src",
"tests",
"gm",
"image",
"colorImage",
"svg",
"--blacklist",
"gpusrgb",
"image",
"_",
"_",
"_",
"test",
"_",
"GrShape",
"--match",
"~ResourceCache",
"--noRAW_threading"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "dm"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_dm",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "pull skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Release",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

View File

@ -1,906 +0,0 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"/usr/bin/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"/usr/bin/adb",
"root"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"/usr/bin/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"/usr/bin/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"/usr/bin/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"/usr/bin/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push resources"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skp/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SKP VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SKP_VERSION"
],
"name": "write SKP_VERSION"
},
{
"cmd": [
"/usr/bin/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/skimage/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded skimage VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
],
"name": "write SK_IMAGE_VERSION"
},
{
"cmd": [
"/usr/bin/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"[SLAVE_BUILD]/skia/infra/bots/assets/svg/VERSION",
"/path/to/tmp/"
],
"name": "Get downloaded SVG VERSION"
},
{
"cmd": [
"python",
"-u",
"\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n",
"42",
"[SLAVE_BUILD]/tmp/SVG_VERSION"
],
"name": "write SVG_VERSION"
},
{
"cmd": [
"/usr/bin/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"python",
"-u",
"\nimport os, sys\nfrom common import chromium_utils # Error? See https://crbug.com/584783.\n\n\nif os.path.exists(sys.argv[1]):\n chromium_utils.RemoveDirectory(sys.argv[1])\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"PYTHONPATH": "[SLAVE_BUILD]/skia/infra/bots/.recipe_deps/build/scripts"
},
"name": "rmtree dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import os, sys@@@",
"@@@STEP_LOG_LINE@python.inline@from common import chromium_utils # Error? See https://crbug.com/584783.@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@if os.path.exists(sys.argv[1]):@@@",
"@@@STEP_LOG_LINE@python.inline@ chromium_utils.RemoveDirectory(sys.argv[1])@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[CUSTOM_[SWARM_OUT_DIR]]/dm",
"511"
],
"name": "makedirs dm",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"/usr/bin/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "rmdir skia_dm"
},
{
"cmd": [
"/usr/bin/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_dm",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "exists skia_dm",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"/usr/bin/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_dm"
},
{
"cmd": [
"python",
"-u",
"\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n",
"[SLAVE_BUILD]/tmp",
"511"
],
"name": "makedirs tmp_dir",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import sys, os@@@",
"@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@",
"@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@",
"@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@",
"@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@",
"@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@",
"@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"python",
"-u",
"\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://gold.skia.org/_/hashes'\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[1], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print 'Failed to get uninteresting hashes from %s:' % HASHES_URL\n print e\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print 'Retry in %d seconds.' % waittime\n time.sleep(waittime)\n",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
],
"cwd": "[SLAVE_BUILD]/skia",
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "get uninteresting hashes",
"~followup_annotations": [
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@import contextlib@@@",
"@@@STEP_LOG_LINE@python.inline@import math@@@",
"@@@STEP_LOG_LINE@python.inline@import socket@@@",
"@@@STEP_LOG_LINE@python.inline@import sys@@@",
"@@@STEP_LOG_LINE@python.inline@import time@@@",
"@@@STEP_LOG_LINE@python.inline@import urllib2@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://gold.skia.org/_/hashes'@@@",
"@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@",
"@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@",
"@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@",
"@@@STEP_LOG_LINE@python.inline@@@@",
"@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@",
"@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@",
"@@@STEP_LOG_LINE@python.inline@ try:@@@",
"@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@",
"@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@",
"@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@",
"@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@",
"@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@",
"@@@STEP_LOG_LINE@python.inline@ break@@@",
"@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@",
"@@@STEP_LOG_LINE@python.inline@ print e@@@",
"@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@",
"@@@STEP_LOG_LINE@python.inline@ raise@@@",
"@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@",
"@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@",
"@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@",
"@@@STEP_LOG_END@python.inline@@@"
]
},
{
"cmd": [
"/usr/bin/adb",
"push",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "push uninteresting_hashes.txt"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm_v7_neon",
"-t",
"Debug",
"dm",
"--undefok",
"--resourcePath",
"/storage/emulated/legacy/skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/dm",
"--colorImages",
"/storage/emulated/legacy/skiabot/skia_images/colorspace",
"--nameByHash",
"--properties",
"gitHash",
"abc123",
"master",
"client.skia",
"builder",
"Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Debug",
"build_number",
"6",
"--svgs",
"/storage/emulated/legacy/skiabot/skia_svg/svgs",
"--key",
"arch",
"Arm7",
"compiler",
"GCC",
"configuration",
"Debug",
"cpu_or_gpu",
"GPU",
"cpu_or_gpu_value",
"Tegra3",
"model",
"Nexus7",
"os",
"Android",
"--uninterestingHashesFile",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt",
"--writePath",
"/storage/emulated/legacy/skiabot/skia_dm",
"--nocpu",
"--config",
"8888",
"gpu",
"gpusrgb",
"serialize-8888",
"tiles_rt-8888",
"pic-8888",
"--src",
"tests",
"gm",
"image",
"colorImage",
"svg",
"--blacklist",
"gpusrgb",
"image",
"_",
"_",
"_",
"test",
"_",
"GrShape",
"serialize-8888",
"gm",
"_",
"bleed_image",
"serialize-8888",
"gm",
"_",
"c_gms",
"serialize-8888",
"gm",
"_",
"colortype",
"serialize-8888",
"gm",
"_",
"colortype_xfermodes",
"serialize-8888",
"gm",
"_",
"drawfilter",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_0.75_0",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds_1_-0.25",
"serialize-8888",
"gm",
"_",
"fontmgr_bounds",
"serialize-8888",
"gm",
"_",
"fontmgr_match",
"serialize-8888",
"gm",
"_",
"fontmgr_iter",
"serialize-8888",
"gm",
"_",
"imagemasksubset",
"serialize-8888",
"gm",
"_",
"bitmapfilters",
"serialize-8888",
"gm",
"_",
"bitmapshaders",
"serialize-8888",
"gm",
"_",
"bleed",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp",
"serialize-8888",
"gm",
"_",
"bleed_alpha_bmp_shader",
"serialize-8888",
"gm",
"_",
"convex_poly_clip",
"serialize-8888",
"gm",
"_",
"extractalpha",
"serialize-8888",
"gm",
"_",
"filterbitmap_checkerboard_32_32_g8",
"serialize-8888",
"gm",
"_",
"filterbitmap_image_mandrill_64",
"serialize-8888",
"gm",
"_",
"shadows",
"serialize-8888",
"gm",
"_",
"simpleaaclip_aaclip",
"serialize-8888",
"gm",
"_",
"composeshader_bitmap",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes_npot",
"serialize-8888",
"gm",
"_",
"scaled_tilemodes",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image",
"serialize-8888",
"gm",
"_",
"bleed_alpha_image_shader",
"serialize-8888",
"gm",
"_",
"verylargebitmap",
"serialize-8888",
"gm",
"_",
"verylarge_picture_image",
"pic-8888",
"gm",
"_",
"drawfilter",
"pic-8888",
"gm",
"_",
"image-cacherator-from-picture",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-picture",
"pic-8888",
"gm",
"_",
"image-cacherator-from-raster",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-raster",
"pic-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"serialize-8888",
"gm",
"_",
"image-cacherator-from-ctable",
"pic-8888",
"gm",
"_",
"gamut",
"serialize-8888",
"gm",
"_",
"gamut",
"_",
"image",
"_",
"interlaced1.png",
"_",
"image",
"_",
"interlaced2.png",
"_",
"image",
"_",
"interlaced3.png",
"_",
"image",
"_",
".arw",
"_",
"image",
"_",
".cr2",
"_",
"image",
"_",
".dng",
"_",
"image",
"_",
".nef",
"_",
"image",
"_",
".nrw",
"_",
"image",
"_",
".orf",
"_",
"image",
"_",
".raf",
"_",
"image",
"_",
".rw2",
"_",
"image",
"_",
".pef",
"_",
"image",
"_",
".srw",
"_",
"image",
"_",
".ARW",
"_",
"image",
"_",
".CR2",
"_",
"image",
"_",
".DNG",
"_",
"image",
"_",
".NEF",
"_",
"image",
"_",
".NRW",
"_",
"image",
"_",
".ORF",
"_",
"image",
"_",
".RAF",
"_",
"image",
"_",
".RW2",
"_",
"image",
"_",
".PEF",
"_",
"image",
"_",
".SRW"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "dm"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_dm",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "pull skia_dm"
},
{
"cmd": [
"/usr/bin/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"/usr/bin/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"/usr/bin/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,
"status_code": 0
}
]

File diff suppressed because it is too large Load Diff

View File

@ -1,198 +1,29 @@
[
{
"cmd": [
"which",
"adb"
],
"name": "which adb",
"stdout": "/path/to/tmp/",
"~followup_annotations": [
"step returned non-zero exit code: 1",
"@@@STEP_EXCEPTION@@@"
]
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (1)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"echo",
"$EXTERNAL_STORAGE"
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_install"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "get EXTERNAL_STORAGE dir",
"stdout": "/path/to/tmp/"
"name": "install iOSShell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"root"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "adb root",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"sleep",
"10"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (2)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_kill_skia",
"--verbose"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill skia"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"stop"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "stop shell"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "starting battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat scaling_governor"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "cat cpu_freq"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_push_if_needed",
"[SLAVE_BUILD]/skia/resources",
"/storage/emulated/legacy/skiabot/skia_resources"
"skiabot/skia_resources"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "push resources"
"name": "push resources to skia_resources"
},
{
"cmd": [
@ -216,15 +47,14 @@
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_cat_file",
"skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "read SKP_VERSION",
"stdout": "/path/to/tmp/",
@ -235,101 +65,70 @@
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-f",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_rm",
"skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "rm SKP_VERSION"
"name": "rm skiabot/skia_tmp_dir/SKP_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_skp/skps"
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_rm",
"skiabot/skia_skp/skps"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "rmdir skps"
"name": "rmdir skiabot/skia_skp/skps"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_mkdir",
"skiabot/skia_skp/skps"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "exists skps",
"stdout": "/path/to/tmp/"
"name": "mkdir skiabot/skia_skp/skps"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_skp/skps"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skps"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_push_if_needed",
"--verbose",
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_push_if_needed",
"[SLAVE_BUILD]/skp",
"/storage/emulated/legacy/skiabot/skia_skp/skps"
"skiabot/skia_skp/skps"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "push skp"
"name": "push skp to skps"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"push",
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_push_file",
"[SLAVE_BUILD]/tmp/SKP_VERSION",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SKP_VERSION"
"skiabot/skia_tmp_dir/SKP_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "push SKP_VERSION"
"name": "push [SLAVE_BUILD]/tmp/SKP_VERSION"
},
{
"cmd": [
@ -353,19 +152,85 @@
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_cat_file",
"skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "read SK_IMAGE_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_rm",
"skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "rm skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_rm",
"skiabot/skia_images"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "rmdir skiabot/skia_images"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_mkdir",
"skiabot/skia_images"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "mkdir skiabot/skia_images"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_push_if_needed",
"[SLAVE_BUILD]/skimage",
"skiabot/skia_images"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "push skimage to skia_images"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_push_file",
"[SLAVE_BUILD]/tmp/SK_IMAGE_VERSION",
"skiabot/skia_tmp_dir/SK_IMAGE_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "push [SLAVE_BUILD]/tmp/SK_IMAGE_VERSION"
},
{
"cmd": [
"python",
@ -388,19 +253,85 @@
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"cat",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/SVG_VERSION"
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_cat_file",
"skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "read SVG_VERSION",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_rm",
"skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "rm skiabot/skia_tmp_dir/SVG_VERSION"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_rm",
"skiabot/skia_svg/svgs"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "rmdir skiabot/skia_svg/svgs"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_mkdir",
"skiabot/skia_svg/svgs"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "mkdir skiabot/skia_svg/svgs"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_push_if_needed",
"[SLAVE_BUILD]/svg",
"skiabot/skia_svg/svgs"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "push svg to svgs"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_push_file",
"[SLAVE_BUILD]/tmp/SVG_VERSION",
"skiabot/skia_tmp_dir/SVG_VERSION"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "push [SLAVE_BUILD]/tmp/SVG_VERSION"
},
{
"cmd": [
"python",
@ -447,55 +378,29 @@
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"rm",
"-r",
"/storage/emulated/legacy/skiabot/skia_dm"
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_rm",
"skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "rmdir skia_dm"
"name": "rmdir skiabot/skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"if",
"[",
"-e",
"/storage/emulated/legacy/skiabot/skia_dm",
"];",
"then",
"echo",
"FILE_EXISTS;",
"fi"
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_mkdir",
"skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "exists skia_dm",
"stdout": "/path/to/tmp/"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"mkdir",
"-p",
"/storage/emulated/legacy/skiabot/skia_dm"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "mkdir skia_dm"
"name": "mkdir skiabot/skia_dm"
},
{
"cmd": [
@ -569,37 +474,31 @@
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"push",
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_push_file",
"[SLAVE_BUILD]/tmp/uninteresting_hashes.txt",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt"
"skiabot/skia_tmp_dir/uninteresting_hashes.txt"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "push uninteresting_hashes.txt"
"name": "push [SLAVE_BUILD]/tmp/uninteresting_hashes.txt"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/android_run_skia",
"--verbose",
"--logcat",
"-d",
"arm_v7_neon",
"-t",
"Debug",
"dm",
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_run_skia",
"--dm",
"--undefok",
"--resourcePath",
"/storage/emulated/legacy/skiabot/skia_resources",
"skiabot/skia_resources",
"--skps",
"/storage/emulated/legacy/skiabot/skia_skp/skps",
"skiabot/skia_skp/skps",
"--images",
"/storage/emulated/legacy/skiabot/skia_images/dm",
"skiabot/skia_images/dm",
"--colorImages",
"/storage/emulated/legacy/skiabot/skia_images/colorspace",
"skiabot/skia_images/colorspace",
"--nameByHash",
"--properties",
"gitHash",
@ -607,35 +506,36 @@
"master",
"client.skia",
"builder",
"Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Debug",
"Test-iOS-Clang-iPad4-GPU-SGX554-Arm7-Debug",
"build_number",
"6",
"--svgs",
"/storage/emulated/legacy/skiabot/skia_svg/svgs",
"skiabot/skia_svg/svgs",
"--key",
"arch",
"Arm7",
"compiler",
"GCC",
"Clang",
"configuration",
"Debug",
"cpu_or_gpu",
"GPU",
"cpu_or_gpu_value",
"Tegra3",
"SGX554",
"model",
"Nexus7",
"iPad4",
"os",
"Android",
"iOS",
"--uninterestingHashesFile",
"/storage/emulated/legacy/skiabot/skia_tmp_dir/uninteresting_hashes.txt",
"skiabot/skia_tmp_dir/uninteresting_hashes.txt",
"--writePath",
"/storage/emulated/legacy/skiabot/skia_dm",
"skiabot/skia_dm",
"--nocpu",
"--config",
"8888",
"gpu",
"gpusrgb",
"pdf",
"serialize-8888",
"tiles_rt-8888",
"pic-8888",
@ -650,6 +550,42 @@
"image",
"_",
"_",
"gpu",
"skp",
"_",
"_",
"_",
"image",
"gen_platf",
"rgba32abf.bmp",
"_",
"image",
"gen_platf",
"rgb24prof.bmp",
"_",
"image",
"gen_platf",
"rgb24lprof.bmp",
"_",
"image",
"gen_platf",
"8bpp-pixeldata-cropped.bmp",
"_",
"image",
"gen_platf",
"4bpp-pixeldata-cropped.bmp",
"_",
"image",
"gen_platf",
"32bpp-pixeldata-cropped.bmp",
"_",
"image",
"gen_platf",
"24bpp-pixeldata-cropped.bmp",
"_",
"image",
"gen_platf",
"frame_larger_than_image.gif",
"_",
"test",
"_",
@ -762,14 +698,6 @@
"gm",
"_",
"bleed_alpha_image_shader",
"serialize-8888",
"gm",
"_",
"verylargebitmap",
"serialize-8888",
"gm",
"_",
"verylarge_picture_image",
"pic-8888",
"gm",
"_",
@ -900,110 +828,52 @@
".SRW"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "dm"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_pull_if_needed",
"--verbose",
"/storage/emulated/legacy/skiabot/skia_dm",
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_pull_if_needed",
"skiabot/skia_dm",
"[CUSTOM_[SWARM_OUT_DIR]]/dm"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "pull skia_dm"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"shell",
"dumpsys",
"batteryproperties"
"[SLAVE_BUILD]/skia/platform_tools/ios/bin/ios_restart"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "final battery stats"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"reboot"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "reboot"
},
{
"cmd": [
"sleep",
"10"
"20"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
"SKIA_OUT": "[SLAVE_BUILD]/out",
"XCODEBUILD": "[SLAVE_BUILD]/xcodebuild"
},
"name": "wait for reboot"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_device"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for device (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/skia/platform_tools/android/bin/adb_wait_for_charge"
],
"env": {
"ANDROID_HOME": "[SLAVE_BUILD]/android_sdk/android-sdk",
"ANDROID_SDK_ROOT": "[SLAVE_BUILD]/android_sdk/android-sdk",
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_ANDROID_VERBOSE_SETUP": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "wait for charge (3)"
},
{
"cmd": [
"[SLAVE_BUILD]/android_sdk/android-sdk/platform-tools/adb",
"kill-server"
],
"env": {
"BUILDTYPE": "Debug",
"CHROME_HEADLESS": "1",
"SKIA_OUT": "[SLAVE_BUILD]/out"
},
"name": "kill-server"
},
{
"name": "$result",
"recipe_result": null,

View File

@ -25,14 +25,14 @@ TEST_BUILDERS = {
'client.skia': {
'skiabot-linux-swarm-000': [
'Test-Android-Clang-AndroidOne-CPU-MT6582-arm-Release-GN_Android',
'Test-Android-GCC-AndroidOne-GPU-Mali400MP2-Arm7-Release',
'Test-Android-GCC-GalaxyS3-GPU-Mali400-Arm7-Debug',
'Test-Android-GCC-NVIDIA_Shield-GPU-TegraX1-Arm64-Debug',
'Test-Android-GCC-Nexus10-GPU-MaliT604-Arm7-Release',
'Test-Android-GCC-Nexus6-GPU-Adreno420-Arm7-Debug',
'Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Debug',
'Test-Android-GCC-Nexus9-CPU-Denver-Arm64-Debug',
'Test-Android-GCC-NexusPlayer-CPU-SSE4-x86-Release',
'Test-Android-Clang-AndroidOne-GPU-Mali400MP2-arm-Release-GN_Android',
'Test-Android-Clang-GalaxyS3-GPU-Mali400-arm-Debug-GN_Android',
'Test-Android-Clang-NVIDIA_Shield-GPU-TegraX1-arm64-Debug-GN_Android',
'Test-Android-Clang-Nexus10-GPU-MaliT604-arm-Release-GN_Android',
'Test-Android-Clang-Nexus6-GPU-Adreno420-arm-Debug-GN_Android',
'Test-Android-Clang-Nexus7-GPU-Tegra3-arm-Debug-GN_Android',
'Test-Android-Clang-Nexus9-CPU-Denver-arm64-Debug-GN_Android',
'Test-Android-Clang-NexusPlayer-CPU-SSE4-x86-Release-GN_Android',
'Test-Mac-Clang-MacMini4.1-GPU-GeForce320M-x86_64-Debug',
'Test-Mac-Clang-MacMini6.2-CPU-AVX-x86_64-Debug',
'Test-Mac-Clang-MacMini6.2-GPU-HD4000-x86_64-Debug-CommandBuffer',
@ -508,39 +508,6 @@ def RunSteps(api):
def GenTests(api):
def AndroidTestData(builder, adb=None):
test_data = (
api.step_data(
'get EXTERNAL_STORAGE dir',
stdout=api.raw_io.output('/storage/emulated/legacy')) +
api.step_data(
'read SKP_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data(
'read SK_IMAGE_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data(
'read SVG_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data(
'exists skia_dm',
stdout=api.raw_io.output(''))
)
if 'GalaxyS3' not in builder:
test_data += api.step_data(
'adb root',
stdout=api.raw_io.output('restarting adbd as root'))
if adb:
test_data += api.step_data(
'which adb',
stdout=api.raw_io.output(adb))
else:
test_data += api.step_data(
'which adb',
retcode=1)
return test_data
for mastername, slaves in TEST_BUILDERS.iteritems():
for slavename, builders_by_slave in slaves.iteritems():
for builder in builders_by_slave:
@ -564,11 +531,6 @@ def GenTests(api):
api.path['slave_build'].join('tmp', 'uninteresting_hashes.txt')
)
)
if ('Android' in builder and
('Test' in builder or 'Perf' in builder) and
not 'GN' in builder and
not 'Appurify' in builder):
test += AndroidTestData(builder)
if 'Trybot' in builder:
test += api.properties(issue=500,
patchset=1,
@ -602,7 +564,7 @@ def GenTests(api):
api.step_data('dm', retcode=1)
)
builder = 'Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Debug'
builder = 'Test-Android-Clang-Nexus7-GPU-Tegra3-arm-Debug-GN_Android'
yield (
api.test('failed_get_hashes') +
api.properties(buildername=builder,
@ -622,47 +584,10 @@ def GenTests(api):
'svg', 'VERSION'),
api.path['slave_build'].join('tmp', 'uninteresting_hashes.txt')
) +
AndroidTestData(builder) +
api.step_data('read SKP_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data('read SK_IMAGE_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data('read SVG_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data('get uninteresting hashes', retcode=1)
)
yield (
api.test('download_and_push_skps') +
api.properties(buildername=builder,
mastername='client.skia',
slavename='skiabot-linux-swarm-000',
buildnumber=6,
revision='abc123',
path_config='kitchen',
swarm_out_dir='[SWARM_OUT_DIR]') +
api.path.exists(
api.path['slave_build'].join('skia'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'skimage', 'VERSION'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'skp', 'VERSION'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'svg', 'VERSION'),
api.path['slave_build'].join('tmp', 'uninteresting_hashes.txt')
) +
AndroidTestData(builder) +
api.step_data('read SKP_VERSION',
stdout=api.raw_io.output('2')) +
api.step_data('read SK_IMAGE_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data('read SVG_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data(
'exists skps',
stdout=api.raw_io.output(''))
)
builder = 'Test-iOS-Clang-iPad4-GPU-SGX554-Arm7-Debug'
yield (
api.test('missing_SKP_VERSION_device') +
api.properties(buildername=builder,
@ -682,168 +607,7 @@ def GenTests(api):
'svg', 'VERSION'),
api.path['slave_build'].join('tmp', 'uninteresting_hashes.txt')
) +
AndroidTestData(builder) +
api.step_data('read SKP_VERSION',
retcode=1) +
api.step_data('read SK_IMAGE_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data('read SVG_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data(
'exists skps',
stdout=api.raw_io.output(''))
)
yield (
api.test('download_and_push_skimage') +
api.properties(buildername=builder,
mastername='client.skia',
slavename='skiabot-linux-swarm-000',
buildnumber=6,
revision='abc123',
path_config='kitchen',
swarm_out_dir='[SWARM_OUT_DIR]') +
api.path.exists(
api.path['slave_build'].join('skia'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'skimage', 'VERSION'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'skp', 'VERSION'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'svg', 'VERSION'),
api.path['slave_build'].join('tmp', 'uninteresting_hashes.txt')
) +
AndroidTestData(builder) +
api.step_data('read SKP_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data('read SK_IMAGE_VERSION',
stdout=api.raw_io.output('2')) +
api.step_data('read SVG_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data(
'exists skia_images',
stdout=api.raw_io.output(''))
)
yield (
api.test('missing_SK_IMAGE_VERSION_device') +
api.properties(buildername=builder,
mastername='client.skia',
slavename='skiabot-linux-swarm-000',
buildnumber=6,
revision='abc123',
path_config='kitchen',
swarm_out_dir='[SWARM_OUT_DIR]') +
api.path.exists(
api.path['slave_build'].join('skia'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'skimage', 'VERSION'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'skp', 'VERSION'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'svg', 'VERSION'),
api.path['slave_build'].join('tmp', 'uninteresting_hashes.txt')
) +
AndroidTestData(builder) +
api.step_data('read SKP_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data('read SK_IMAGE_VERSION',
retcode=1) +
api.step_data('read SVG_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data(
'exists skia_images',
stdout=api.raw_io.output(''))
)
yield (
api.test('download_and_push_svgs') +
api.properties(buildername=builder,
mastername='client.skia',
slavename='skiabot-linux-swarm-000',
buildnumber=6,
revision='abc123',
path_config='kitchen',
swarm_out_dir='[SWARM_OUT_DIR]') +
api.path.exists(
api.path['slave_build'].join('skia'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'skimage', 'VERSION'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'skp', 'VERSION'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'svg', 'VERSION'),
api.path['slave_build'].join('tmp', 'uninteresting_hashes.txt')
) +
AndroidTestData(builder) +
api.step_data('read SKP_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data('read SK_IMAGE_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data('read SVG_VERSION',
stdout=api.raw_io.output('2')) +
api.step_data(
'exists svgs',
stdout=api.raw_io.output(''))
)
yield (
api.test('missing_SVG_VERSION_device') +
api.properties(buildername=builder,
mastername='client.skia',
slavename='skiabot-linux-swarm-000',
buildnumber=6,
revision='abc123',
path_config='kitchen',
swarm_out_dir='[SWARM_OUT_DIR]') +
api.path.exists(
api.path['slave_build'].join('skia'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'skimage', 'VERSION'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'skp', 'VERSION'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'svg', 'VERSION'),
api.path['slave_build'].join('tmp', 'uninteresting_hashes.txt')
) +
AndroidTestData(builder) +
api.step_data('read SKP_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data('read SK_IMAGE_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data('read SVG_VERSION',
retcode=1) +
api.step_data(
'exists svgs',
stdout=api.raw_io.output(''))
)
yield (
api.test('adb_in_path') +
api.properties(buildername=builder,
mastername='client.skia',
slavename='skiabot-linux-swarm-000',
buildnumber=6,
revision='abc123',
path_config='kitchen',
swarm_out_dir='[SWARM_OUT_DIR]') +
api.path.exists(
api.path['slave_build'].join('skia'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'skimage', 'VERSION'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'skp', 'VERSION'),
api.path['slave_build'].join('skia', 'infra', 'bots', 'assets',
'svg', 'VERSION'),
api.path['slave_build'].join('tmp', 'uninteresting_hashes.txt')
) +
AndroidTestData(builder, adb='/usr/bin/adb') +
api.step_data('read SKP_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data('read SK_IMAGE_VERSION',
stdout=api.raw_io.output('42')) +
api.step_data('read SVG_VERSION',
stdout=api.raw_io.output('42'))
api.step_data('read SKP_VERSION', retcode=1)
)
builder = 'Test-Win8-MSVC-ShuttleB-CPU-AVX2-x86_64-Release-Trybot'