Skip to content

Commit 05d388d

Browse files
committed
Restore Windows native package gate
1 parent 759ab5b commit 05d388d

2 files changed

Lines changed: 44 additions & 0 deletions

File tree

‎.github/workflows/native-runtime-packages.yml‎

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -188,6 +188,17 @@ jobs:
188188
v8_cache_generation: v12-v8-15.3.10-pa-no-process-shim-ubuntu22-gcc12-lld-no-crel-shared-inspector
189189
v8_cache_script: scripts/build-native-engine-runtime.sh
190190
v8_cache_patch: packaging/WebScene.NativeEngine.Runtime/patches/V8BuildNoCrelPatch.txt
191+
- os: windows-2022
192+
rid: win-x64
193+
cpu: x64
194+
monolith: v8_monolith.lib
195+
script: windows
196+
v8_revision: 15.3.10
197+
partition_alloc: true
198+
v8_configuration: ReleasePartitionAlloc
199+
v8_cache_generation: v9-v8-15.3.10-pa-windows-compat-inspector
200+
v8_cache_script: scripts/build-native-engine-runtime.ps1
201+
v8_cache_patch: packaging/WebScene.NativeEngine.Runtime/patches/V8WindowsCompatibilityPatch.txt
191202
runs-on: ${{ matrix.os }}
192203
steps:
193204
- uses: actions/checkout@v4
@@ -488,6 +499,7 @@ jobs:
488499
--selection required \
489500
--expected-rid osx-arm64 \
490501
--expected-rid linux-x64 \
502+
--expected-rid win-x64 \
491503
--output artifacts/required-compatibility/cross-rid-summary.json
492504
- name: Upload cross-RID required summary
493505
uses: actions/upload-artifact@v4
@@ -521,6 +533,7 @@ jobs:
521533
--version '${{ needs.metadata.outputs.package-version }}' \
522534
--native-rid osx-arm64 \
523535
--native-rid linux-x64 \
536+
--native-rid win-x64 \
524537
--output artifacts/nuget-packages/release-packages.json
525538
shasum -a 256 \
526539
artifacts/nuget-packages/*.nupkg \
@@ -560,6 +573,7 @@ jobs:
560573
--advisory-test-failures \
561574
--expected-rid osx-arm64 \
562575
--expected-rid linux-x64 \
576+
--expected-rid win-x64 \
563577
--output artifacts/candidate-compatibility/cross-rid-summary.json
564578
- name: Upload cross-RID candidate summary
565579
if: always()
@@ -580,6 +594,8 @@ jobs:
580594
rid: osx-arm64
581595
- os: [self-hosted, Linux, X64]
582596
rid: linux-x64
597+
- os: windows-2022
598+
rid: win-x64
583599
runs-on: ${{ matrix.os }}
584600
env:
585601
# PR builds intentionally reuse package versions. Keep their extracted

‎scripts/tests/test_native_runtime_workflow_policy.py‎

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,34 @@ def test_v8_windows_environment_boundary_is_wired_into_build_and_ci(self) -> Non
8989
self.assertIn("Invoke-WebSceneV8ChildPowerShell", runtime_build)
9090
self.assertIn("-V8ChildBuild", runtime_build)
9191

92+
def test_release_package_gate_covers_every_supported_rid(self) -> None:
93+
package_workflow = self.workflows[
94+
ROOT / ".github/workflows/native-runtime-packages.yml"
95+
]
96+
native = package_workflow.split("\n native:\n", 1)[1].split(
97+
"\n required-evidence:\n", 1
98+
)[0]
99+
required = package_workflow.split("\n required-evidence:\n", 1)[1].split(
100+
"\n package-set:\n", 1
101+
)[0]
102+
package_set = package_workflow.split("\n package-set:\n", 1)[1].split(
103+
"\n candidate-evidence:\n", 1
104+
)[0]
105+
candidate = package_workflow.split("\n candidate-evidence:\n", 1)[1].split(
106+
"\n consumer:\n", 1
107+
)[0]
108+
consumer = package_workflow.split("\n consumer:\n", 1)[1].split(
109+
"\n publish:\n", 1
110+
)[0]
111+
112+
for rid in ("osx-arm64", "linux-x64", "win-x64"):
113+
with self.subTest(rid=rid):
114+
self.assertIn(f"rid: {rid}", native)
115+
self.assertIn(f"--expected-rid {rid}", required)
116+
self.assertIn(f"--native-rid {rid}", package_set)
117+
self.assertIn(f"--expected-rid {rid}", candidate)
118+
self.assertIn(f"rid: {rid}", consumer)
119+
92120

93121
if __name__ == "__main__":
94122
unittest.main()

0 commit comments

Comments
 (0)