326ef7c9fd
* Add .NET 8 target to packable projects * Update test projects * Update sample projects to target .NET 8 * Update main Avalonia package to target .NET 8 as well * Remove MSBuildEnableWorkloadResolver hack and some minor change * Use net8.0 in nuke build as well * Pin 8.0.0 SDK * Adjust API validation * Pin a valid version * Remove net461 target from Avalonia package * Remove unused net6.0 target from Avalonia.Designer.HostApp * Adjust API diff * Update ControlCatalog.Android.csproj * Remove MSBuildEnableWorkloadResolver * Fix Browser issues on .NET 8 * Fix .NET 8 error * Fix merge conflicts * Replace explicit TFMs in .csproj files with a centralized registry * Fix merge conflict * Fix AvsLegacyWindowsTargetFrameworks and add hacks for the tests * Update XCode project CommandLineArgument --------- Co-authored-by: Nikita Tsukanov <keks9n@gmail.com>
96 lines
2.4 KiB
YAML
96 lines
2.4 KiB
YAML
jobs:
|
|
- job: Mac
|
|
pool:
|
|
name: 'AvaloniaMacPool'
|
|
|
|
steps:
|
|
- task: UseDotNet@2
|
|
displayName: 'Use .NET 6.0 Runtime'
|
|
inputs:
|
|
packageType: runtime
|
|
version: 6.0.x
|
|
|
|
- task: UseDotNet@2
|
|
displayName: 'Use .NET 8.0 SDK'
|
|
inputs:
|
|
packageType: sdk
|
|
useGlobalJson: true
|
|
|
|
- script: system_profiler SPDisplaysDataType |grep Resolution
|
|
displayName: 'Get Resolution'
|
|
|
|
- script: |
|
|
arch="x64"
|
|
if [[ $(uname -m) == 'arm64' ]]; then
|
|
arch="arm64"
|
|
fi
|
|
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
|
|
pkill node
|
|
pkill testmanagerd
|
|
appium > appium.out &
|
|
pkill IntegrationTestApp
|
|
./build.sh CompileNative
|
|
rm -rf $(osascript -e "POSIX path of (path to application id \"net.avaloniaui.avalonia.integrationtestapp\")")
|
|
pkill IntegrationTestApp
|
|
./samples/IntegrationTestApp/bundle.sh
|
|
open -n ./samples/IntegrationTestApp/bin/Debug/net8.0/osx-$arch/publish/IntegrationTestApp.app
|
|
pkill IntegrationTestApp
|
|
displayName: 'Build IntegrationTestApp'
|
|
|
|
- task: DotNetCoreCLI@2
|
|
displayName: 'Run Integration Tests'
|
|
inputs:
|
|
command: 'test'
|
|
projects: 'tests/Avalonia.IntegrationTests.Appium/Avalonia.IntegrationTests.Appium.csproj'
|
|
arguments: '-l "console;verbosity=detailed"'
|
|
|
|
- script: |
|
|
pkill IntegrationTestApp
|
|
pkill node
|
|
displayName: 'Stop Appium'
|
|
|
|
- publish: appium.out
|
|
displayName: 'Publish appium logs on failure'
|
|
condition: failed()
|
|
|
|
- job: Windows
|
|
pool:
|
|
vmImage: 'windows-2022'
|
|
|
|
steps:
|
|
- task: UseDotNet@2
|
|
displayName: 'Use .NET 6.0 Runtime'
|
|
inputs:
|
|
packageType: runtime
|
|
version: 6.0.x
|
|
|
|
- task: UseDotNet@2
|
|
displayName: 'Use .NET 8.0 SDK'
|
|
inputs:
|
|
packageType: sdk
|
|
useGlobalJson: true
|
|
|
|
- task: Windows Application Driver@0
|
|
inputs:
|
|
OperationType: 'Start'
|
|
AgentResolution: '4K'
|
|
displayName: 'Start WinAppDriver'
|
|
|
|
- task: DotNetCoreCLI@2
|
|
displayName: 'Build IntegrationTestApp'
|
|
inputs:
|
|
command: 'build'
|
|
projects: 'samples/IntegrationTestApp/IntegrationTestApp.csproj'
|
|
|
|
- task: DotNetCoreCLI@2
|
|
displayName: 'Run Integration Tests'
|
|
retryCountOnTaskFailure: 3
|
|
inputs:
|
|
command: 'test'
|
|
projects: 'tests/Avalonia.IntegrationTests.Appium/Avalonia.IntegrationTests.Appium.csproj'
|
|
|
|
- task: Windows Application Driver@0
|
|
inputs:
|
|
OperationType: 'Stop'
|
|
displayName: 'Stop WinAppDriver'
|