[ { "cmd": [ "python", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", "/path/to/tmp/json", "ensure-directory", "--mode", "0777", "[START_DIR]/tmp" ], "infra_step": true, "name": "makedirs tmp_dir" }, { "cmd": [ "ios.py" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "setup_device" }, { "cmd": [ "ideviceinstaller", "-i", "[START_DIR]/build/dm.app" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "install_dm" }, { "cmd": [ "ideviceinstaller", "-i", "[START_DIR]/build/nanobench.app" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "install_nanobench" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_push_if_needed", "[START_DIR]/skia/resources", "resources" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "push_if_needed [START_DIR]/skia/resources" }, { "cmd": [ "python", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", "/path/to/tmp/json", "copy", "[START_DIR]/skia/infra/bots/assets/skp/VERSION", "/path/to/tmp/" ], "env": { "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice" }, "infra_step": true, "name": "Get skp VERSION" }, { "cmd": [ "python", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", "/path/to/tmp/json", "copy", "42", "[START_DIR]/tmp/SKP_VERSION" ], "env": { "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice" }, "infra_step": true, "name": "write SKP_VERSION" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_cat_file", "tmp/SKP_VERSION" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "cat_file tmp/SKP_VERSION", "stdout": "/path/to/tmp/" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_rm", "tmp/SKP_VERSION" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "rm tmp/SKP_VERSION" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_rm", "skps" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "rm skps" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_mkdir", "skps" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "mkdir skps" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_push_if_needed", "[START_DIR]/skp", "skps" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "push_if_needed [START_DIR]/skp" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_push_file", "[START_DIR]/tmp/SKP_VERSION", "tmp/SKP_VERSION" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "push_file [START_DIR]/tmp/SKP_VERSION" }, { "cmd": [ "python", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", "/path/to/tmp/json", "copy", "[START_DIR]/skia/infra/bots/assets/skimage/VERSION", "/path/to/tmp/" ], "env": { "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice" }, "infra_step": true, "name": "Get skimage VERSION" }, { "cmd": [ "python", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", "/path/to/tmp/json", "copy", "42", "[START_DIR]/tmp/SK_IMAGE_VERSION" ], "env": { "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice" }, "infra_step": true, "name": "write SK_IMAGE_VERSION" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_cat_file", "tmp/SK_IMAGE_VERSION" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "cat_file tmp/SK_IMAGE_VERSION", "stdout": "/path/to/tmp/" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_rm", "tmp/SK_IMAGE_VERSION" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "rm tmp/SK_IMAGE_VERSION" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_rm", "images" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "rm images" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_mkdir", "images" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "mkdir images" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_push_if_needed", "[START_DIR]/skimage", "images" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "push_if_needed [START_DIR]/skimage" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_push_file", "[START_DIR]/tmp/SK_IMAGE_VERSION", "tmp/SK_IMAGE_VERSION" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "push_file [START_DIR]/tmp/SK_IMAGE_VERSION" }, { "cmd": [ "python", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", "/path/to/tmp/json", "copy", "[START_DIR]/skia/infra/bots/assets/svg/VERSION", "/path/to/tmp/" ], "env": { "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice" }, "infra_step": true, "name": "Get svg VERSION" }, { "cmd": [ "python", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", "/path/to/tmp/json", "copy", "42", "[START_DIR]/tmp/SVG_VERSION" ], "env": { "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice" }, "infra_step": true, "name": "write SVG_VERSION" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_cat_file", "tmp/SVG_VERSION" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "cat_file tmp/SVG_VERSION", "stdout": "/path/to/tmp/" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_rm", "tmp/SVG_VERSION" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "rm tmp/SVG_VERSION" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_rm", "svgs" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "rm svgs" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_mkdir", "svgs" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "mkdir svgs" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_push_if_needed", "[START_DIR]/svg", "svgs" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "push_if_needed [START_DIR]/svg" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_push_file", "[START_DIR]/tmp/SVG_VERSION", "tmp/SVG_VERSION" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "push_file [START_DIR]/tmp/SVG_VERSION" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_rm", "perf" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "rm perf" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_mkdir", "perf" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "mkdir perf" }, { "cmd": [ "python", "-u", "import os\nprint os.environ.get('SWARMING_BOT_ID', '')\n" ], "env": { "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice" }, "name": "get swarming bot id", "stdout": "/path/to/tmp/", "~followup_annotations": [ "@@@STEP_LOG_LINE@python.inline@import os@@@", "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_BOT_ID', '')@@@", "@@@STEP_LOG_END@python.inline@@@" ] }, { "cmd": [ "python", "-u", "import os\nprint os.environ.get('SWARMING_TASK_ID', '')\n" ], "env": { "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice" }, "name": "get swarming task id", "stdout": "/path/to/tmp/", "~followup_annotations": [ "@@@STEP_LOG_LINE@python.inline@import os@@@", "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_TASK_ID', '')@@@", "@@@STEP_LOG_END@python.inline@@@" ] }, { "cmd": [ "idevice-app-runner", "-s", "com.google.nanobench", "--args", "-i", "resources", "--skps", "skps", "--images", "images/nanobench", "--svgs", "svgs", "--pre_log", "--images", "--gpuStatsDump", "true", "--scales", "1.0", "1.1", "--skps", "ignore_skps", "--nocpu", "--config", "gles", "glessrgb", "--match", "~blurroundrect", "~patch_grid", "~desk_carsvg", "~keymobi", "~path_hairline", "~GLInstancedArraysBench", "~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", "perf/nanobench_abc123_1337000001.json", "--properties", "gitHash", "abc123", "swarming_bot_id", "skia-bot-123", "swarming_task_id", "123456", "--key", "arch", "arm64", "compiler", "Clang", "cpu_or_gpu", "GPU", "cpu_or_gpu_value", "PowerVRGT7800", "model", "iPadPro", "os", "iOS" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "name": "nanobench" }, { "cmd": [ "python", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", "/path/to/tmp/json", "ensure-directory", "--mode", "0777", "[START_DIR]/[SWARM_OUT_DIR]" ], "env": { "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice" }, "infra_step": true, "name": "makedirs perf_dir" }, { "cmd": [ "[START_DIR]/skia/platform_tools/ios/bin/ios_pull_if_needed", "perf", "[START_DIR]/[SWARM_OUT_DIR]" ], "env": { "CHROME_HEADLESS": "1", "IOS_BUNDLE_ID": "com.google.nanobench", "IOS_MOUNT_POINT": "[START_DIR]/mnt_iosdevice", "PATH": ":RECIPE_REPO[depot_tools]" }, "infra_step": true, "name": "pull_if_needed perf" }, { "jsonResult": null, "name": "$result" } ]