This repository was archived by the owner on Nov 9, 2026. It is now read-only.
Repository navigation
55 lines (47 loc) · 2.14 KB
/
Copy pathbuild-win32.yml
File metadata and controls
55 lines (47 loc) · 2.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
name: Build Win32
on:
workflow_call:
inputs:
platform:
required: true
type: string
js-engine:
required: true
type: string
jobs:
build:
runs-on: windows-2022
# Hermes pulls in a large LLVH/Boost.Context/BCGen chain through
# `hermesvm_a`; on `windows-2022` the full configure+build comfortably
# exceeds the standard 15-minute window. Keep other engines snappy.
timeout-minutes: ${{ inputs.js-engine == 'Hermes' && 60 || 15 }}
steps:
- uses: actions/checkout@v5
- name: Configure CMake
run: cmake -B Build/Win32 -A ${{ inputs.platform }} -D NAPI_JAVASCRIPT_ENGINE=${{ inputs.js-engine }}
- name: Build Solution
run: cmake --build Build/Win32 --config RelWithDebInfo -- /m
- name: Enable Crash Dumps
shell: cmd
run: |
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\UnitTests.exe" /f
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\UnitTests.exe" /v DumpType /t REG_DWORD /d 2 /f
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\UnitTests.exe" /v DumpCount /t REG_DWORD /d 1 /f
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\UnitTests.exe" /v DumpFolder /t REG_SZ /d "%RUNNER_TEMP%\Dumps" /f
- name: Run Tests
shell: cmd
working-directory: Build/Win32/Tests/UnitTests/RelWithDebInfo
run: UnitTests.exe
- name: Stage Test App for Crash Dumps
if: failure()
shell: powershell
run: |
New-Item -ItemType Directory -Force -Path "$env:RUNNER_TEMP\Dumps" | Out-Null
Copy-Item -Path "Build\Win32\Tests\UnitTests\RelWithDebInfo\UnitTests.*" -Destination "$env:RUNNER_TEMP\Dumps\" -ErrorAction SilentlyContinue
- name: Upload Crash Dumps
if: failure()
uses: actions/upload-artifact@v4
with:
name: ${{ inputs.platform }}-${{ inputs.js-engine }}-crash-dumps
path: ${{ runner.temp }}/Dumps/
if-no-files-found: ignore