diff --git a/.vsts-ci/templates/ci-general.yml b/.vsts-ci/templates/ci-general.yml index e252fcf40..aec2aee4e 100644 --- a/.vsts-ci/templates/ci-general.yml +++ b/.vsts-ci/templates/ci-general.yml @@ -26,11 +26,18 @@ steps: performMultiLevelLookup: true - task: PowerShell@2 - displayName: Build and test + displayName: Build inputs: filePath: tools/azurePipelinesBuild.ps1 pwsh: ${{ parameters.pwsh }} +- task: PowerShell@2 + displayName: Test + inputs: + targetType: inline + script: Invoke-Build Test + pwsh: ${{ parameters.pwsh }} + - task: PublishTestResults@2 displayName: Publish test results inputs: diff --git a/PowerShellEditorServices.build.ps1 b/PowerShellEditorServices.build.ps1 index 94b5d6207..afef1b8b5 100644 --- a/PowerShellEditorServices.build.ps1 +++ b/PowerShellEditorServices.build.ps1 @@ -161,15 +161,16 @@ Task SetupHelpForTests { } Task Build FindDotNet, CreateBuildInfo, { + # NOTE: We use /p:UseSharedCompilation=false to work around a bug with CodeQL. Exec { & dotnet restore $VerbosityArgs } - Exec { & dotnet publish $VerbosityArgs -c $Configuration .\src\PowerShellEditorServices\PowerShellEditorServices.csproj -f $script:NetRuntime.Standard } - Exec { & dotnet publish $VerbosityArgs -c $Configuration .\src\PowerShellEditorServices.Hosting\PowerShellEditorServices.Hosting.csproj -f $script:NetRuntime.PS7 } + Exec { & dotnet publish /p:UseSharedCompilation=false $VerbosityArgs -c $Configuration .\src\PowerShellEditorServices\PowerShellEditorServices.csproj -f $script:NetRuntime.Standard } + Exec { & dotnet publish /p:UseSharedCompilation=false $VerbosityArgs -c $Configuration .\src\PowerShellEditorServices.Hosting\PowerShellEditorServices.Hosting.csproj -f $script:NetRuntime.PS7 } if (-not $script:IsNix) { - Exec { & dotnet publish $VerbosityArgs -c $Configuration .\src\PowerShellEditorServices.Hosting\PowerShellEditorServices.Hosting.csproj -f $script:NetRuntime.Desktop } + Exec { & dotnet publish /p:UseSharedCompilation=false $VerbosityArgs -c $Configuration .\src\PowerShellEditorServices.Hosting\PowerShellEditorServices.Hosting.csproj -f $script:NetRuntime.Desktop } } # Build PowerShellEditorServices.VSCode module - Exec { & dotnet publish $VerbosityArgs -c $Configuration .\src\PowerShellEditorServices.VSCode\PowerShellEditorServices.VSCode.csproj -f $script:NetRuntime.Standard } + Exec { & dotnet publish /p:UseSharedCompilation=false $VerbosityArgs -c $Configuration .\src\PowerShellEditorServices.VSCode\PowerShellEditorServices.VSCode.csproj -f $script:NetRuntime.Standard } } Task Test TestServer, TestE2E diff --git a/tools/azurePipelinesBuild.ps1 b/tools/azurePipelinesBuild.ps1 index 13148fe0b..6ff04f284 100644 --- a/tools/azurePipelinesBuild.ps1 +++ b/tools/azurePipelinesBuild.ps1 @@ -20,4 +20,4 @@ Update-Help -Force -ErrorAction SilentlyContinue Install-Module -Name InvokeBuild -RequiredVersion 5.9.7 -Scope CurrentUser -Force Install-Module -Name platyPS -RequiredVersion 0.14.2 -Scope CurrentUser -Force -Invoke-Build -Configuration Release +Invoke-Build -Configuration Release Build