mirror of
https://github.com/microsoft/PowerToys.git
synced 2024-12-19 06:14:11 +08:00
ba4b9cf549
* [ARM64] Install VCRedist using bootstrapper and fix autoupdate * [ARM64] Use system-wide WiX toolset instead of a nuget package * [CI] Install WiX 3.14 * [CI] add wix install script for release.yml * [Doc] Update WiX install steps * [CI]Fix Wix path * Double quotes for full wix path * fixup: verify wix hashes * ignore sha256s * spellcheck * updated vcredist name * norestart for vcredist
186 lines
5.7 KiB
YAML
186 lines
5.7 KiB
YAML
parameters:
|
|
additionalBuildArguments: ''
|
|
|
|
steps:
|
|
- checkout: self
|
|
fetchDepth: 1
|
|
submodules: true
|
|
clean: true
|
|
|
|
- task: UseDotNet@2
|
|
displayName: 'Use .NET 6 SDK'
|
|
inputs:
|
|
packageType: sdk
|
|
version: '6.x'
|
|
|
|
- task: NuGetToolInstaller@1
|
|
displayName: Ensure NuGet Installer
|
|
|
|
- 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: 17.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: 17.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: 17.0
|
|
platform: '$(BuildPlatform)'
|
|
configuration: '$(BuildConfiguration)'
|
|
msbuildArgs: ${{ parameters.additionalBuildArguments }}
|
|
maximumCpuCount: true
|
|
|
|
- task: NuGetCommand@2
|
|
displayName: Restore NuGet packages for StylesReportTool.sln
|
|
inputs:
|
|
command: restore
|
|
feedsToUse: config
|
|
configPath: NuGet.config
|
|
restoreSolution: tools\StylesReportTool\StylesReportTool.sln
|
|
restoreDirectory: '$(Build.SourcesDirectory)\tools\StylesReportTool\packages'
|
|
|
|
- task: VSBuild@1
|
|
displayName: 'Build StylesReportTool.sln'
|
|
inputs:
|
|
solution: '**\StylesReportTool.sln'
|
|
vsVersion: 17.0
|
|
platform: '$(BuildPlatform)'
|
|
configuration: '$(BuildConfiguration)'
|
|
msbuildArgs: ${{ parameters.additionalBuildArguments }}
|
|
maximumCpuCount: true
|
|
|
|
- task: PowerShell@2
|
|
displayName: Download and install WiX 3.14 development build
|
|
inputs:
|
|
targetType: filePath
|
|
filePath: '$(build.sourcesdirectory)\.pipelines\installWiX.ps1'
|
|
|
|
- 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 PowerToys MSI'
|
|
inputs:
|
|
solution: '**\installer\PowerToysSetup.sln'
|
|
vsVersion: 17.0
|
|
platform: '$(BuildPlatform)'
|
|
configuration: '$(BuildConfiguration)'
|
|
msbuildArgs: /t:PowerToysInstaller ${{ parameters.additionalBuildArguments }}
|
|
maximumCpuCount: true
|
|
|
|
- task: VSBuild@1
|
|
displayName: 'Build PowerToys Bootstrapper'
|
|
inputs:
|
|
solution: '**\installer\PowerToysSetup.sln'
|
|
vsVersion: 17.0
|
|
platform: '$(BuildPlatform)'
|
|
configuration: '$(BuildConfiguration)'
|
|
msbuildArgs: /t:PowerToysBootstrapper ${{ parameters.additionalBuildArguments }}
|
|
clean: false
|
|
maximumCpuCount: true
|
|
|
|
# directly not doing WinAppDriver testing
|
|
- task: VSTest@2
|
|
displayName: 'MS Tests'
|
|
condition: ne(variables['BuildPlatform'], 'arm64') # No arm64 agents to run the tests.
|
|
inputs:
|
|
platform: '$(BuildPlatform)'
|
|
configuration: '$(BuildConfiguration)'
|
|
testSelector: 'testAssemblies'
|
|
testAssemblyVer2: |
|
|
**\UnitTests-GcodeThumbnailProvider.dll
|
|
**\UnitTests-SvgThumbnailProvider.dll
|
|
**\UnitTests-StlThumbnailProvider.dll
|
|
**\UnitTests-PdfThumbnailProvider.dll
|
|
**\Settings.UI.UnitTests.dll
|
|
**\UnitTests-MarkdownPreviewHandler.dll
|
|
**\UnitTests-GcodePreviewHandler.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
|
|
**\Microsoft.PowerToys.Run.Plugin.TimeDate.UnitTests.dll
|
|
**\Microsoft.Plugin.WindowsTerminal.UnitTests.dll
|
|
**\Microsoft.Plugin.WindowWalker.UnitTests.dll
|
|
!**\obj\**
|
|
!**\ref\**
|
|
|
|
# Native dlls
|
|
- task: VSTest@2
|
|
condition: ne(variables['BuildPlatform'],'arm64') # No arm64 agents to run the tests.
|
|
displayName: 'Native Tests'
|
|
inputs:
|
|
platform: '$(BuildPlatform)'
|
|
configuration: '$(BuildConfiguration)'
|
|
testSelector: 'testAssemblies'
|
|
testAssemblyVer2: |
|
|
**\KeyboardManagerEngineTest.dll
|
|
**\KeyboardManagerEditorTest.dll
|
|
**\UnitTests-CommonLib.dll
|
|
**\PowerRenameUnitTests.dll
|
|
**\powerpreviewTest.dll
|
|
!**\obj\**
|