From fd7a89629c321b139d393a224dde2021a98e7888 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Jare=C5=A1?= Date: Fri, 1 Apr 2022 12:39:06 +0200 Subject: [PATCH] Fix build (#3539) * Add pack step, and revert package cleanup * Split publish and pack for vsix to get all dlls in place. * Make manifest it's own Manifest step. --- scripts/build.ps1 | 24 ++++++++++++++++++------ scripts/verify-nupkgs.ps1 | 2 +- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/scripts/build.ps1 b/scripts/build.ps1 index cff737dc9c..9468bb6ba5 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -51,7 +51,7 @@ Param( [Switch] $Force, [Alias("s")] - [String[]] $Steps = @("InstallDotnet", "Restore", "UpdateLocalization", "Build", "Publish", "PrepareAcceptanceTests") + [String[]] $Steps = @("InstallDotnet", "Restore", "UpdateLocalization", "Build", "Publish", "Pack", "Manifest", "PrepareAcceptanceTests") ) $ErrorActionPreference = 'Stop' @@ -759,12 +759,10 @@ function Move-Loc-Files($sourceDir, $destinationDir, $dllName) { } } -function Create-VsixPackage { - Write-Log "Create-VsixPackage: Started." +function Publish-VsixPackage { + Write-Log "Publish-VsixPackage: Started." $timer = Start-Timer - $vsixSourceDir = Join-Path $env:TP_ROOT_DIR "src\package\VSIXProject" - $vsixProjectDir = Join-Path $env:TP_OUT_DIR "$TPB_Configuration\VSIX" $packageDir = Get-FullCLRPackageDirectory $extensionsPackageDir = Join-Path $packageDir "Extensions" $testImpactComComponentsDir = Join-Path $extensionsPackageDir "TestImpact" @@ -847,10 +845,20 @@ function Create-VsixPackage { Copy-Item -Recurse $comComponentsDirectoryTIA\* $legacyTestImpactComComponentsDir -Force Copy-Item (Join-Path $env:TP_PACKAGE_PROJ_DIR "ThirdPartyNotices.txt") $packageDir -Force + + Write-Log "Publish-VsixPackage: Complete. {$(Get-ElapsedTime($timer))}" +} + +function Create-VsixPackage { + Write-Log "Create-VsixPackage: Started." + $timer = Start-Timer Write-Verbose "Locating MSBuild install path..." $msbuildPath = Locate-MSBuildPath + $vsixSourceDir = Join-Path $env:TP_ROOT_DIR "src\package\VSIXProject" + $vsixProjectDir = Join-Path $env:TP_OUT_DIR "$TPB_Configuration\VSIX" + # Create vsix only when msbuild is installed. if (![string]::IsNullOrEmpty($msbuildPath)) { # Copy the vsix project to artifacts directory to modify manifest @@ -1276,11 +1284,15 @@ if ($Force -or $Steps -contains "Build") { if ($Force -or $Steps -contains "Publish") { Publish-Package + Publish-VsixPackage +} + +if ($Force -or $Steps -contains "Pack") { Create-VsixPackage Create-NugetPackages } -if ($Force -or $Steps -contains "Publish" -or $Steps -contains "Manifest") { +if ($Force -or $Steps -contains "Manifest") { Generate-Manifest -PackageFolder $TPB_PackageOutDir if (Test-Path $TPB_SourceBuildPackageOutDir) { diff --git a/scripts/verify-nupkgs.ps1 b/scripts/verify-nupkgs.ps1 index 7989cb7fbc..cb811640cd 100644 --- a/scripts/verify-nupkgs.ps1 +++ b/scripts/verify-nupkgs.ps1 @@ -58,7 +58,7 @@ function Verify-Nuget-Packages($packageDirectory, $version) # Don't remove the directories after you unpacked them # they are useful for reviewing what is in the package. - # Remove-Item -Force -Recurse $unzipNugetPackageDir | Out-Null + Remove-Item -Force -Recurse $unzipNugetPackageDir | Out-Null } Write-Log "Completed Verify-Nuget-Packages."