Skip to content

Commit 3d37105

Browse files
Avoid building the same stuff twice for helix subsets.
1 parent 9a1fa23 commit 3d37105

File tree

1 file changed

+39
-11
lines changed

1 file changed

+39
-11
lines changed

.azure/pipelines/ci-public.yml

Lines changed: 39 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -553,20 +553,46 @@ stages:
553553
publishOnError: true
554554
includeForks: true
555555

556-
# Helix x64 subset 1
556+
# Helix x64 build - shared by both Helix test subsets
557557
- template: jobs/default-build.yml
558558
parameters:
559-
jobName: Helix_x64_Subset_1
560-
jobDisplayName: 'Tests: Helix x64 Subset 1'
559+
jobName: Helix_x64_Build
560+
jobDisplayName: 'Build: Helix x64'
561561
agentOs: Windows
562-
timeoutInMinutes: 240
562+
timeoutInMinutes: 120
563563
steps:
564564
# Build the shared framework
565565
- script: ./eng/build.cmd -ci -prepareMachine -nativeToolsOnMachine -nobl -all -pack -arch x64
566566
/p:CrossgenOutput=false /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log $(_InternalRuntimeDownloadArgs)
567567
/p:VsTestUseMSBuildOutput=false
568568
displayName: Build shared fx
569-
# -noBuildRepoTasks -noBuildNative -noBuild to avoid repeating work done in the previous step.
569+
- task: PublishPipelineArtifact@1
570+
displayName: Publish Helix build artifacts
571+
inputs:
572+
targetPath: $(Build.SourcesDirectory)/artifacts
573+
artifactName: Helix_Build_Artifacts
574+
artifacts:
575+
- name: Helix_Build_Logs_Attempt_$(System.JobAttempt)
576+
path: artifacts/log/
577+
publishOnError: true
578+
includeForks: true
579+
580+
# Helix x64 subset 1
581+
- template: jobs/default-build.yml
582+
parameters:
583+
jobName: Helix_x64_Subset_1
584+
jobDisplayName: 'Tests: Helix x64 Subset 1'
585+
agentOs: Windows
586+
dependsOn: Helix_x64_Build
587+
timeoutInMinutes: 240
588+
steps:
589+
# Download build artifacts from Helix_x64_Build job
590+
- task: DownloadPipelineArtifact@2
591+
displayName: Download Helix build artifacts
592+
inputs:
593+
artifact: Helix_Build_Artifacts
594+
path: $(Build.SourcesDirectory)/artifacts
595+
# -noBuildRepoTasks -noBuildNative -noBuild to avoid repeating work done in the build job.
570596
- script: ./eng/build.cmd -ci -prepareMachine -nativeToolsOnMachine -all -noBuildRepoTasks -noBuildNative -noBuild -test
571597
-projects eng\helix\helix.proj /p:IsHelixPRCheck=true /p:IsHelixJob=true
572598
/p:CrossgenOutput=false /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log $(_InternalRuntimeDownloadArgs)
@@ -588,14 +614,16 @@ stages:
588614
jobName: Helix_x64_Subset_2
589615
jobDisplayName: 'Tests: Helix x64 Subset 2'
590616
agentOs: Windows
617+
dependsOn: Helix_x64_Build
591618
timeoutInMinutes: 240
592619
steps:
593-
# Build the shared framework
594-
- script: ./eng/build.cmd -ci -prepareMachine -nativeToolsOnMachine -nobl -all -pack -arch x64
595-
/p:CrossgenOutput=false /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log $(_InternalRuntimeDownloadArgs)
596-
/p:VsTestUseMSBuildOutput=false
597-
displayName: Build shared fx
598-
# -noBuildRepoTasks -noBuildNative -noBuild to avoid repeating work done in the previous step.
620+
# Download build artifacts from Helix_x64_Build job
621+
- task: DownloadPipelineArtifact@2
622+
displayName: Download Helix build artifacts
623+
inputs:
624+
artifact: Helix_Build_Artifacts
625+
path: $(Build.SourcesDirectory)/artifacts
626+
# -noBuildRepoTasks -noBuildNative -noBuild to avoid repeating work done in the build job.
599627
- script: ./eng/build.cmd -ci -prepareMachine -nativeToolsOnMachine -all -noBuildRepoTasks -noBuildNative -noBuild -test
600628
-projects eng\helix\helix.proj /p:IsHelixPRCheck=true /p:IsHelixJob=true
601629
/p:CrossgenOutput=false /p:ASPNETCORE_TEST_LOG_DIR=artifacts/log $(_InternalRuntimeDownloadArgs)

0 commit comments

Comments
 (0)