|
41 | 41 | - uses: actions/checkout@v4 |
42 | 42 | - id: set-matrix |
43 | 43 | name: build matrix |
44 | | - uses: rusher/mariadb-test-build-matrix@main |
| 44 | + uses: mariadb-corporation/connector-ci-build-matrix@main |
45 | 45 | with: |
46 | | - additional-matrix: '[]' |
| 46 | + additional-matrix: '[{"name": "MariaDB 11.4 (local) - windows 2025", "os": "windows-2025", "db-type": "community", "db-tag": "11.4"},{"name": "MariaDB 11.4 32bits (local) - windows 2025", "os": "windows-2025", "db-type": "community", "db-tag": "11.4", "arch": "32"}]' |
47 | 47 |
|
48 | 48 | ci: |
49 | 49 | name: ${{ matrix.name }} |
|
59 | 59 |
|
60 | 60 | - name: Setup Test Environment |
61 | 61 | id: setup-env |
62 | | - uses: rusher/mariadb-test-setup@master |
| 62 | + uses: mariadb-corporation/connector-ci-setup@master |
63 | 63 | with: |
64 | 64 | node-version: ${{ matrix.node }} |
65 | 65 | db-type: ${{ matrix.db-type }} |
@@ -96,30 +96,58 @@ jobs: |
96 | 96 | run: | |
97 | 97 | choco install wixtoolset -y |
98 | 98 |
|
99 | | - - name: make windows |
100 | | - if: ${{ startsWith(matrix.os, 'windows') }} |
| 99 | + - name: make windows 64bit |
| 100 | + if: ${{ startsWith(matrix.os, 'windows') && (matrix.arch != '32' || !matrix.arch) }} |
101 | 101 | shell: powershell |
102 | 102 | run: | |
103 | 103 | cmake -DCONC_WITH_MSI=OFF -DCONC_WITH_UNIT_TESTS=OFF -DWITH_MSI=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWITH_SSL=SCHANNEL . #-DDIRECT_LINK_TESTS=1 . |
104 | 104 | cmake --build . --config RelWithDebInfo |
105 | 105 |
|
| 106 | + - name: make windows 32bit |
| 107 | + if: ${{ startsWith(matrix.os, 'windows') && startsWith(matrix.arch, '32') }} |
| 108 | + run: | |
| 109 | + cmake -A Win32 -DCONC_WITH_MSI=OFF -DCONC_WITH_UNIT_TESTS=OFF -DWITH_MSI=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWITH_SSL=SCHANNEL . #-DDIRECT_LINK_TESTS=1 . |
| 110 | + cmake --build . --config RelWithDebInfo |
| 111 | +
|
106 | 112 | - name: Install generated MSI (Windows only) |
107 | 113 | if: startsWith(matrix.os, 'windows') |
108 | 114 | shell: powershell |
109 | 115 | run: | |
110 | | - pwd |
| 116 | + $pwd= Get-Location |
| 117 | + $log= Join-Path $pwd "install.log" |
| 118 | + Write-Output $log |
111 | 119 | ls ${{ github.workspace }}\packaging\windows |
112 | 120 | Get-ChildItem -Path ${{ github.workspace }}\packaging\windows\mariadb-connector-odbc-*.msi |
113 | | - $log = "install.log" |
114 | 121 | foreach ($msi in Get-ChildItem -Path ${{ github.workspace }}\packaging\windows\mariadb-connector-odbc-*.msi) { |
115 | | - $procInstall= Start-Process msiexec.exe -ArgumentList "/i $($msi.FullName) /qn /norestart" -NoNewWindow -PassThru |
116 | | - #$procLog = Start-Process "powershell" "Get-Content -Path `"$log`" -Wait" -NoNewWindow -PassThru |
117 | | - #$procMain.WaitForExit() |
118 | | - #$procLog.Kill() |
| 122 | + $procInstall= Start-Process msiexec.exe -ArgumentList "/i $($msi.FullName) /qn /norestart /L* `"$log`"" -NoNewWindow -PassThru |
| 123 | + Start-Sleep -Milliseconds 500 |
| 124 | + if (Test-Path) { |
| 125 | + Get-Content -Path $log -Wait | ForEach-Object { |
| 126 | + if ($procInstall.HasExited) { break } |
| 127 | + $_ |
| 128 | + } else { |
| 129 | + echo "Log file still does not exist" |
| 130 | + Start-Sleep -Milliseconds 500 |
| 131 | + } |
| 132 | + Write-Host "Installer exit code: $($procInstall.ExitCode)" |
119 | 133 | } |
| 134 | +
|
| 135 | + - name: Create 64b DSN |
| 136 | + if: ${{ startsWith(matrix.os, 'windows') && (matrix.arch != '32' || !matrix.arch) }} |
| 137 | + shell: powershell |
| 138 | + run: | |
120 | 139 | Get-OdbcDriver -Platform "64-bit" |
121 | 140 | Add-OdbcDsn -Name $env:TEST_DSN -DriverName "MariaDB ODBC 3.1 Driver" -DsnType "User" -SetPropertyValue @( "SERVER=$env:TEST_SERVER", "DATABASE=$env:TEST_SCHEMA", "USER=$env:TEST_UID", "PASSWORD=$env:TEST_PASSWORD", "PORT=$env:TEST_PORT" ) |
122 | 141 |
|
| 142 | + - name: Create 32b DSN |
| 143 | + if: ${{ startsWith(matrix.os, 'windows') && startsWith(matrix.arch, '32') }} |
| 144 | + shell: powershell |
| 145 | + run: | |
| 146 | + Get-OdbcDriver -Platform "32-bit" |
| 147 | + $powershell32b = "$env:WINDIR\SysWOW64\WindowsPowerShell\v1.0\powershell.exe" |
| 148 | + $dsn= "Add-OdbcDsn -Name $env:TEST_DSN -DriverName `"MariaDB ODBC 3.1 Driver`" -DsnType `"User`" -SetPropertyValue @( `"SERVER=$env:TEST_SERVER`", `"DATABASE=$env:TEST_SCHEMA`", `"USER=$env:TEST_UID`", `"PASSWORD=$env:TEST_PASSWORD`", `"PORT=$env:TEST_PORT`" )" |
| 149 | + $powershell32b -NoProfile -Command $dsn |
| 150 | +
|
123 | 151 | - name: Run test suite |
124 | 152 | shell: bash |
125 | 153 | run: | |
|
0 commit comments