Add gn_v2 Win/x64/MSVC/Rel builders Adds dawn-win-x64-builder-msvc-rel and dawn-win-x64-sws-msvc-rel along with their trybot mirror. Together, these are equivalent to the existing win-msvc-rel-x64 builder. Tests will be enabled in a follow-up CL. Bug: 385317083 Change-Id: I6fecb934b05c3d36cfea4a4b7516c4f557234bdc Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/263338 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Brian Sheedy <bsheedy@google.com>
diff --git a/infra/config/global/generated/builders/ci/dawn-win-x64-builder-msvc-rel/gn-args.json b/infra/config/global/generated/builders/ci/dawn-win-x64-builder-msvc-rel/gn-args.json new file mode 100644 index 0000000..a894494 --- /dev/null +++ b/infra/config/global/generated/builders/ci/dawn-win-x64-builder-msvc-rel/gn-args.json
@@ -0,0 +1,21 @@ +{ + "gn_args": { + "dawn_build_node_bindings": true, + "dawn_use_swiftshader": true, + "is_clang": false, + "is_component_build": true, + "is_debug": false, + "target_cpu": "x64", + "target_os": "win", + "tint_build_hlsl_writer": true, + "tint_build_msl_writer": true, + "tint_build_spv_reader": true, + "tint_build_spv_writer": true, + "tint_build_wgsl_reader": true, + "tint_build_wgsl_writer": true, + "use_custom_libcxx": false, + "use_reclient": false, + "use_remoteexec": true, + "use_siso": true + } +} \ No newline at end of file
diff --git a/infra/config/global/generated/builders/gn_args_locations.json b/infra/config/global/generated/builders/gn_args_locations.json index 2e9d68c..10f2727 100644 --- a/infra/config/global/generated/builders/gn_args_locations.json +++ b/infra/config/global/generated/builders/gn_args_locations.json
@@ -10,6 +10,7 @@ "dawn-linux-x86-fuzz-rel": "ci/dawn-linux-x86-fuzz-rel/gn-args.json", "dawn-mac-x64-builder-rel": "ci/dawn-mac-x64-builder-rel/gn-args.json", "dawn-win-x64-builder-dbg": "ci/dawn-win-x64-builder-dbg/gn-args.json", + "dawn-win-x64-builder-msvc-rel": "ci/dawn-win-x64-builder-msvc-rel/gn-args.json", "dawn-win-x64-builder-rel": "ci/dawn-win-x64-builder-rel/gn-args.json", "dawn-win-x86-builder-dbg": "ci/dawn-win-x86-builder-dbg/gn-args.json", "dawn-win-x86-builder-rel": "ci/dawn-win-x86-builder-rel/gn-args.json" @@ -33,6 +34,7 @@ "dawn-try-linux-x86-sws-rel": "try/dawn-try-linux-x86-sws-rel/gn-args.json", "dawn-try-mac-x64-sws-rel": "try/dawn-try-mac-x64-sws-rel/gn-args.json", "dawn-try-win-x64-sws-dbg": "try/dawn-try-win-x64-sws-dbg/gn-args.json", + "dawn-try-win-x64-sws-msvc-rel": "try/dawn-try-win-x64-sws-msvc-rel/gn-args.json", "dawn-try-win-x64-sws-rel": "try/dawn-try-win-x64-sws-rel/gn-args.json", "dawn-try-win-x86-sws-dbg": "try/dawn-try-win-x86-sws-dbg/gn-args.json", "dawn-try-win-x86-sws-rel": "try/dawn-try-win-x86-sws-rel/gn-args.json"
diff --git a/infra/config/global/generated/builders/try/dawn-try-win-x64-sws-msvc-rel/gn-args.json b/infra/config/global/generated/builders/try/dawn-try-win-x64-sws-msvc-rel/gn-args.json new file mode 100644 index 0000000..a894494 --- /dev/null +++ b/infra/config/global/generated/builders/try/dawn-try-win-x64-sws-msvc-rel/gn-args.json
@@ -0,0 +1,21 @@ +{ + "gn_args": { + "dawn_build_node_bindings": true, + "dawn_use_swiftshader": true, + "is_clang": false, + "is_component_build": true, + "is_debug": false, + "target_cpu": "x64", + "target_os": "win", + "tint_build_hlsl_writer": true, + "tint_build_msl_writer": true, + "tint_build_spv_reader": true, + "tint_build_spv_writer": true, + "tint_build_wgsl_reader": true, + "tint_build_wgsl_writer": true, + "use_custom_libcxx": false, + "use_reclient": false, + "use_remoteexec": true, + "use_siso": true + } +} \ No newline at end of file
diff --git a/infra/config/global/generated/luci/commit-queue.cfg b/infra/config/global/generated/luci/commit-queue.cfg index 3eb3737..3df6f4e 100644 --- a/infra/config/global/generated/luci/commit-queue.cfg +++ b/infra/config/global/generated/luci/commit-queue.cfg
@@ -749,6 +749,11 @@ disable_reuse_footers: "Include-Ci-Only-Tests" } builders { + name: "dawn/try/dawn-try-win-x64-sws-msvc-rel" + includable_only: true + disable_reuse_footers: "Include-Ci-Only-Tests" + } + builders { name: "dawn/try/dawn-try-win-x64-sws-rel" includable_only: true disable_reuse_footers: "Include-Ci-Only-Tests"
diff --git a/infra/config/global/generated/luci/cr-buildbucket.cfg b/infra/config/global/generated/luci/cr-buildbucket.cfg index 0892ad5..fe43c89 100644 --- a/infra/config/global/generated/luci/cr-buildbucket.cfg +++ b/infra/config/global/generated/luci/cr-buildbucket.cfg
@@ -3215,6 +3215,179 @@ } } builders { + name: "dawn-win-x64-builder-msvc-rel" + swarming_host: "chromium-swarm.appspot.com" + dimensions: "builderless:1" + dimensions: "cores:8" + dimensions: "os:Windows-10" + dimensions: "pool:luci.chromium.gpu.ci" + exe { + cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build" + cipd_version: "refs/heads/main" + cmd: "luciexe" + } + properties: + '{' + ' "$build/chromium_tests_builder_config": {' + ' "builder_config": {' + ' "additional_exclusions": [' + ' "infra/config/generated/builders/ci/dawn-win-x64-builder-msvc-rel/gn-args.json"' + ' ],' + ' "builder_db": {' + ' "entries": [' + ' {' + ' "builder_id": {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-builder-msvc-rel",' + ' "project": "dawn"' + ' },' + ' "builder_spec": {' + ' "builder_group": "ci",' + ' "execution_mode": "COMPILE_AND_TEST",' + ' "legacy_chromium_config": {' + ' "build_config": "Release",' + ' "config": "dawn_base",' + ' "target_arch": "intel",' + ' "target_bits": 64,' + ' "target_platform": "win"' + ' },' + ' "legacy_gclient_config": {' + ' "apply_configs": [' + ' "dawn_node"' + ' ],' + ' "config": "dawn"' + ' }' + ' }' + ' },' + ' {' + ' "builder_id": {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-sws-msvc-rel",' + ' "project": "dawn"' + ' },' + ' "builder_spec": {' + ' "builder_group": "ci",' + ' "execution_mode": "TEST",' + ' "legacy_chromium_config": {' + ' "build_config": "Release",' + ' "config": "dawn_base",' + ' "target_arch": "intel",' + ' "target_bits": 64,' + ' "target_platform": "win"' + ' },' + ' "legacy_gclient_config": {' + ' "config": "dawn"' + ' },' + ' "parent": {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-builder-msvc-rel",' + ' "project": "dawn"' + ' },' + ' "run_tests_serially": true' + ' }' + ' }' + ' ]' + ' },' + ' "builder_ids": [' + ' {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-builder-msvc-rel",' + ' "project": "dawn"' + ' }' + ' ],' + ' "builder_ids_in_scope_for_testing": [' + ' {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-sws-msvc-rel",' + ' "project": "dawn"' + ' }' + ' ],' + ' "mirroring_builder_group_and_names": [' + ' {' + ' "builder": "dawn-try-win-x64-sws-msvc-rel",' + ' "group": "try"' + ' }' + ' ]' + ' }' + ' },' + ' "$build/siso": {' + ' "configs": [' + ' "builder"' + ' ],' + ' "enable_cloud_monitoring": true,' + ' "enable_cloud_profiler": true,' + ' "enable_cloud_trace": true,' + ' "experiments": [],' + ' "metrics_project": "chromium-reclient-metrics",' + ' "project": "rbe-chromium-trusted",' + ' "remote_jobs": 250' + ' },' + ' "builder_group": "ci",' + ' "recipe": "dawn/gn_v2"' + '}' + build_numbers: YES + service_account: "dawn-ci-builder@chops-service-accounts.iam.gserviceaccount.com" + experiments { + key: "chromium.use_per_builder_build_dir_name" + value: 100 + } + resultdb { + enable: true + bq_exports { + project: "chrome-luci-data" + dataset: "chromium" + table: "ci_test_results" + test_results {} + } + bq_exports { + project: "chrome-luci-data" + dataset: "chromium" + table: "gpu_ci_test_results" + test_results { + predicate { + test_id_regexp: "ninja://(chrome|content)/test:telemetry_gpu_integration_test[^/]*/.+" + } + } + } + bq_exports { + project: "chrome-luci-data" + dataset: "chromium" + table: "blink_web_tests_ci_test_results" + test_results { + predicate { + test_id_regexp: "(ninja://[^/]*blink_web_tests/.+)|(ninja://[^/]*_wpt_tests/.+)|(ninja://[^/]*headless_shell_wpt/.+)" + } + } + } + history_options { + use_invocation_timestamp: true + } + } + description_html: "Compiles release Dawn test binaries for Windows/x64 using MSVC<br/>This builder is mirrored by any of the following try builders:<br/><ul><li><a href=\"https://ci.chromium.org/p/dawn/builders/try/dawn-try-win-x64-sws-msvc-rel\">dawn-try-win-x64-sws-msvc-rel</a></li></ul><br/>Builder owner: <a href=mailto:chrome-gpu-infra@google.com>chrome-gpu-infra@google.com</a>" + shadow_builder_adjustments { + service_account: "dawn-try-builder@chops-service-accounts.iam.gserviceaccount.com" + } + contact_team_email: "chrome-gpu-infra@google.com" + custom_metric_definitions { + name: "/chrome/infra/browser/builds/cached_count" + predicates: "has(build.output.properties.is_cached)" + predicates: "string(build.output.properties.is_cached) == \"true\"" + } + custom_metric_definitions { + name: "/chrome/infra/browser/builds/ran_tests_retry_shard_count" + predicates: "has(build.output.properties.ran_tests_retry_shard)" + } + custom_metric_definitions { + name: "/chrome/infra/browser/builds/ran_tests_without_patch_count" + predicates: "has(build.output.properties.ran_tests_without_patch)" + } + custom_metric_definitions { + name: "/chrome/infra/browser/builds/uncached_count" + predicates: "has(build.output.properties.is_cached)" + predicates: "string(build.output.properties.is_cached) == \"false\"" + } + } + builders { name: "dawn-win-x64-builder-rel" swarming_host: "chromium-swarm.appspot.com" dimensions: "builderless:1" @@ -3539,6 +3712,157 @@ } } builders { + name: "dawn-win-x64-sws-msvc-rel" + swarming_host: "chromium-swarm.appspot.com" + dimensions: "builderless:1" + dimensions: "cores:8" + dimensions: "os:Windows-10" + dimensions: "pool:luci.chromium.gpu.ci" + exe { + cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build" + cipd_version: "refs/heads/main" + cmd: "luciexe" + } + properties: + '{' + ' "$build/chromium_tests_builder_config": {' + ' "builder_config": {' + ' "builder_db": {' + ' "entries": [' + ' {' + ' "builder_id": {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-builder-msvc-rel",' + ' "project": "dawn"' + ' },' + ' "builder_spec": {' + ' "builder_group": "ci",' + ' "execution_mode": "COMPILE_AND_TEST",' + ' "legacy_chromium_config": {' + ' "build_config": "Release",' + ' "config": "dawn_base",' + ' "target_arch": "intel",' + ' "target_bits": 64,' + ' "target_platform": "win"' + ' },' + ' "legacy_gclient_config": {' + ' "apply_configs": [' + ' "dawn_node"' + ' ],' + ' "config": "dawn"' + ' }' + ' }' + ' },' + ' {' + ' "builder_id": {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-sws-msvc-rel",' + ' "project": "dawn"' + ' },' + ' "builder_spec": {' + ' "builder_group": "ci",' + ' "execution_mode": "TEST",' + ' "legacy_chromium_config": {' + ' "build_config": "Release",' + ' "config": "dawn_base",' + ' "target_arch": "intel",' + ' "target_bits": 64,' + ' "target_platform": "win"' + ' },' + ' "legacy_gclient_config": {' + ' "config": "dawn"' + ' },' + ' "parent": {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-builder-msvc-rel",' + ' "project": "dawn"' + ' },' + ' "run_tests_serially": true' + ' }' + ' }' + ' ]' + ' },' + ' "builder_ids": [' + ' {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-sws-msvc-rel",' + ' "project": "dawn"' + ' }' + ' ],' + ' "mirroring_builder_group_and_names": [' + ' {' + ' "builder": "dawn-try-win-x64-sws-msvc-rel",' + ' "group": "try"' + ' }' + ' ]' + ' }' + ' },' + ' "builder_group": "ci",' + ' "recipe": "dawn/gn_v2"' + '}' + build_numbers: YES + service_account: "dawn-ci-builder@chops-service-accounts.iam.gserviceaccount.com" + experiments { + key: "chromium.use_per_builder_build_dir_name" + value: 100 + } + resultdb { + enable: true + bq_exports { + project: "chrome-luci-data" + dataset: "chromium" + table: "ci_test_results" + test_results {} + } + bq_exports { + project: "chrome-luci-data" + dataset: "chromium" + table: "gpu_ci_test_results" + test_results { + predicate { + test_id_regexp: "ninja://(chrome|content)/test:telemetry_gpu_integration_test[^/]*/.+" + } + } + } + bq_exports { + project: "chrome-luci-data" + dataset: "chromium" + table: "blink_web_tests_ci_test_results" + test_results { + predicate { + test_id_regexp: "(ninja://[^/]*blink_web_tests/.+)|(ninja://[^/]*_wpt_tests/.+)|(ninja://[^/]*headless_shell_wpt/.+)" + } + } + } + history_options { + use_invocation_timestamp: true + } + } + description_html: "Tests release Dawn on Windows/x64 with SwiftShader using binaries built with MSVC<br/>This builder is mirrored by any of the following try builders:<br/><ul><li><a href=\"https://ci.chromium.org/p/dawn/builders/try/dawn-try-win-x64-sws-msvc-rel\">dawn-try-win-x64-sws-msvc-rel</a></li></ul><br/>Builder owner: <a href=mailto:chrome-gpu-infra@google.com>chrome-gpu-infra@google.com</a>" + shadow_builder_adjustments { + service_account: "dawn-try-builder@chops-service-accounts.iam.gserviceaccount.com" + } + contact_team_email: "chrome-gpu-infra@google.com" + custom_metric_definitions { + name: "/chrome/infra/browser/builds/cached_count" + predicates: "has(build.output.properties.is_cached)" + predicates: "string(build.output.properties.is_cached) == \"true\"" + } + custom_metric_definitions { + name: "/chrome/infra/browser/builds/ran_tests_retry_shard_count" + predicates: "has(build.output.properties.ran_tests_retry_shard)" + } + custom_metric_definitions { + name: "/chrome/infra/browser/builds/ran_tests_without_patch_count" + predicates: "has(build.output.properties.ran_tests_without_patch)" + } + custom_metric_definitions { + name: "/chrome/infra/browser/builds/uncached_count" + predicates: "has(build.output.properties.is_cached)" + predicates: "string(build.output.properties.is_cached) == \"false\"" + } + } + builders { name: "dawn-win-x64-sws-rel" swarming_host: "chromium-swarm.appspot.com" dimensions: "builderless:1" @@ -7960,6 +8284,170 @@ max_concurrent_builds: 1 } builders { + name: "dawn-try-win-x64-sws-msvc-rel" + swarming_host: "chromium-swarm.appspot.com" + dimensions: "builderless:1" + dimensions: "os:Windows-10" + dimensions: "pool:luci.chromium.gpu.try" + exe { + cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build" + cipd_version: "refs/heads/main" + cmd: "luciexe" + } + properties: + '{' + ' "$build/chromium_tests_builder_config": {' + ' "builder_config": {' + ' "additional_exclusions": [' + ' "infra/config/generated/builders/try/dawn-try-win-x64-sws-msvc-rel/gn-args.json"' + ' ],' + ' "builder_db": {' + ' "entries": [' + ' {' + ' "builder_id": {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-builder-msvc-rel",' + ' "project": "dawn"' + ' },' + ' "builder_spec": {' + ' "builder_group": "ci",' + ' "execution_mode": "COMPILE_AND_TEST",' + ' "legacy_chromium_config": {' + ' "build_config": "Release",' + ' "config": "dawn_base",' + ' "target_arch": "intel",' + ' "target_bits": 64,' + ' "target_platform": "win"' + ' },' + ' "legacy_gclient_config": {' + ' "apply_configs": [' + ' "dawn_node"' + ' ],' + ' "config": "dawn"' + ' }' + ' }' + ' },' + ' {' + ' "builder_id": {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-sws-msvc-rel",' + ' "project": "dawn"' + ' },' + ' "builder_spec": {' + ' "builder_group": "ci",' + ' "execution_mode": "TEST",' + ' "legacy_chromium_config": {' + ' "build_config": "Release",' + ' "config": "dawn_base",' + ' "target_arch": "intel",' + ' "target_bits": 64,' + ' "target_platform": "win"' + ' },' + ' "legacy_gclient_config": {' + ' "config": "dawn"' + ' },' + ' "parent": {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-builder-msvc-rel",' + ' "project": "dawn"' + ' },' + ' "run_tests_serially": true' + ' }' + ' }' + ' ]' + ' },' + ' "builder_ids": [' + ' {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-builder-msvc-rel",' + ' "project": "dawn"' + ' }' + ' ],' + ' "builder_ids_in_scope_for_testing": [' + ' {' + ' "bucket": "ci",' + ' "builder": "dawn-win-x64-sws-msvc-rel",' + ' "project": "dawn"' + ' }' + ' ]' + ' }' + ' },' + ' "$build/siso": {' + ' "configs": [' + ' "builder"' + ' ],' + ' "enable_cloud_monitoring": true,' + ' "enable_cloud_profiler": true,' + ' "enable_cloud_trace": true,' + ' "experiments": [],' + ' "metrics_project": "chromium-reclient-metrics",' + ' "project": "rbe-chromium-untrusted",' + ' "remote_jobs": 250' + ' },' + ' "builder_group": "try",' + ' "recipe": "dawn/gn_v2_trybot"' + '}' + build_numbers: YES + service_account: "dawn-try-builder@chops-service-accounts.iam.gserviceaccount.com" + experiments { + key: "chromium.use_per_builder_build_dir_name" + value: 100 + } + resultdb { + enable: true + bq_exports { + project: "chrome-luci-data" + dataset: "chromium" + table: "try_test_results" + test_results {} + } + bq_exports { + project: "chrome-luci-data" + dataset: "chromium" + table: "gpu_try_test_results" + test_results { + predicate { + test_id_regexp: "ninja://(chrome|content)/test:telemetry_gpu_integration_test[^/]*/.+" + } + } + } + bq_exports { + project: "chrome-luci-data" + dataset: "chromium" + table: "blink_web_tests_try_test_results" + test_results { + predicate { + test_id_regexp: "(ninja://[^/]*blink_web_tests/.+)|(ninja://[^/]*_wpt_tests/.+)|(ninja://[^/]*headless_shell_wpt/.+)" + } + } + } + history_options { + use_invocation_timestamp: true + } + } + description_html: "Tests release Dawn on Windows/x64 with SwiftShader using binaries built with MSVC. Manual only.<br/>This builder mirrors the following CI builders:<br/><ul><li><a href=\"https://ci.chromium.org/p/dawn/builders/ci/dawn-win-x64-builder-msvc-rel\">dawn-win-x64-builder-msvc-rel</a></li><li><a href=\"https://ci.chromium.org/p/dawn/builders/ci/dawn-win-x64-sws-msvc-rel\">dawn-win-x64-sws-msvc-rel</a></li></ul><br/>Builder owner: <a href=mailto:chrome-gpu-infra@google.com>chrome-gpu-infra@google.com</a>" + contact_team_email: "chrome-gpu-infra@google.com" + custom_metric_definitions { + name: "/chrome/infra/browser/builds/cached_count" + predicates: "has(build.output.properties.is_cached)" + predicates: "string(build.output.properties.is_cached) == \"true\"" + } + custom_metric_definitions { + name: "/chrome/infra/browser/builds/ran_tests_retry_shard_count" + predicates: "has(build.output.properties.ran_tests_retry_shard)" + } + custom_metric_definitions { + name: "/chrome/infra/browser/builds/ran_tests_without_patch_count" + predicates: "has(build.output.properties.ran_tests_without_patch)" + } + custom_metric_definitions { + name: "/chrome/infra/browser/builds/uncached_count" + predicates: "has(build.output.properties.is_cached)" + predicates: "string(build.output.properties.is_cached) == \"false\"" + } + max_concurrent_builds: 1 + } + builders { name: "dawn-try-win-x64-sws-rel" swarming_host: "chromium-swarm.appspot.com" dimensions: "builderless:1"
diff --git a/infra/config/global/generated/luci/luci-milo.cfg b/infra/config/global/generated/luci/luci-milo.cfg index 449b40b..3268e8b 100644 --- a/infra/config/global/generated/luci/luci-milo.cfg +++ b/infra/config/global/generated/luci/luci-milo.cfg
@@ -161,6 +161,11 @@ short_name: "x86" } builders { + name: "buildbucket/luci.dawn.ci/dawn-win-x64-builder-msvc-rel" + category: "win|build|msvc|rel" + short_name: "x64" + } + builders { name: "buildbucket/luci.dawn.ci/win-clang-dbg-x64" category: "win|clang|dbg" short_name: "x64" @@ -220,6 +225,11 @@ category: "win|test|clang|rel|x86" short_name: "sws" } + builders { + name: "buildbucket/luci.dawn.ci/dawn-win-x64-sws-msvc-rel" + category: "win|test|msvc|rel|x64" + short_name: "sws" + } } consoles { id: "try" @@ -309,6 +319,9 @@ name: "buildbucket/luci.dawn.try/dawn-try-win-x64-sws-dbg" } builders { + name: "buildbucket/luci.dawn.try/dawn-try-win-x64-sws-msvc-rel" + } + builders { name: "buildbucket/luci.dawn.try/dawn-try-win-x64-sws-rel" } builders {
diff --git a/infra/config/global/generated/luci/luci-scheduler.cfg b/infra/config/global/generated/luci/luci-scheduler.cfg index a1c862f..3bc2ee6 100644 --- a/infra/config/global/generated/luci/luci-scheduler.cfg +++ b/infra/config/global/generated/luci/luci-scheduler.cfg
@@ -260,6 +260,16 @@ } } job { + id: "dawn-win-x64-builder-msvc-rel" + realm: "ci" + schedule: "triggered" + buildbucket { + server: "cr-buildbucket.appspot.com" + bucket: "ci" + builder: "dawn-win-x64-builder-msvc-rel" + } +} +job { id: "dawn-win-x64-builder-rel" realm: "ci" schedule: "triggered" @@ -279,6 +289,15 @@ } } job { + id: "dawn-win-x64-sws-msvc-rel" + realm: "ci" + buildbucket { + server: "cr-buildbucket.appspot.com" + bucket: "ci" + builder: "dawn-win-x64-sws-msvc-rel" + } +} +job { id: "dawn-win-x64-sws-rel" realm: "ci" buildbucket { @@ -420,6 +439,7 @@ triggers: "dawn-linux-x86-fuzz-rel" triggers: "dawn-mac-x64-builder-rel" triggers: "dawn-win-x64-builder-dbg" + triggers: "dawn-win-x64-builder-msvc-rel" triggers: "dawn-win-x64-builder-rel" triggers: "dawn-win-x86-builder-dbg" triggers: "dawn-win-x86-builder-rel"
diff --git a/infra/config/global/generated/luci/realms.cfg b/infra/config/global/generated/luci/realms.cfg index f9f02963..35ff7cd 100644 --- a/infra/config/global/generated/luci/realms.cfg +++ b/infra/config/global/generated/luci/realms.cfg
@@ -79,6 +79,7 @@ values: "dawn-linux-x86-sws-rel" values: "dawn-mac-x64-sws-rel" values: "dawn-win-x64-sws-dbg" + values: "dawn-win-x64-sws-msvc-rel" values: "dawn-win-x64-sws-rel" values: "dawn-win-x86-sws-dbg" values: "dawn-win-x86-sws-rel"
diff --git a/infra/config/global/gn_args.star b/infra/config/global/gn_args.star index 3c9928b..e5d48cf 100644 --- a/infra/config/global/gn_args.star +++ b/infra/config/global/gn_args.star
@@ -121,6 +121,20 @@ ) gn_args.config( + name = "msvc", + args = { + "is_clang": False, + }, +) + +gn_args.config( + name = "no_custom_libcxx", + args = { + "use_custom_libcxx": False, + }, +) + +gn_args.config( name = "non_component", args = { "is_component_build": False, @@ -222,6 +236,20 @@ ) gn_args.config( + name = "win_msvc", + configs = [ + "msvc", + "no_custom_libcxx", + "siso", + "tint_hlsl_writer", + "tint_msl_writer", + "tint_spv_reader_writer", + "tint_wgsl_reader_writer", + "win", + ], +) + +gn_args.config( name = "x64", args = { "target_cpu": "x64",
diff --git a/infra/config/global/gn_standalone_ci.star b/infra/config/global/gn_standalone_ci.star index 1e1a07b..bd9de23 100644 --- a/infra/config/global/gn_standalone_ci.star +++ b/infra/config/global/gn_standalone_ci.star
@@ -272,6 +272,44 @@ ) ci.builder( + name = "dawn-win-x64-builder-msvc-rel", + description_html = "Compiles release Dawn test binaries for Windows/x64 using MSVC", + schedule = "triggered", + builder_spec = builder_config.builder_spec( + gclient_config = builder_config.gclient_config( + config = "dawn", + apply_configs = [ + "dawn_node", + ], + ), + chromium_config = builder_config.chromium_config( + config = "dawn_base", + build_config = builder_config.build_config.RELEASE, + target_arch = builder_config.target_arch.INTEL, + target_bits = 64, + target_platform = builder_config.target_platform.WIN, + ), + ), + gn_args = gn_args.config( + configs = [ + "component", + "dawn_node_bindings", + "dawn_swiftshader", + "release", + "win_msvc", + "x64", + ], + ), + cores = 8, + os = os.WINDOWS_DEFAULT, + ssd = None, + console_view_entry = consoles.console_view_entry( + category = "win|build|msvc|rel", + short_name = "x64", + ), +) + +ci.builder( name = "dawn-win-x64-builder-rel", description_html = "Compiles release Dawn test binaries for Windows/x64", schedule = "triggered", @@ -689,6 +727,30 @@ ) win_thin_tester( + name = "dawn-win-x64-sws-msvc-rel", + description_html = "Tests release Dawn on Windows/x64 with SwiftShader using binaries built with MSVC", + parent = "dawn-win-x64-builder-msvc-rel", + builder_spec = builder_config.builder_spec( + execution_mode = builder_config.execution_mode.TEST, + gclient_config = builder_config.gclient_config( + config = "dawn", + ), + chromium_config = builder_config.chromium_config( + config = "dawn_base", + build_config = builder_config.build_config.RELEASE, + target_arch = builder_config.target_arch.INTEL, + target_bits = 64, + target_platform = builder_config.target_platform.WIN, + ), + run_tests_serially = True, + ), + console_view_entry = consoles.console_view_entry( + category = "win|test|msvc|rel|x64", + short_name = "sws", + ), +) + +win_thin_tester( name = "dawn-win-x64-sws-rel", description_html = "Tests release Dawn on Windows/x64 with SwiftShader", parent = "dawn-win-x64-builder-rel",
diff --git a/infra/config/global/gn_standalone_try.star b/infra/config/global/gn_standalone_try.star index 90ae77c..dcb45af 100644 --- a/infra/config/global/gn_standalone_try.star +++ b/infra/config/global/gn_standalone_try.star
@@ -276,6 +276,16 @@ ) dawn_win_manual_builder( + name = "dawn-try-win-x64-sws-msvc-rel", + description_html = "Tests release Dawn on Windows/x64 with SwiftShader using binaries built with MSVC. Manual only.", + mirrors = [ + "ci/dawn-win-x64-builder-msvc-rel", + "ci/dawn-win-x64-sws-msvc-rel", + ], + gn_args = "ci/dawn-win-x64-builder-msvc-rel", +) + +dawn_win_manual_builder( name = "dawn-try-win-x64-sws-rel", description_html = "Tests release Dawn on Windows/x64 with SwiftShader. Manual only.", mirrors = [
diff --git a/infra/specs/ci.json b/infra/specs/ci.json index 9dbe6ba..ee73c27 100644 --- a/infra/specs/ci.json +++ b/infra/specs/ci.json
@@ -744,6 +744,7 @@ } ] }, + "dawn-win-x64-sws-msvc-rel": {}, "dawn-win-x64-sws-rel": { "gtest_tests": [ {
diff --git a/infra/specs/waterfalls.pyl b/infra/specs/waterfalls.pyl index 13056c6..e54bead 100644 --- a/infra/specs/waterfalls.pyl +++ b/infra/specs/waterfalls.pyl
@@ -124,6 +124,16 @@ 'isolated_scripts': 'dawn_node_cts_sws_tests', }, }, + 'dawn-win-x64-sws-msvc-rel': { + 'os_type': 'win', + 'mixins': [ + 'gpu-swarming-pool', + 'no_gpu', + 'win10', + 'x86-64', + ], + 'test_suites': {}, + }, 'dawn-win-x64-sws-rel': { 'os_type': 'win', 'mixins': [