@@ -17,18 +17,20 @@ jobs:
17
17
- name : Disable Windows Defender
18
18
run : Set-MpPreference -DisableRealtimeMonitoring $true
19
19
shell : powershell
20
- - uses : actions/checkout@v3
20
+ - uses : actions/checkout@v4
21
+ # Build and Test
21
22
- name : Run task 'build'
22
23
shell : cmd
23
24
run : ./build.cmd build
24
25
- name : Run task 'in-tests-core'
25
26
shell : cmd
26
27
run : ./build.cmd in-tests-core -e
28
+ # Upload Artifacts with Unique Name
27
29
- name : Upload test results
28
- uses : actions/upload-artifact@v3
30
+ uses : actions/upload-artifact@v4
29
31
if : always()
30
32
with :
31
- name : test-windows-core-trx
33
+ name : test-windows-core-trx-${{ github.run_id }}
32
34
path : " **/*.trx"
33
35
34
36
test-windows-full :
@@ -37,71 +39,118 @@ jobs:
37
39
- name : Disable Windows Defender
38
40
run : Set-MpPreference -DisableRealtimeMonitoring $true
39
41
shell : powershell
40
- - uses : actions/checkout@v3
42
+ - uses : actions/checkout@v4
43
+ # Build and Test
41
44
- name : Run task 'build'
42
45
shell : cmd
43
46
run : ./build.cmd build
44
47
- name : Run task 'in-tests-full'
45
48
shell : cmd
46
49
run : ./build.cmd in-tests-full -e
50
+ # Upload Artifacts with Unique Name
47
51
- name : Upload test results
48
- uses : actions/upload-artifact@v3
52
+ uses : actions/upload-artifact@v4
49
53
if : always()
50
54
with :
51
- name : test-windows-full-trx
55
+ name : test-windows-full-trx-${{ github.run_id }}
52
56
path : " **/*.trx"
53
57
54
58
test-linux :
55
59
runs-on : ubuntu-latest
56
60
steps :
57
- - uses : actions/checkout@v3
61
+ - uses : actions/checkout@v4
62
+ # Set up the environment
58
63
- name : Set up Clang
59
- uses : egor-tensin/setup-clang@v1
64
+ uses : egor-tensin/setup-clang@ef434b41eb33a70396fb336b1bae39c76d740c3d # v1.4
60
65
with :
61
66
version : latest
62
67
platform : x64
63
68
- name : Set up zlib-static
64
69
run : sudo apt-get install -y libkrb5-dev
70
+ - name : Set up node
71
+ uses : actions/setup-node@v4
72
+ with :
73
+ node-version : " 22"
74
+ - name : Set up v8
75
+ run : npm install jsvu -g && jsvu --os=linux64 --engines=v8 && echo "$HOME/.jsvu/bin" >> $GITHUB_PATH
76
+ - name : Install wasm-tools workload
77
+ run : ./build.cmd install-wasm-tools
78
+ # Build and Test
65
79
- name : Run task 'build'
66
80
run : ./build.cmd build
67
81
- name : Run task 'unit-tests'
68
82
run : ./build.cmd unit-tests -e
69
83
- name : Run task 'in-tests-core'
70
84
run : ./build.cmd in-tests-core -e
85
+ # Upload Artifacts with Unique Name
71
86
- name : Upload test results
72
- uses : actions/upload-artifact@v3
87
+ uses : actions/upload-artifact@v4
73
88
if : always()
74
89
with :
75
- name : test-linux-trx
90
+ name : test-linux-trx-${{ github.run_id }}
76
91
path : " **/*.trx"
77
92
78
93
test-macos :
79
- runs-on : macos-13
94
+ name : test-macos (${{ matrix.os.arch }})
95
+ runs-on : ${{ matrix.os.runs-on }}
96
+ strategy :
97
+ matrix :
98
+ os :
99
+ - runs-on : ' macos-latest'
100
+ jsvu-os : ' mac64arm'
101
+ arch : ' arm64'
102
+ - runs-on : ' macos-13'
103
+ jsvu-os : ' mac64'
104
+ arch : ' x64'
80
105
steps :
81
- - uses : actions/checkout@v3
106
+ - uses : actions/checkout@v4
107
+ - name : Set up node
108
+ uses : actions/setup-node@v4
109
+ with :
110
+ node-version : " 22"
111
+ - name : Set up v8
112
+ run : npm install jsvu -g && jsvu --os=${{ matrix.os.jsvu-os }} --engines=v8 && echo "$HOME/.jsvu/bin" >> $GITHUB_PATH
113
+ - name : Install wasm-tools workload
114
+ run : ./build.cmd install-wasm-tools
115
+ # Build and Test
82
116
- name : Run task 'build'
83
117
run : ./build.cmd build
84
118
- name : Run task 'unit-tests'
85
119
run : ./build.cmd unit-tests -e
86
120
- name : Run task 'in-tests-core'
87
121
run : ./build.cmd in-tests-core -e
122
+ # Upload Artifacts with Unique Name
88
123
- name : Upload test results
89
- uses : actions/upload-artifact@v3
124
+ uses : actions/upload-artifact@v4
90
125
if : always()
91
126
with :
92
- name : test-macos-trx
127
+ name : test-macos(${{ matrix.os.arch }}) -trx-${{ github.run_id }}
93
128
path : " **/*.trx"
94
-
129
+
130
+ test-pack :
131
+ runs-on : ubuntu-latest
132
+ steps :
133
+ - uses : actions/checkout@v4
134
+ - name : Set up Clang
135
+ uses : egor-tensin/setup-clang@v1
136
+ with :
137
+ version : latest
138
+ platform : x64
139
+ - name : Set up zlib-static
140
+ run : sudo apt-get install -y libkrb5-dev
141
+ - name : Run task 'pack'
142
+ run : ./build.cmd pack
143
+
95
144
spellcheck-docs :
96
145
runs-on : ubuntu-latest
97
146
steps :
98
- - uses : actions/checkout@v3
99
- - uses : actions/setup-node@v3
147
+ - uses : actions/checkout@v4
148
+ - uses : actions/setup-node@v4
100
149
name : Setup node
101
150
with :
102
- node-version : " 18 "
151
+ node-version : " 22 "
103
152
- name : Install cSpell
104
- run : npm install -g cspell@8 .0.0
153
+ run : npm install -g cspell@9 .0.2
105
154
- name : Copy cSpell config
106
155
run : cp ./build/cSpell.json ./cSpell.json
107
156
- name : Run cSpell
0 commit comments