parameters: additionalBuildArguments: '' steps: - checkout: self fetchDepth: 1 submodules: true clean: true - task: NuGetToolInstaller@0 displayName: Ensure NuGet 5.8.0 inputs: versionSpec: 5.8.0 #- template: .\..\..\..\restore-dependencies.yml - task: VisualStudioTestPlatformInstaller@1 displayName: Ensure VSTest Platform - task: NuGetCommand@2 displayName: Restore NuGet packages for PowerToys.sln inputs: command: restore feedsToUse: config configPath: NuGet.config restoreSolution: PowerToys.sln restoreDirectory: '$(Build.SourcesDirectory)\packages' - task: VSBuild@1 displayName: 'Build PowerToys.sln' inputs: solution: '**\PowerToys.sln' vsVersion: 16.0 platform: '$(BuildPlatform)' configuration: '$(BuildConfiguration)' msbuildArgs: ${{ parameters.additionalBuildArguments }} maximumCpuCount: true - task: NuGetCommand@2 displayName: Restore NuGet packages for BugReportTool.sln inputs: command: restore feedsToUse: config configPath: NuGet.config restoreSolution: tools\BugReportTool\BugReportTool.sln restoreDirectory: '$(Build.SourcesDirectory)\tools\BugReportTool\packages' - task: VSBuild@1 displayName: 'Build BugReportTool.sln' inputs: solution: '**\BugReportTool.sln' vsVersion: 16.0 platform: '$(BuildPlatform)' configuration: '$(BuildConfiguration)' msbuildArgs: ${{ parameters.additionalBuildArguments }} maximumCpuCount: true - task: NuGetCommand@2 displayName: Restore NuGet packages for WebcamReportTool.sln inputs: command: restore feedsToUse: config configPath: NuGet.config restoreSolution: tools\WebcamReportTool\WebcamReportTool.sln restoreDirectory: '$(Build.SourcesDirectory)\tools\WebcamReportTool\packages' - task: VSBuild@1 displayName: 'Build WebcamReportTool.sln' inputs: solution: '**\WebcamReportTool.sln' vsVersion: 16.0 platform: '$(BuildPlatform)' configuration: '$(BuildConfiguration)' msbuildArgs: ${{ parameters.additionalBuildArguments }} maximumCpuCount: true - task: NuGetCommand@2 displayName: Restore NuGet packages for PowerToysSetup.sln inputs: command: restore feedsToUse: config configPath: NuGet.config restoreSolution: installer\PowerToysSetup.sln restoreDirectory: '$(Build.SourcesDirectory)\installer\packages' - task: VSBuild@1 displayName: 'Build PowerToysSetup.sln' inputs: solution: '**\installer\PowerToysSetup.sln' vsVersion: 16.0 platform: '$(BuildPlatform)' configuration: '$(BuildConfiguration)' msbuildArgs: ${{ parameters.additionalBuildArguments }} maximumCpuCount: true - task: NuGetCommand@2 displayName: Restore NuGet packages for PowerToysBootstrapper.sln inputs: command: restore feedsToUse: config configPath: NuGet.config restoreSolution: installer\PowerToysBootstrapper\PowerToysBootstrapper.sln restoreDirectory: '$(Build.SourcesDirectory)\installer\PowerToysBootstrapper\packages' - task: VSBuild@1 displayName: 'Build PowerToysBootstrapper.sln' inputs: solution: '**\installer\PowerToysBootstrapper\PowerToysBootstrapper.sln' vsVersion: 16.0 platform: '$(BuildPlatform)' configuration: '$(BuildConfiguration)' msbuildArgs: ${{ parameters.additionalBuildArguments }} maximumCpuCount: true # directly not doing WinAppDriver testing - task: VSTest@2 displayName: 'MS Tests' inputs: platform: '$(BuildPlatform)' configuration: '$(BuildConfiguration)' testSelector: 'testAssemblies' testAssemblyVer2: | **\UnitTests-SvgThumbnailProvider.dll **\Microsoft.PowerToys.Settings.UI.UnitTests.dll **\UnitTests-MarkdownPreviewHandler.dll **\UnitTests-PdfPreviewHandler.dll **\UnitTests-SvgPreviewHandler.dll **\UnitTests-PreviewHandlerCommon.dll **\PreviewPaneUnitTests.dll **\Microsoft.PowerToys.Run.Plugin.Registry.UnitTests.dll **\UnitTest-ColorPickerUI.dll **\Microsoft.Interop.Tests.dll **\ImageResizer.Test.dll **\Community.PowerToys.Run.Plugin.UnitConverter.UnitTest.dll **\Microsoft.Plugin.Folder.UnitTests.dll **\Microsoft.Plugin.Program.UnitTests.dll **\Microsoft.PowerToys.Run.Plugin.Calculator.UnitTest.dll **\Microsoft.Plugin.Uri.UnitTests.dll **\Wox.Test.dll **\Microsoft.PowerToys.Run.Plugin.System.UnitTests.dll !**\obj\** # Native dlls - task: VSTest@2 displayName: 'Native Tests' inputs: platform: '$(BuildPlatform)' configuration: '$(BuildConfiguration)' testSelector: 'testAssemblies' testAssemblyVer2: | **\KeyboardManagerEngineTest.dll **\KeyboardManagerEditorTest.dll **\UnitTests-CommonLib.dll **\PowerRenameUnitTests.dll **\powerpreviewTest.dll !**\obj\**