@@ -39,8 +39,10 @@ variables:
3939 value : RPMs
4040 - name : toolchainArtifactNameBase
4141 value : Toolchain
42+ - name : toolchainTestsArtifactNameBase
43+ value : Toolchain_tests
4244 - name : system.debug
43- value : ' ${{ parameters.debug }}'
45+ value : " ${{ parameters.debug }}"
4446
4547extends :
4648 template : v2/OneBranch.NonOfficial.CrossPlat.yml@templates
@@ -74,6 +76,9 @@ extends:
7476 # Toolchain package tests should be run through the full package build, calculate the list of packages that should be re-tested
7577 # and make it available to the next stage via an output variable: 'CalculateToolchainPackageRetestList.toolchainPackageRetestList'
7678 - template : .pipelines/templates/ToolchainCalculatePackageRetests.yml@self
79+ parameters :
80+ # GCC fails to build as a regular package.
81+ ignoredSpecs : ["gcc"]
7782
7883 - script : echo "##vso[task.setvariable variable=toolchainArtifactName;isOutput=true]$(ob_artifactBaseName)"
7984 name : " ToolchainArtifactName"
@@ -99,9 +104,8 @@ extends:
99104 isCustom : true
100105 name : ${{ configuration.agentPool }}
101106 variables :
102- ob_artifactBaseName : ${{ variables. rpmsArtifactNameBase }} _${{ configuration.name }}_$(System.JobAttempt)
107+ ob_artifactBaseName : $( rpmsArtifactNameBase) _${{ configuration.name }}_$(System.JobAttempt)
103108 ob_outputDirectory : $(Build.ArtifactStagingDirectory)
104- testListFromToolchain : $[ stageDependencies.Toolchain_${{ configuration.name }}.Build.outputs['CalculateToolchainPackageRetestList.toolchainPackageRetestList'] ]
105109 toolchainArtifactName : $[ stageDependencies.Toolchain_${{ configuration.name }}.Build.outputs['ToolchainArtifactName.toolchainArtifactName'] ]
106110 steps :
107111 - template : .pipelines/templates/PackageBuild.yml@self
@@ -111,25 +115,62 @@ extends:
111115 isCheckBuild : true
112116 isQuickRebuildPackages : true
113117 isUseCCache : true
114- outputArtifactsFolder : $(ob_outputDirectory)
115118 maxCPU : " ${{ configuration.maxCPUs }}"
119+ outputArtifactsFolder : $(ob_outputDirectory)
116120 pipArtifactFeeds : " mariner/Mariner-Pypi-Feed"
117121 selfRepoName : self
118122 testSuiteName : " [${{ configuration.name }}] Package test"
119- testRerunList : " $(testListFromToolchain)"
120123
121124 - script : echo "##vso[task.setvariable variable=rpmsArtifactName;isOutput=true]$(ob_artifactBaseName)"
122125 name : " RPMsArtifactName"
123126 displayName : " Set variable for published artifact name"
124127
125128 - task : PublishPipelineArtifact@1
126129 inputs :
127- artifact : ${{ variables. rpmsArtifactNameBase }} _${{ configuration.name }}_$(System.JobAttempt)
130+ artifact : $( rpmsArtifactNameBase) _${{ configuration.name }}_$(System.JobAttempt)
128131 targetPath : $(ob_outputDirectory)
129132 condition : always()
130133 displayName : " Publish packages build artifacts"
131134
132- - stage : sodiff_${{ configuration.name }}
135+ - stage : Toolchain_tests_${{ configuration.name }}
136+ dependsOn : Toolchain_${{ configuration.name }}
137+ jobs :
138+ - job : TestToolchainPackages
139+ condition : stageDependencies.Toolchain_${{ configuration.name }}.Build.outputs['CalculateToolchainPackageRetestList.toolchainPackageRetestList']
140+ pool :
141+ type : linux
142+ isCustom : true
143+ name : ${{ configuration.agentPool }}
144+ variables :
145+ ob_artifactBaseName : $(toolchainTestsArtifactNameBase)_${{ configuration.name }}_$(System.JobAttempt)
146+ ob_outputDirectory : $(Build.ArtifactStagingDirectory)
147+ testListFromToolchain : $[ stageDependencies.Toolchain_${{ configuration.name }}.Build.outputs['CalculateToolchainPackageRetestList.toolchainPackageRetestList'] ]
148+ toolchainArtifactName : $[ stageDependencies.Toolchain_${{ configuration.name }}.Build.outputs['ToolchainArtifactName.toolchainArtifactName'] ]
149+ steps :
150+ - template : .pipelines/templates/PackageBuild.yml@self
151+ parameters :
152+ checkBuildRetries : " 1"
153+ customToolchainArtifactName : $(toolchainArtifactName)
154+ isAllowToolchainRebuilds : true
155+ isCheckBuild : true
156+ isQuickRebuildPackages : true
157+ isUseCCache : true
158+ maxCPU : " ${{ configuration.maxCPUs }}"
159+ outputArtifactsFolder : $(ob_outputDirectory)
160+ pipArtifactFeeds : " mariner/Mariner-Pypi-Feed"
161+ selfRepoName : self
162+ srpmPackList : " $(testListFromToolchain)"
163+ testRerunList : " $(testListFromToolchain)"
164+ testSuiteName : " [${{ configuration.name }}] Toolchain test"
165+
166+ - task : PublishPipelineArtifact@1
167+ inputs :
168+ artifact : $(toolchainTestsArtifactNameBase)_${{ configuration.name }}_$(System.JobAttempt)
169+ targetPath : $(ob_outputDirectory)
170+ condition : always()
171+ displayName : " Publish toolchain build artifacts"
172+
173+ - stage : Sodiff_${{ configuration.name }}
133174 dependsOn : RPMs_${{ configuration.name }}
134175 jobs :
135176 - job : Sodiff_Check
0 commit comments