4343 uses : microsoft/setup-msbuild@v1
4444
4545 - name : Restore wolfSSL NuGet packages
46- working-directory : ${{env.GITHUB_WORKSPACE}} wolfssl
46+ working-directory : ${{ github.workspace }}\ wolfssl
4747 run : nuget restore ${{env.WOLFSSL_SOLUTION_FILE_PATH}}
4848
4949 - name : updated user_settings.h for sshd and x509
@@ -55,19 +55,27 @@ jobs:
5555 run : get-content ${{env.USER_SETTINGS_H_NEW}} | %{$_ -replace "if 0","if 1"}
5656
5757 - name : Build wolfssl library
58- working-directory : ${{env.GITHUB_WORKSPACE}} wolfssl
58+ working-directory : ${{ github.workspace }}\ wolfssl
5959 run : msbuild /m /p:PlatformToolset=v142 /p:Platform=${{env.BUILD_PLATFORM}} /p:Configuration=${{env.WOLFSSL_BUILD_CONFIGURATION}} /t:wolfssl ${{env.WOLFSSL_SOLUTION_FILE_PATH}}
6060
6161 - name : Restore NuGet packages
62- working-directory : ${{env.GITHUB_WORKSPACE}} wolfssh\ide\winvs
62+ working-directory : ${{ github.workspace }}\ wolfssh\ide\winvs
6363 run : nuget restore ${{env.SOLUTION_FILE_PATH}}
6464
6565 - name : Build wolfssh
66- working-directory : ${{env.GITHUB_WORKSPACE}} wolfssh\ide\winvs
66+ working-directory : ${{ github.workspace }}\ wolfssh\ide\winvs
6767 run : msbuild /m /p:PlatformToolset=v142 /p:Platform=${{env.BUILD_PLATFORM}} /p:WindowsTargetPlatformVersion=${{env.TARGET_PLATFORM}} /p:Configuration=${{env.WOLFSSH_BUILD_CONFIGURATION}} ${{env.SOLUTION_FILE_PATH}}
6868
69+ - name : Upload wolfSSH build artifacts
70+ uses : actions/upload-artifact@v4
71+ with :
72+ name : wolfssh-windows-build
73+ if-no-files-found : error
74+ path : |
75+ wolfssh/ide/winvs/**/Release/**
76+
6977 - name : Create PowerShell script to import cert to store
70- working-directory : ${{env.GITHUB_WORKSPACE}} wolfssh
78+ working-directory : ${{ github.workspace }}\ wolfssh
7179 run : |
7280 @"
7381 # Import certificate and key to Windows Certificate Store
@@ -128,7 +136,7 @@ jobs:
128136 "@ | Out-File -FilePath import-cert.ps1 -Encoding UTF8
129137
130138 - name : Build import script
131- working-directory : ${{env.GITHUB_WORKSPACE}} wolfssh
139+ working-directory : ${{ github.workspace }}\ wolfssh
132140 shell : pwsh
133141 run : |
134142 # Note: This step is informational - actual import happens in test job
@@ -159,8 +167,14 @@ jobs:
159167 with :
160168 path : wolfssh
161169
170+ - name : Download wolfSSH build artifacts
171+ uses : actions/download-artifact@v4
172+ with :
173+ name : wolfssh-windows-build
174+ path : .
175+
162176 - name : Set up test environment - ${{ matrix.test_name }}
163- working-directory : ${{env.GITHUB_WORKSPACE}} wolfssh
177+ working-directory : ${{ github.workspace }}\ wolfssh
164178 shell : pwsh
165179 run : |
166180 Write-Host "=== Test Configuration ==="
@@ -183,7 +197,7 @@ jobs:
183197
184198 Write-Host "Server cert created: $($serverCert.Subject)"
185199 Write-Host "Server cert thumbprint: $($serverCert.Thumbprint)"
186- Write-Host "SERVER_CERT_SUBJECT=$($serverCert.Subject)" | Out-File -FilePath $env:GITHUB_ENV -Append
200+ Add-Content -Path $env:GITHUB_ENV -Value "SERVER_CERT_SUBJECT=$($serverCert.Subject)"
187201
188202 # Create client certificate in cert store
189203 $clientCert = New-SelfSignedCertificate `
@@ -197,10 +211,10 @@ jobs:
197211
198212 Write-Host "Client cert created: $($clientCert.Subject)"
199213 Write-Host "Client cert thumbprint: $($clientCert.Thumbprint)"
200- Write-Host "CLIENT_CERT_SUBJECT=$($clientCert.Subject)" | Out-File -FilePath $env:GITHUB_ENV -Append
214+ Add-Content -Path $env:GITHUB_ENV -Value "CLIENT_CERT_SUBJECT=$($clientCert.Subject)"
201215
202216 - name : Create wolfSSHd config file
203- working-directory : ${{env.GITHUB_WORKSPACE}} wolfssh
217+ working-directory : ${{ github.workspace }}\ wolfssh
204218 shell : pwsh
205219 run : |
206220 $configContent = @"
@@ -230,7 +244,7 @@ jobs:
230244 Get-Content sshd_config_test
231245
232246 - name : Find wolfSSH executables
233- working-directory : ${{env.GITHUB_WORKSPACE}} wolfssh
247+ working-directory : ${{ github.workspace }}\ wolfssh
234248 shell : pwsh
235249 run : |
236250 # Find wolfsshd.exe
@@ -239,7 +253,7 @@ jobs:
239253 Select-Object -First 1
240254 if ($sshdExe) {
241255 Write-Host "Found wolfsshd.exe at: $($sshdExe.FullName)"
242- Write-Host "SSHD_PATH=$($sshdExe.FullName)" | Out-File -FilePath $env:GITHUB_ENV -Append
256+ Add-Content -Path $env:GITHUB_ENV -Value "SSHD_PATH=$($sshdExe.FullName)"
243257 } else {
244258 Write-Host "ERROR: wolfsshd.exe not found"
245259 Get-ChildItem -Recurse -Filter "*.exe" | Select-Object FullName
@@ -252,7 +266,7 @@ jobs:
252266 Select-Object -First 1
253267 if ($sftpExe) {
254268 Write-Host "Found wolfsftp.exe at: $($sftpExe.FullName)"
255- Write-Host "SFTP_PATH=$($sftpExe.FullName)" | Out-File -FilePath $env:GITHUB_ENV -Append
269+ Add-Content -Path $env:GITHUB_ENV -Value "SFTP_PATH=$($sftpExe.FullName)"
256270 } else {
257271 Write-Host "ERROR: wolfsftp.exe not found"
258272 Get-ChildItem -Recurse -Filter "*.exe" | Select-Object FullName
@@ -265,13 +279,13 @@ jobs:
265279 Select-Object -First 1
266280 if ($sshExe) {
267281 Write-Host "Found wolfssh.exe at: $($sshExe.FullName)"
268- Write-Host "SSH_PATH=$($sshExe.FullName)" | Out-File -FilePath $env:GITHUB_ENV -Append
282+ Add-Content -Path $env:GITHUB_ENV -Value "SSH_PATH=$($sshExe.FullName)"
269283 } else {
270284 Write-Host "WARNING: wolfssh.exe not found (SSH client test will be skipped)"
271285 }
272286
273287 - name : Start wolfSSHd in background
274- working-directory : ${{env.GITHUB_WORKSPACE}} wolfssh
288+ working-directory : ${{ github.workspace }}\ wolfssh
275289 shell : pwsh
276290 run : |
277291 $sshdPath = (Get-Content env:SSHD_PATH)
@@ -286,7 +300,7 @@ jobs:
286300 -PassThru -NoNewWindow
287301
288302 Write-Host "Started wolfSSHd with PID: $($sshdProcess.Id)"
289- Write-Host "SSHD_PID=$($sshdProcess.Id)" | Out-File -FilePath $env:GITHUB_ENV -Append
303+ Add-Content -Path $env:GITHUB_ENV -Value "SSHD_PID=$($sshdProcess.Id)"
290304
291305 # Wait a bit for server to start
292306 Start-Sleep -Seconds 3
@@ -298,7 +312,7 @@ jobs:
298312 }
299313
300314 - name : Test SFTP connection
301- working-directory : ${{env.GITHUB_WORKSPACE}} wolfssh
315+ working-directory : ${{ github.workspace }}\ wolfssh
302316 shell : pwsh
303317 run : |
304318 $sftpPath = (Get-Content env:SFTP_PATH)
@@ -383,7 +397,7 @@ jobs:
383397 Write-Host "Test completed - key exchange appears to have worked"
384398
385399 - name : Test SSH client connection
386- working-directory : ${{env.GITHUB_WORKSPACE}} wolfssh
400+ working-directory : ${{ github.workspace }}\ wolfssh
387401 shell : pwsh
388402 run : |
389403 $sshPath = (Get-Content env:SSH_PATH -ErrorAction SilentlyContinue)
@@ -462,7 +476,7 @@ jobs:
462476
463477 - name : Cleanup
464478 if : always()
465- working-directory : ${{env.GITHUB_WORKSPACE}} wolfssh
479+ working-directory : ${{ github.workspace }}\ wolfssh
466480 shell : pwsh
467481 run : |
468482 # Stop wolfSSHd
0 commit comments