diff options
Diffstat (limited to 'infra')
-rw-r--r-- | infra/bots/gen_tasks.go | 1 | ||||
-rw-r--r-- | infra/bots/recipe_modules/flavor/api.py | 2 | ||||
-rw-r--r-- | infra/bots/recipe_modules/flavor/gn_flavor.py | 1 | ||||
-rw-r--r-- | infra/bots/recipes/swarm_compile.expected/Build-Mac-Clang-arm64-Debug-GN_iOS.json | 157 | ||||
-rw-r--r-- | infra/bots/recipes/swarm_compile.py | 1 | ||||
-rw-r--r-- | infra/bots/tasks.json | 33 |
6 files changed, 193 insertions, 2 deletions
diff --git a/infra/bots/gen_tasks.go b/infra/bots/gen_tasks.go index 2ad8e54291..846b4c4d1c 100644 --- a/infra/bots/gen_tasks.go +++ b/infra/bots/gen_tasks.go @@ -37,6 +37,7 @@ var ( // Top-level list of all jobs to run at each commit. JOBS = []string{ + "Build-Mac-Clang-arm64-Debug-GN_iOS", "Build-Ubuntu-GCC-x86_64-Release-GN", "Build-Win-Clang-arm64-Release-GN_Android", "Perf-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-GN", diff --git a/infra/bots/recipe_modules/flavor/api.py b/infra/bots/recipe_modules/flavor/api.py index 08b9972dc8..7d4c5b8805 100644 --- a/infra/bots/recipe_modules/flavor/api.py +++ b/infra/bots/recipe_modules/flavor/api.py @@ -31,7 +31,7 @@ def is_android(builder_cfg): def is_ios(builder_cfg): - return ('iOS' in builder_cfg.get('extra_config', '') or + return ('iOS' == builder_cfg.get('extra_config', '') or builder_cfg.get('os') == 'iOS') diff --git a/infra/bots/recipe_modules/flavor/gn_flavor.py b/infra/bots/recipe_modules/flavor/gn_flavor.py index a019de2357..af400d9045 100644 --- a/infra/bots/recipe_modules/flavor/gn_flavor.py +++ b/infra/bots/recipe_modules/flavor/gn_flavor.py @@ -92,6 +92,7 @@ class GNFlavorUtils(default_flavor.DefaultFlavorUtils): 'sanitize': extra_config if 'SAN' in extra_config else '', 'skia_vulkan_sdk': win_vulkan_sdk if extra_config == 'Vulkan' else '', 'target_cpu': 'x86' if target_arch == 'x86' else '', + 'target_os': 'ios' if 'iOS' in extra_config else '', 'windk': win_toolchain if 'Win' in os else '', }.iteritems(): if v: diff --git a/infra/bots/recipes/swarm_compile.expected/Build-Mac-Clang-arm64-Debug-GN_iOS.json b/infra/bots/recipes/swarm_compile.expected/Build-Mac-Clang-arm64-Debug-GN_iOS.json new file mode 100644 index 0000000000..368e930f1a --- /dev/null +++ b/infra/bots/recipes/swarm_compile.expected/Build-Mac-Clang-arm64-Debug-GN_iOS.json @@ -0,0 +1,157 @@ +[ + { + "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_MODULE[depot_tools::bot_update]/resources/bot_update.py", + "--spec", + "cache_dir = '[CUSTOM_/_B_CACHE]'\nsolutions = [{'deps_file': '.DEPS.git', 'managed': False, 'name': 'skia', 'url': 'https://skia.googlesource.com/skia.git'}]", + "--patch_root", + "skia", + "--revision_mapping_file", + "{\"skia\": \"got_revision\"}", + "--git-cache-dir", + "[CUSTOM_/_B_CACHE]", + "--output_json", + "/path/to/tmp/json", + "--revision", + "skia@abc123", + "--output_manifest" + ], + "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-arm64-Debug-GN_iOS" + }, + "name": "bot_update", + "~followup_annotations": [ + "@@@STEP_TEXT@Some step text@@@", + "@@@STEP_LOG_LINE@json.output@{@@@", + "@@@STEP_LOG_LINE@json.output@ \"did_run\": true, @@@", + "@@@STEP_LOG_LINE@json.output@ \"fixed_revisions\": {@@@", + "@@@STEP_LOG_LINE@json.output@ \"skia\": \"abc123\"@@@", + "@@@STEP_LOG_LINE@json.output@ }, @@@", + "@@@STEP_LOG_LINE@json.output@ \"manifest\": {@@@", + "@@@STEP_LOG_LINE@json.output@ \"skia\": {@@@", + "@@@STEP_LOG_LINE@json.output@ \"repository\": \"https://fake.org/skia.git\", @@@", + "@@@STEP_LOG_LINE@json.output@ \"revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@", + "@@@STEP_LOG_LINE@json.output@ }@@@", + "@@@STEP_LOG_LINE@json.output@ }, @@@", + "@@@STEP_LOG_LINE@json.output@ \"patch_failure\": false, @@@", + "@@@STEP_LOG_LINE@json.output@ \"patch_root\": \"skia\", @@@", + "@@@STEP_LOG_LINE@json.output@ \"properties\": {@@@", + "@@@STEP_LOG_LINE@json.output@ \"got_revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\", @@@", + "@@@STEP_LOG_LINE@json.output@ \"got_revision_cp\": \"refs/heads/master@{#164710}\"@@@", + "@@@STEP_LOG_LINE@json.output@ }, @@@", + "@@@STEP_LOG_LINE@json.output@ \"root\": \"skia\", @@@", + "@@@STEP_LOG_LINE@json.output@ \"step_text\": \"Some step text\"@@@", + "@@@STEP_LOG_LINE@json.output@}@@@", + "@@@STEP_LOG_END@json.output@@@", + "@@@SET_BUILD_PROPERTY@got_revision@\"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@", + "@@@SET_BUILD_PROPERTY@got_revision_cp@\"refs/heads/master@{#164710}\"@@@" + ] + }, + { + "cmd": [ + "python", + "-u", + "[CUSTOM_/_B_WORK]/skia/bin/fetch-gn" + ], + "cwd": "[CUSTOM_/_B_WORK]/skia", + "env": { + "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]" + }, + "name": "fetch-gn" + }, + { + "cmd": [ + "gn", + "gen", + "[CUSTOM_/_B_WORK]/skia/out/Build-Mac-Clang-arm64-Debug-GN_iOS/Debug", + "--args=cc=\"clang\" cxx=\"clang++\" extra_cflags=[\"-O1\"] target_os=\"ios\"" + ], + "cwd": "[CUSTOM_/_B_WORK]/skia", + "env": { + "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]" + }, + "name": "gn gen" + }, + { + "cmd": [ + "ninja", + "-C", + "[CUSTOM_/_B_WORK]/skia/out/Build-Mac-Clang-arm64-Debug-GN_iOS/Debug" + ], + "cwd": "[CUSTOM_/_B_WORK]/skia", + "env": { + "PATH": "%(PATH)s: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-Mac-Clang-arm64-Debug-GN_iOS/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 + } +]
\ No newline at end of file diff --git a/infra/bots/recipes/swarm_compile.py b/infra/bots/recipes/swarm_compile.py index fea50c767e..1e1603135e 100644 --- a/infra/bots/recipes/swarm_compile.py +++ b/infra/bots/recipes/swarm_compile.py @@ -23,6 +23,7 @@ TEST_BUILDERS = { 'client.skia.compile': { 'skiabot-linux-swarm-000': [ 'Build-Mac-Clang-Arm7-Release-iOS', + 'Build-Mac-Clang-arm64-Debug-GN_iOS', 'Build-Mac-Clang-mipsel-Debug-GN_Android', 'Build-Mac-Clang-x86_64-Debug-CommandBuffer', 'Build-Mac-Clang-x86_64-Release-GN', diff --git a/infra/bots/tasks.json b/infra/bots/tasks.json index 6ff2106a88..d2af81691e 100644 --- a/infra/bots/tasks.json +++ b/infra/bots/tasks.json @@ -1,5 +1,11 @@ { "jobs": { + "Build-Mac-Clang-arm64-Debug-GN_iOS": { + "priority": 0.8, + "tasks": [ + "Build-Mac-Clang-arm64-Debug-GN_iOS" + ] + }, "Build-Ubuntu-GCC-x86_64-Release-GN": { "priority": 0.8, "tasks": [ @@ -38,6 +44,31 @@ } }, "tasks": { + "Build-Mac-Clang-arm64-Debug-GN_iOS": { + "dimensions": [ + "gpu:none", + "os:Mac", + "pool:Skia" + ], + "extra_args": [ + "--workdir", + "../../..", + "swarm_compile", + "repository=<(REPO)", + "buildername=Build-Mac-Clang-arm64-Debug-GN_iOS", + "mastername=fake-master", + "buildnumber=2", + "slavename=fake-buildslave", + "nobuildbot=True", + "swarm_out_dir=${ISOLATED_OUTDIR}", + "revision=<(REVISION)", + "patch_storage=<(PATCH_STORAGE)", + "patch_issue=<(ISSUE)", + "patch_set=<(PATCHSET)" + ], + "isolate": "compile_skia.isolate", + "priority": 0.8 + }, "Build-Ubuntu-Clang-arm-Release-GN_Android": { "cipd_packages": [ { @@ -388,4 +419,4 @@ "priority": 0.8 } } -} +}
\ No newline at end of file |