27
27
matrix :
28
28
rust : ["stable"]
29
29
backend : ["postgres", "sqlite", "mysql"]
30
- os : [ubuntu-latest, macos-13, macos-15, windows-2025, ubuntu-22.04-arm]
30
+ os :
31
+ [
32
+ ubuntu-latest,
33
+ macos-13,
34
+ macos-15,
35
+ windows-2025,
36
+ ubuntu-22.04-arm,
37
+ windows-11-arm,
38
+ ]
31
39
include :
32
40
- rust : " beta"
33
41
backend : " postgres"
@@ -145,7 +153,7 @@ jobs:
145
153
echo "MYSQLCLIENT_VERSION=8.4" >> $GITHUB_ENV
146
154
147
155
- name : Install sqlite (Windows)
148
- if : runner .os == 'Windows ' && matrix.backend == 'sqlite'
156
+ if : matrix .os == 'windows-2025 ' && matrix.backend == 'sqlite'
149
157
shell : cmd
150
158
run : |
151
159
choco install sqlite
@@ -154,15 +162,23 @@ jobs:
154
162
lib /machine:x64 /def:sqlite3.def /out:sqlite3.lib
155
163
156
164
- name : Set variables for sqlite (Windows)
157
- if : runner .os == 'Windows ' && matrix.backend == 'sqlite'
165
+ if : matrix .os == 'windows-2025 ' && matrix.backend == 'sqlite'
158
166
shell : bash
159
167
run : |
160
168
echo "C:\ProgramData\chocolatey\lib\SQLite\tools" >> $GITHUB_PATH
161
169
echo "SQLITE3_LIB_DIR=C:\ProgramData\chocolatey\lib\SQLite\tools" >> $GITHUB_ENV
162
170
echo "SQLITE_DATABASE_URL=C:\test.db" >> $GITHUB_ENV
163
171
172
+ - name : Install sqlite (Windows ARM)
173
+ if : matrix.os == 'windows-11-arm' && matrix.backend == 'sqlite'
174
+ shell : bash
175
+ run : |
176
+ vcpkg install sqlite3
177
+ echo "SQLITE3_LIB_DIR=C:/vcpkg/packages/sqlite3_arm64-windows/lib" >> $GITHUB_ENV
178
+ echo "SQLITE_DATABASE_URL=C:\test.db" >> $GITHUB_ENV
179
+
164
180
- name : Install postgres (Windows)
165
- if : runner .os == 'Windows ' && matrix.backend == 'postgres'
181
+ if : matrix .os == 'windows-2025 ' && matrix.backend == 'postgres'
166
182
shell : bash
167
183
run : |
168
184
choco install postgresql14 --force --params '/Password:root'
@@ -172,6 +188,15 @@ jobs:
172
188
echo "PG_DATABASE_URL=postgres://postgres:root@localhost/" >> $GITHUB_ENV
173
189
echo "PG_EXAMPLE_DATABASE_URL=postgres://postgres:root@localhost/diesel_example" >> $GITHUB_ENV
174
190
191
+ - name : Install postgres (Windows ARM)
192
+ if : matrix.os == 'windows-11-arm' && matrix.backend == 'postgres'
193
+ shell : bash
194
+ run : |
195
+ choco install postgresql14 --force --params '/Password:root'
196
+ vcpkg install libpq
197
+ echo "PG_DATABASE_URL=postgres://postgres:root@localhost/" >> $GITHUB_ENV
198
+ echo "PG_EXAMPLE_DATABASE_URL=postgres://postgres:root@localhost/diesel_example" >> $GITHUB_ENV
199
+
175
200
- name : Install mysql (Windows)
176
201
if : runner.os == 'Windows' && matrix.backend == 'mysql'
177
202
shell : bash
@@ -183,8 +208,6 @@ jobs:
183
208
"C:\\Program Files\\MySQL\\MySQL Server 8.0\\bin\\mysql" -e "create database diesel_test;" -u root
184
209
"C:\\Program Files\\MySQL\\MySQL Server 8.0\\bin\\mysql" -e "create database diesel_unit_test;" -u root
185
210
"C:\\Program Files\\MySQL\\MySQL Server 8.0\\bin\\mysql" -e 'grant all on `diesel_%`.* to 'root'@'localhost';' -uroot
186
- # remove doxygen because mysqlclient build otherwise breaks?
187
- rm "C:/Strawberry/c/bin/doxygen.exe"
188
211
echo "OPENSSL_RUST_USE_NASM=0" >> $GITHUB_ENV
189
212
echo OPENSSL_SRC_PERL=C:/Strawberry/perl/bin/perl >> $GITHUB_ENV
190
213
echo "MYSQL_DATABASE_URL=mysql://[email protected] /diesel_test" >> $GITHUB_ENV
@@ -196,6 +219,22 @@ jobs:
196
219
echo "C:\Program Files\MySQL\MySQL Server 8.0\bin" >> $GITHUB_PATH
197
220
dir "C:\Program Files\MySQL\MySQL Server 8.0\lib"
198
221
222
+ - name : Remove doxygen (Windows)
223
+ if : matrix.os == 'windows-2025' && matrix.backend == 'mysql'
224
+ shell : bash
225
+ run : |
226
+ # remove doxygen because mysqlclient build otherwise breaks?
227
+ rm "C:/Strawberry/c/bin/doxygen.exe"
228
+
229
+ - name : Install rustup
230
+ if : matrix.os == 'windows-11-arm'
231
+ shell : pwsh
232
+ run : |
233
+ Invoke-WebRequest -Uri "https://static.rust-lang.org/rustup/dist/aarch64-pc-windows-msvc/rustup-init.exe" -OutFile rustup-init.exe
234
+ .\rustup-init.exe --default-toolchain none -y
235
+ "$env:USERPROFILE\.cargo\bin" | Out-File -Append -Encoding ascii $env:GITHUB_PATH
236
+ "CARGO_HOME=$env:USERPROFILE\.cargo" | Out-File -Append -Encoding ascii $env:GITHUB_ENV
237
+
199
238
- name : Install rust toolchain
200
239
uses : dtolnay/rust-toolchain@master
201
240
with :
0 commit comments