diff --git a/.pipelines/v2/templates/job-build-project.yml b/.pipelines/v2/templates/job-build-project.yml index f55d9f71a9..f5bb7300be 100644 --- a/.pipelines/v2/templates/job-build-project.yml +++ b/.pipelines/v2/templates/job-build-project.yml @@ -456,6 +456,12 @@ jobs: Copy-Item src\gpo\assets\* "$(JobOutputDirectory)/gpo" -Recurse displayName: Stage GPO files + - ${{ if eq(parameters.publishArtifacts, true) }}: + - publish: $(JobOutputDirectory) + artifact: $(JobOutputArtifactName) + displayName: Publish all outputs + condition: always() + # Running the tests may result in future jobs consuming artifacts out of this build - ${{ if eq(parameters.runTests, true) }}: - task: CopyFiles@2 @@ -465,8 +471,17 @@ jobs: contents: '$(BuildPlatform)/$(BuildConfiguration)/**/*' targetFolder: '$(JobOutputDirectory)\$(BuildPlatform)\$(BuildConfiguration)' - - ${{ if eq(parameters.publishArtifacts, true) }}: - - publish: $(JobOutputDirectory) - artifact: $(JobOutputArtifactName) - displayName: Publish all outputs + - task: CopyFiles@2 + displayName: Stage entire build output + inputs: + sourceFolder: $(JobOutputDirectory) + contents: |- + ** + !**\*.pdb + !**\*.lib + targetFolder: '$(JobOutputDirectory)\TestArtifacts' + + - publish: $(JobOutputDirectory)\TestArtifacts + artifact: $(JobOutputArtifactName)-TestArtifacts + displayName: Publish all outputs for testing condition: always() diff --git a/.pipelines/v2/templates/job-test-project.yml b/.pipelines/v2/templates/job-test-project.yml index 0bf4641e42..81c687ad4a 100644 --- a/.pipelines/v2/templates/job-test-project.yml +++ b/.pipelines/v2/templates/job-test-project.yml @@ -19,6 +19,7 @@ jobs: BuildPlatform: ${{ parameters.platform }} BuildConfiguration: ${{ parameters.configuration }} SrcPath: $(Build.Repository.LocalPath) + TestArtifactsName: build-${{ parameters.platform }}-${{ parameters.configuration }}${{ parameters.inputArtifactStem }}-TestArtifacts pool: ${{ if eq(variables['System.CollectionId'], 'cb55739e-4afe-46a3-970f-1b49d8ee7564') }}: ${{ if ne(parameters.platform, 'ARM64') }}: @@ -59,10 +60,10 @@ jobs: - script: reg add "HKLM\Software\Policies\Microsoft\Edge\WebView2\ReleaseChannels" /v PowerToys.exe /t REG_SZ /d "3" displayName: "Enable WebView2 Canary Channel" - + - download: current displayName: Download artifacts - artifact: build-${{ parameters.platform }}-${{ parameters.configuration }}${{ parameters.inputArtifactStem }} + artifact: $(TestArtifactsName) patterns: |- ** !**\*.pdb @@ -91,7 +92,7 @@ jobs: platform: '$(BuildPlatform)' configuration: '$(BuildConfiguration)' testSelector: 'testAssemblies' - searchFolder: '$(Pipeline.Workspace)\build-${{ parameters.platform }}-${{ parameters.configuration }}${{ parameters.inputArtifactStem }}' + searchFolder: '$(Pipeline.Workspace)\$(TestArtifactsName)' vsTestVersion: 'toolsInstaller' uiTests: true rerunFailedTests: true