@@ -123,47 +123,64 @@ jobs:
123
123
strategy :
124
124
fail-fast : false # cancel all jobs as soon as one fails?
125
125
matrix :
126
+ # Naming: {os}[-{runtimeVersion}]-{apiVersion}
127
+ # runtimeVersion = version of Godot binary; apiVersion = version of GDExtension API against which gdext is compiled.
128
+
126
129
# Order this way because macOS typically has the longest duration, followed by Windows, so it benefits total workflow execution time.
127
130
# Additionally, the 'linux (msrv *)' special case will then be listed next to the other 'linux' jobs.
128
131
# Note: Windows uses '--target x86_64-pc-windows-msvc' by default as Cargo argument.
129
132
include :
130
133
# macOS
131
134
135
+ - name : macos-stableRt-4.0.3
136
+ os : macos-12
137
+ artifact-name : macos-stable
138
+ godot-binary : godot.macos.editor.dev.x86_64
139
+ godot-prebuilt-patch : ' 4.0.3'
140
+
132
141
- name : macos-4.0.3
133
142
os : macos-12
134
- artifact-name : macos
143
+ artifact-name : macos-nightly
135
144
godot-binary : godot.macos.editor.dev.x86_64
136
145
godot-prebuilt-patch : ' 4.0.3'
137
146
138
147
- name : macos-double
139
148
os : macos-12
149
+ artifact-name : macos-double-nightly
140
150
godot-binary : godot.macos.editor.dev.double.x86_64
141
151
rust-extra-args : --features godot/double-precision
142
152
143
153
- name : macos-nightly
144
154
os : macos-12
145
- artifact-name : macos
155
+ artifact-name : macos-nightly
146
156
godot-binary : godot.macos.editor.dev.x86_64
147
157
rust-extra-args : --features godot/custom-godot
148
158
with-llvm : true
149
159
godot-prebuilt-patch : ' 4.1'
150
160
151
161
# Windows
152
162
163
+ - name : windows-stableRt-4.0.3
164
+ os : windows-latest
165
+ artifact-name : windows-stable
166
+ godot-binary : godot.windows.editor.dev.x86_64.exe
167
+ godot-prebuilt-patch : ' 4.0.3'
168
+
153
169
- name : windows-4.0.3
154
170
os : windows-latest
155
- artifact-name : windows
171
+ artifact-name : windows-nightly
156
172
godot-binary : godot.windows.editor.dev.x86_64.exe
157
173
godot-prebuilt-patch : ' 4.0.3'
158
174
159
175
- name : windows-double
160
176
os : windows-latest
177
+ artifact-name : windows-double-nightly
161
178
godot-binary : godot.windows.editor.dev.double.x86_64.exe
162
179
rust-extra-args : --features godot/double-precision
163
180
164
181
- name : windows-nightly
165
182
os : windows-latest
166
- artifact-name : windows
183
+ artifact-name : windows-nightly
167
184
godot-binary : godot.windows.editor.dev.x86_64.exe
168
185
rust-extra-args : --features godot/custom-godot
169
186
godot-prebuilt-patch : ' 4.1'
@@ -172,44 +189,50 @@ jobs:
172
189
173
190
# Don't use latest Ubuntu (22.04) as it breaks lots of ecosystem compatibility.
174
191
# If ever moving to ubuntu-latest, need to manually install libtinfo5 for LLVM.
192
+ - name : linux-stableRt-4.0.3
193
+ os : ubuntu-20.04
194
+ artifact-name : linux-stable
195
+ godot-binary : godot.linuxbsd.editor.dev.x86_64
196
+
175
197
- name : linux-4.0.3
176
198
os : ubuntu-20.04
177
- artifact-name : linux
199
+ artifact-name : linux-nightly
178
200
godot-binary : godot.linuxbsd.editor.dev.x86_64
179
201
godot-check-header : false # disabled for now
180
202
181
203
- name : linux-4.0.2
182
204
os : ubuntu-20.04
183
- artifact-name : linux
205
+ artifact-name : linux-nightly
184
206
godot-binary : godot.linuxbsd.editor.dev.x86_64
185
207
godot-prebuilt-patch : ' 4.0.2'
186
208
187
209
- name : linux-4.0.1
188
210
os : ubuntu-20.04
189
- artifact-name : linux
211
+ artifact-name : linux-nightly
190
212
godot-binary : godot.linuxbsd.editor.dev.x86_64
191
213
godot-prebuilt-patch : ' 4.0.1'
192
214
193
215
- name : linux-4.0
194
216
os : ubuntu-20.04
195
- artifact-name : linux
217
+ artifact-name : linux-nightly
196
218
godot-binary : godot.linuxbsd.editor.dev.x86_64
197
219
godot-prebuilt-patch : ' 4.0'
198
220
199
221
- name : linux-double
200
222
os : ubuntu-20.04
223
+ artifact-name : linux-double-nightly
201
224
godot-binary : godot.linuxbsd.editor.dev.double.x86_64
202
225
rust-extra-args : --features godot/double-precision
203
226
204
227
- name : linux-features
205
228
os : ubuntu-20.04
206
- artifact-name : linux
229
+ artifact-name : linux-nightly
207
230
godot-binary : godot.linuxbsd.editor.dev.x86_64
208
231
rust-extra-args : --features godot/threads,godot/serde
209
232
210
233
- name : linux-nightly
211
234
os : ubuntu-20.04
212
- artifact-name : linux
235
+ artifact-name : linux-nightly
213
236
godot-binary : godot.linuxbsd.editor.dev.x86_64
214
237
rust-extra-args : --features godot/custom-godot
215
238
godot-prebuilt-patch : ' 4.1'
@@ -220,35 +243,26 @@ jobs:
220
243
# The gcc version can possibly be removed later, as it is slower and needs a larger artifact than the clang one.
221
244
222
245
# --disallow-focus: fail if #[itest(focus)] is encountered, to prevent running only a few tests for full CI
223
- - name : linux-memcheck-gcc-4.0.3
224
- os : ubuntu-20.04
225
- artifact-name : linux-memcheck-gcc
226
- godot-binary : godot.linuxbsd.editor.dev.x86_64.san
227
- godot-args : -- --disallow-focus
228
- rust-toolchain : nightly
229
- rust-env-rustflags : -Zrandomize-layout
230
246
231
- - name : linux-memcheck-clang -4.0.3
247
+ - name : linux-memcheck-stable -4.0.3
232
248
os : ubuntu-20.04
233
- artifact-name : linux-memcheck-clang
249
+ artifact-name : linux-memcheck-clang-nightly
234
250
godot-binary : godot.linuxbsd.editor.dev.x86_64.llvm.san
235
251
godot-args : -- --disallow-focus
236
252
rust-toolchain : nightly
237
253
rust-env-rustflags : -Zrandomize-layout
238
254
239
- - name : linux-memcheck-gcc-nightly
255
+ - name : linux-memcheck-4.0.3
240
256
os : ubuntu-20.04
241
- artifact-name : linux-memcheck-gcc
242
- godot-binary : godot.linuxbsd.editor.dev.x86_64.san
257
+ artifact-name : linux-memcheck-clang-stable
258
+ godot-binary : godot.linuxbsd.editor.dev.x86_64.llvm. san
243
259
godot-args : -- --disallow-focus
244
260
rust-toolchain : nightly
245
261
rust-env-rustflags : -Zrandomize-layout
246
- rust-extra-args : --features godot/custom-godot
247
- godot-prebuilt-patch : ' 4.1'
248
262
249
- - name : linux-memcheck-clang- nightly
263
+ - name : linux-memcheck-nightly
250
264
os : ubuntu-20.04
251
- artifact-name : linux-memcheck-clang
265
+ artifact-name : linux-memcheck-clang-nightly
252
266
godot-binary : godot.linuxbsd.editor.dev.x86_64.llvm.san
253
267
godot-args : -- --disallow-focus
254
268
rust-toolchain : nightly
@@ -263,7 +277,7 @@ jobs:
263
277
- name : " Run Godot integration test"
264
278
uses : ./.github/composite/godot-itest
265
279
with :
266
- artifact-name : godot-${{ matrix.artifact-name || matrix.name }}
280
+ artifact-name : godot-${{ matrix.artifact-name }}
267
281
godot-binary : ${{ matrix.godot-binary }}
268
282
godot-args : ${{ matrix.godot-args }}
269
283
godot-prebuilt-patch : ${{ matrix.godot-prebuilt-patch }}
0 commit comments