123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210 |
- jobs:
- - job: GetPRNumber
- pool:
- vmImage: 'ubuntu-20.04'
- variables:
- SolutionDir: '$(Build.SourcesDirectory)'
- steps:
- - task: UseDotNet@2
- displayName: 'Use .NET 8.0 SDK'
- inputs:
- packageType: sdk
- useGlobalJson: true
- - task: CmdLine@2
- displayName: 'Run Build'
- inputs:
- script: ./build.sh --target OutputVersion --version-output-dir $(Build.ArtifactStagingDirectory)
- - task: PublishBuildArtifacts@1
- inputs:
- PathtoPublish: '$(Build.ArtifactStagingDirectory)'
- ArtifactName: 'PRNumber'
- publishLocation: 'Container'
-
- - job: Linux
- pool:
- vmImage: 'ubuntu-20.04'
- 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: CmdLine@2
- displayName: 'Install Workloads'
- inputs:
- script: |
- dotnet workload install android macos wasm-tools
- - task: CmdLine@2
- displayName: 'Install Tizen Workload'
- inputs:
- targetType: 'inline'
- script: |
- curl -sSL https://raw.githubusercontent.com/Samsung/Tizen.NET/main/workload/scripts/workload-install.sh | sudo bash -s -- -d "/opt/hostedtoolcache/dotnet"
- - task: CmdLine@2
- displayName: 'Run Build'
- inputs:
- script: |
- dotnet --info
- printenv
- ./build.sh --target CiAzureLinux --configuration=Release
- - task: PublishTestResults@2
- inputs:
- testResultsFormat: 'VSTest'
- testResultsFiles: '$(Build.SourcesDirectory)/artifacts/test-results/*.trx'
- condition: not(canceled())
-
- - job: macOS
- variables:
- SolutionDir: '$(Build.SourcesDirectory)'
- pool:
- vmImage: 'macos-12'
- 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: CmdLine@2
- displayName: 'Install Workloads'
- inputs:
- script: |
- dotnet workload install android ios macos wasm-tools
- - task: CmdLine@2
- displayName: 'Install Tizen Workload'
- inputs:
- targetType: 'inline'
- script: |
- curl -sSL https://raw.githubusercontent.com/Samsung/Tizen.NET/main/workload/scripts/workload-install.sh | sudo bash
-
- - task: CmdLine@2
- displayName: 'Generate avalonia-native'
- inputs:
- script: |
- export COREHOST_TRACE=0
- export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
- export DOTNET_CLI_TELEMETRY_OPTOUT=1
- ./build.sh --target GenerateCppHeaders --configuration Release
- - task: Xcode@5
- inputs:
- actions: 'build'
- scheme: ''
- sdk: 'macosx12.3'
- configuration: 'Release'
- xcWorkspacePath: '**/*.xcodeproj/project.xcworkspace'
- xcodeVersion: '13' # Options: 8, 9, default, specifyPath
- args: '-derivedDataPath ./'
- - task: CmdLine@2
- displayName: 'Run Build'
- inputs:
- script: |
- export COREHOST_TRACE=0
- export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
- export DOTNET_CLI_TELEMETRY_OPTOUT=1
- which dotnet
- dotnet --info
- printenv
- ./build.sh --target CiAzureOSX --configuration Release --skip-previewer
- - task: PublishTestResults@2
- inputs:
- testResultsFormat: 'VSTest'
- testResultsFiles: '$(Build.SourcesDirectory)/artifacts/test-results/*.trx'
- condition: not(canceled())
-
- - task: PublishBuildArtifacts@1
- inputs:
- pathToPublish: '$(Build.SourcesDirectory)/Build/Products/Release/'
- artifactName: 'Avalonia.Native.OSX'
- condition: succeeded()
-
- - task: PublishBuildArtifacts@1
- inputs:
- pathtoPublish: '$(Build.SourcesDirectory)/artifacts/nuget'
- artifactName: 'NuGetOSX'
- condition: succeeded()
- - job: Windows
- pool:
- vmImage: 'windows-2022'
- variables:
- SolutionDir: '$(Build.SourcesDirectory)'
- 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: CmdLine@2
- displayName: 'Install Workloads'
- inputs:
- script: |
- dotnet workload install android ios tvos wasm-tools
- - task: PowerShell@2
- displayName: 'Install Tizen Workload'
- inputs:
- targetType: 'inline'
- script: |
- (New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/Samsung/Tizen.NET/main/workload/scripts/workload-install.ps1') | Invoke-Expression
- - task: CmdLine@2
- displayName: 'Install Nuke'
- inputs:
- script: |
- dotnet tool install --global Nuke.GlobalTool --version 6.2.1
- - task: CmdLine@2
- displayName: 'Run Nuke'
- inputs:
- script: |
- set PATH=%PATH%;%USERPROFILE%\.dotnet\tools
- nuke --target CiAzureWindows --configuration Release
-
- - task: PublishTestResults@2
- inputs:
- testResultsFormat: 'VSTest'
- testResultsFiles: '$(Build.SourcesDirectory)/artifacts/test-results/*.trx'
- condition: not(canceled())
- - task: PublishBuildArtifacts@1
- inputs:
- pathtoPublish: '$(Build.SourcesDirectory)/artifacts/nuget'
- artifactName: 'NuGet'
- condition: succeeded()
- - task: PublishBuildArtifacts@1
- inputs:
- pathToPublish: '$(Build.SourcesDirectory)/artifacts/zip'
- artifactName: 'Samples'
- condition: succeeded()
|