| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244 |
- trigger:
- branches:
- include:
- - master
- - rel/*
- paths:
- include:
- - Rx.NET/Source/*
- - .editorconfig
- - azure-pipelines.rx.yml
- pr:
- branches:
- include:
- - master
- - rel/*
- paths:
- include:
- - Rx.NET/Source/*
- - .editorconfig
- - azure-pipelines.rx.yml
- jobs:
- - job: Build
- pool:
- vmImage: windows-2019
- variables:
- BuildConfiguration: Release
- BuildPlatform: Any CPU
-
- steps:
- - task: DotNetCoreInstaller@0
- inputs:
- version: '3.0.100-preview4-010374'
- - task: DotNetCoreCLI@2
- inputs:
- command: custom
- custom: tool
- arguments: install --tool-path . nbgv
- displayName: Install NBGV tool
- - script: nbgv cloud -a -p Rx.NET/Source
- displayName: Set Version
- - powershell: iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/onovotny/UpdateVsOnAgent/master/Fix-VisualStudioPreviewNuGetSdk.ps1'))
- displayName: VS Preview workaround
- - task: MSBuild@1
- displayName: Build System.Reactive.sln
- inputs:
- solution: Rx.NET/Source/System.Reactive.sln
- msbuildArguments: /restore /t:build /p:CreatePackage=true /p:NoPackageAnalysis=true /p:PackageOutputPath=$(Build.ArtifactStagingDirectory)\artifacts
- configuration: $(BuildConfiguration)
- maximumCpuCount: true
- - task: NuGetCommand@2
- displayName: Pack compatibility package
- inputs:
- command: custom
- arguments: pack Rx.NET/Source/facades/System.Reactive.Compatibility.nuspec -Version $(NBGV_NuGetPackageVersion) -MinClientVersion 2.12 -NoPackageAnalysis -outputdirectory $(Build.ArtifactStagingDirectory)\artifacts
-
- - task: MSBuild@1
- displayName: Build for Test (ppdb) workaround
- inputs:
- solution: Rx.NET/Source/System.Reactive.sln
- msbuildArguments: /t:build /p:DebugType=portable
- platform: $(BuildPlatform)
- configuration: $(BuildConfiguration)
- maximumCpuCount: true
- - task: DotNetCoreCLI@2
- inputs:
- command: test
- projects: Rx.NET/Source/tests/Tests.System.Reactive/*.csproj
- arguments: -c $(BuildConfiguration) --no-build --no-restore --filter "SkipCI!=true" --collect:"Code Coverage" -s $(System.DefaultWorkingDirectory)/Rx.NET/Source/CodeCoverage.runsettings
- displayName: Run Unit Tests
- - task: DotNetCoreCLI@2
- inputs:
- command: test
- projects: Rx.NET/Source/tests/Tests.System.Reactive.ApiApprovals/Tests.System.Reactive.ApiApprovals.csproj
- arguments: -c $(BuildConfiguration) --no-build --no-restore
- displayName: Run Api Approvals Tests
-
- - task: PowerShell@2
- displayName: Authenticode Sign Packages
- inputs:
- filePath: Rx.NET/Source/build/Sign-Package.ps1
- env:
- SignClientUser: $(SignClientUser)
- SignClientSecret: $(SignClientSecret)
- ArtifactDirectory: $(Build.ArtifactStagingDirectory)\artifacts
- condition: and(succeeded(), not(eq(variables['build.reason'], 'PullRequest')), not(eq(variables['SignClientSecret'], '')), not(eq(variables['SignClientUser'], '')))
- - task: PublishBuildArtifacts@1
- inputs:
- PathtoPublish: $(Build.ArtifactStagingDirectory)\artifacts
- ArtifactName: artifacts
- publishLocation: Container
- condition: always()
- - job: Integration_Linux_Tests
- dependsOn: Build
- pool:
- vmImage: ubuntu-16.04
-
- variables:
- BuildConfiguration: Release
- BuildPlatform: Any CPU
-
- steps:
- - task: DotNetCoreInstaller@0
- inputs:
- version: '2.2.104'
- - task: DotNetCoreCLI@2
- inputs:
- command: custom
- custom: tool
- arguments: install --tool-path . nbgv
- displayName: Install NBGV tool
- - script: ./nbgv cloud -a -p Rx.NET/Source
- displayName: Set Version
- - task: DotNetCoreInstaller@0
- inputs:
- version: '3.0.100-preview4-010374'
- - task: DownloadBuildArtifacts@0
- displayName: 'Download Build Artifacts'
- inputs:
- artifactName: artifacts
- downloadPath: $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LocalPackages
-
- - script: mv $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LocalPackages/artifacts/*.* $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LocalPackages
- - task: DotNetCoreCLI@2
- displayName: Update Rx
- inputs:
- command: custom
- projects: $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LinuxTests/LinuxTests.csproj
- custom: add
- arguments: package System.Reactive -v $(NBGV_NuGetPackageVersion) -s $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LocalPackages
- - task: DotNetCoreCLI@2
- displayName: Update Aliases
- inputs:
- command: custom
- projects: $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LinuxTests/LinuxTests.csproj
- custom: add
- arguments: package System.Reactive.Observable.Aliases -v $(NBGV_NuGetPackageVersion) -s $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LocalPackages
- - task: DotNetCoreCLI@2
- displayName: Update Testing
- inputs:
- command: custom
- projects: $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LinuxTests/LinuxTests.csproj
- custom: add
- arguments: package Microsoft.Reactive.Testing -v $(NBGV_NuGetPackageVersion) -s $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LocalPackages
- - task: DotNetCoreCLI@2
- inputs:
- command: test
- projects: $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LinuxTests/LinuxTests.csproj
- arguments: -c $(BuildConfiguration) -f netcoreapp3.0
- displayName: Run 3.0 Tests on Linux
- - task: DotNetCoreInstaller@0
- inputs:
- version: '2.2.104'
- - task: DotNetCoreCLI@2
- inputs:
- command: test
- projects: $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LinuxTests/LinuxTests.csproj
- arguments: -c $(BuildConfiguration) -f netcoreapp2.1 /p:TargetFrameworks=netcoreapp2.1
- displayName: Run 2.1 Tests on Linux
- - job: Integration_WindowsDesktop_Tests
- dependsOn: Build
- pool:
- vmImage: windows-2019
-
- variables:
- BuildConfiguration: Release
- BuildPlatform: Any CPU
-
- steps:
- - task: DotNetCoreInstaller@0
- inputs:
- version: '3.0.100-preview4-010374'
- - task: DotNetCoreCLI@2
- inputs:
- command: custom
- custom: tool
- arguments: install --tool-path . nbgv
- displayName: Install NBGV tool
- - script: ./nbgv cloud -a -p Rx.NET/Source
- displayName: Set Version
- - task: DownloadBuildArtifacts@0
- displayName: 'Download Build Artifacts'
- inputs:
- artifactName: artifacts
- downloadPath: $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LocalPackages
-
- - powershell: mv $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LocalPackages/artifacts/*.* $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LocalPackages
- - task: DotNetCoreCLI@2
- displayName: Update Rx
- inputs:
- command: custom
- projects: $(System.DefaultWorkingDirectory)/Rx.NET/Integration/WindowsDesktopTests/WindowsDesktopTests.csproj
- custom: add
- arguments: package System.Reactive -v $(NBGV_NuGetPackageVersion) -s $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LocalPackages
- - task: DotNetCoreCLI@2
- displayName: Update Aliases
- inputs:
- command: custom
- projects: $(System.DefaultWorkingDirectory)/Rx.NET/Integration/WindowsDesktopTests/WindowsDesktopTests.csproj
- custom: add
- arguments: package System.Reactive.Observable.Aliases -v $(NBGV_NuGetPackageVersion) -s $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LocalPackages
- - task: DotNetCoreCLI@2
- displayName: Update Testing
- inputs:
- command: custom
- projects: $(System.DefaultWorkingDirectory)/Rx.NET/Integration/WindowsDesktopTests/WindowsDesktopTests.csproj
- custom: add
- arguments: package Microsoft.Reactive.Testing -v $(NBGV_NuGetPackageVersion) -s $(System.DefaultWorkingDirectory)/Rx.NET/Integration/LocalPackages
- - task: DotNetCoreCLI@2
- inputs:
- command: test
- projects: $(System.DefaultWorkingDirectory)/Rx.NET/Integration/WindowsDesktopTests/WindowsDesktopTests.csproj
- arguments: -c $(BuildConfiguration)
- displayName: Run 3.0 Tests on WindowDesktop
|