@@ -71,33 +71,23 @@ extends:
7171 inputs :
7272 useGlobalJson : true
7373
74- # Install the nuget tool.
75- - task : NuGetToolInstaller@1
76- displayName : ' Use NuGet >=6.11.0'
77- inputs :
78- versionSpec : ' >=6.11.0'
79- checkLatest : true
80-
8174 # Build the Product project
8275 - task : NuGetAuthenticate@1
8376 displayName : ' Authenticate to Azure Artifacts'
8477
85- - pwsh : |
86- @"
87- <?xml version="1.0" encoding="utf-8"?>
88- <configuration>
89- <packageSources>
90- <clear />
91- <add key="GraphDeveloperExperiences_Public" value="https://microsoftgraph.pkgs.visualstudio.com/0985d294-5762-4bc2-a565-161ef349ca3e/_packaging/GraphDeveloperExperiences_Public/nuget/v3/index.json" />
92- </packageSources>
93- </configuration>
94- "@ | Set-Content -Path "$(Build.SourcesDirectory)/nuget.config" -Encoding UTF8
95- displayName: 'Create nuget.config (central feed)'
78+ - task : DotNetCoreCLI@2
79+ displayName : ' restore'
80+ inputs :
81+ command : restore
82+ projects : ' $(Build.SourcesDirectory)\Microsoft.OpenApi.slnx'
83+ feedsToUse : config
84+ nugetConfigPath : ' $(Build.SourcesDirectory)\nuget.config'
85+
9686 - task : DotNetCoreCLI@2
9787 displayName : ' build'
9888 inputs :
9989 projects : ' $(Build.SourcesDirectory)\Microsoft.OpenApi.slnx'
100- arguments : ' --configuration $(BuildConfiguration) --no-incremental'
90+ arguments : ' --configuration $(BuildConfiguration) --no-incremental --no-restore '
10191
10292 # Run the Unit test
10393 - task : DotNetCoreCLI@2
@@ -162,15 +152,15 @@ extends:
162152 PendingAnalysisWaitTimeoutMinutes : ' 5'
163153
164154 # Pack core lib
165- - pwsh : dotnet pack $(Build.SourcesDirectory)/src/Microsoft.OpenApi/Microsoft.OpenApi.csproj -o $(Build.ArtifactStagingDirectory) --configuration $(BuildConfiguration) --no-build --include-symbols --include-source /p:SymbolPackageFormat=snupkg
155+ - pwsh : dotnet pack $(Build.SourcesDirectory)/src/Microsoft.OpenApi/Microsoft.OpenApi.csproj -o $(Build.ArtifactStagingDirectory) --configuration $(BuildConfiguration) --no-build --no-restore -- include-symbols --include-source /p:SymbolPackageFormat=snupkg
166156 displayName : ' pack OpenAPI'
167157
168158 # Pack YamlReader
169- - pwsh : dotnet pack $(Build.SourcesDirectory)/src/Microsoft.OpenApi.YamlReader/Microsoft.OpenApi.YamlReader.csproj -o $(Build.ArtifactStagingDirectory) --configuration $(BuildConfiguration) --no-build --include-symbols --include-source /p:SymbolPackageFormat=snupkg
159+ - pwsh : dotnet pack $(Build.SourcesDirectory)/src/Microsoft.OpenApi.YamlReader/Microsoft.OpenApi.YamlReader.csproj -o $(Build.ArtifactStagingDirectory) --configuration $(BuildConfiguration) --no-build --no-restore -- include-symbols --include-source /p:SymbolPackageFormat=snupkg
170160 displayName : ' pack YamlReader'
171161
172162 # Pack hidi
173- - pwsh : dotnet pack $(Build.SourcesDirectory)/src/Microsoft.OpenApi.Hidi/Microsoft.OpenApi.Hidi.csproj -o $(Build.ArtifactStagingDirectory) --configuration $(BuildConfiguration) --no-build --include-symbols --include-source /p:SymbolPackageFormat=snupkg
163+ - pwsh : dotnet pack $(Build.SourcesDirectory)/src/Microsoft.OpenApi.Hidi/Microsoft.OpenApi.Hidi.csproj -o $(Build.ArtifactStagingDirectory) --configuration $(BuildConfiguration) --no-build --no-restore -- include-symbols --include-source /p:SymbolPackageFormat=snupkg
174164 displayName : ' pack Hidi'
175165
176166 - task : EsrpCodeSigning@5
@@ -212,7 +202,7 @@ extends:
212202 displayName : publish Hidi as executable
213203 inputs :
214204 command : ' publish'
215- arguments : -c Release --runtime win-x64 /p:PublishSingleFile=true /p:PackAsTool=false --self-contained --output $(Build.ArtifactStagingDirectory)/Microsoft.OpenApi.Hidi
205+ arguments : -c Release --runtime win-x64 -p:RestoreConfigFile=$(Build.SourcesDirectory)\nuget.config /p:PublishSingleFile=true /p:PackAsTool=false --self-contained --output $(Build.ArtifactStagingDirectory)/Microsoft.OpenApi.Hidi
216206 projects : ' src/Microsoft.OpenApi.Hidi/Microsoft.OpenApi.Hidi.csproj'
217207 publishWebProjects : False
218208 zipAfterPublish : false
@@ -252,7 +242,7 @@ extends:
252242 inputs :
253243 - input : pipelineArtifact
254244 artifactName : Nugets
255- targetPath : ' $(Pipeline.Workspace)'
245+ targetPath : ' $(Pipeline.Workspace)/Nugets '
256246 dependsOn : []
257247 environment : nuget-org
258248 strategy :
@@ -264,10 +254,14 @@ extends:
264254 - task : 1ES.PublishNuget@1
265255 displayName : ' NuGet push'
266256 inputs :
267- packagesToPush : ' $(Pipeline.Workspace)/Microsoft.OpenApi.Hidi.*.nupkg'
268- packageParentPath : ' $(Pipeline.Workspace)'
257+ useDotNetTask : true
258+ packagesToPush : ' $(Pipeline.Workspace)/Nugets/Microsoft.OpenApi.Hidi.*.nupkg'
259+ packageParentPath : ' $(Pipeline.Workspace)/Nugets'
269260 nuGetFeedType : external
270261 publishFeedCredentials : ' OpenAPI Nuget Connection'
262+ publishPackageMetadata : true
263+ requestTimeout : 600000
264+ retryCountOnTaskFailure : 2
271265
272266 - deployment : deploy_lib
273267 condition : and(contains(variables['build.SourceBranch'], 'refs/tags/v'), succeeded())
@@ -277,7 +271,7 @@ extends:
277271 inputs :
278272 - input : pipelineArtifact
279273 artifactName : Nugets
280- targetPath : ' $(Pipeline.Workspace)'
274+ targetPath : ' $(Pipeline.Workspace)/Nugets '
281275 dependsOn : []
282276 environment : nuget-org
283277 strategy :
@@ -287,7 +281,7 @@ extends:
287281 vmImage : ubuntu-latest
288282 steps :
289283 - pwsh : |
290- $fileNames = "$(Pipeline.Workspace)/Microsoft.OpenApi.Hidi.*.nupkg", "$(Pipeline.Workspace)/Microsoft.OpenApi.YamlReader.*.nupkg", "$(Pipeline.Workspace)/Microsoft.OpenApi.Workbench.*.nupkg"
284+ $fileNames = "$(Pipeline.Workspace)/Nugets/ Microsoft.OpenApi.Hidi.*.nupkg", "$(Pipeline.Workspace)/Nugets/ Microsoft.OpenApi.YamlReader.*.nupkg", "$(Pipeline.Workspace)/Nugets /Microsoft.OpenApi.Workbench.*.nupkg"
291285 foreach($fileName in $fileNames) {
292286 if(Test-Path $fileName) {
293287 Remove-Item $fileName -Verbose
@@ -297,10 +291,14 @@ extends:
297291 - task : 1ES.PublishNuget@1
298292 displayName : ' NuGet push'
299293 inputs :
300- packagesToPush : ' $(Pipeline.Workspace)/Microsoft.OpenApi.*.nupkg'
301- packageParentPath : ' $(Pipeline.Workspace)'
294+ useDotNetTask : true
295+ packagesToPush : ' $(Pipeline.Workspace)/Nugets/Microsoft.OpenApi.*.nupkg'
296+ packageParentPath : ' $(Pipeline.Workspace)/Nugets'
302297 nuGetFeedType : external
303298 publishFeedCredentials : ' OpenAPI Nuget Connection'
299+ publishPackageMetadata : true
300+ requestTimeout : 600000
301+ retryCountOnTaskFailure : 2
304302
305303 - deployment : deploy_yaml_reader
306304 condition : and(contains(variables['build.SourceBranch'], 'refs/tags/v'), succeeded())
@@ -310,7 +308,7 @@ extends:
310308 inputs :
311309 - input : pipelineArtifact
312310 artifactName : Nugets
313- targetPath : ' $(Pipeline.Workspace)'
311+ targetPath : ' $(Pipeline.Workspace)/Nugets '
314312 dependsOn : deploy_lib
315313 environment : nuget-org
316314 strategy :
@@ -322,10 +320,14 @@ extends:
322320 - task : 1ES.PublishNuget@1
323321 displayName : ' NuGet push'
324322 inputs :
325- packagesToPush : ' $(Pipeline.Workspace)/Microsoft.OpenApi.YamlReader.*.nupkg'
326- packageParentPath : ' $(Pipeline.Workspace)'
323+ useDotNetTask : true
324+ packagesToPush : ' $(Pipeline.Workspace)/Nugets/Microsoft.OpenApi.YamlReader.*.nupkg'
325+ packageParentPath : ' $(Pipeline.Workspace)/Nugets'
327326 nuGetFeedType : external
328327 publishFeedCredentials : ' OpenAPI Nuget Connection'
328+ publishPackageMetadata : true
329+ requestTimeout : 600000
330+ retryCountOnTaskFailure : 2
329331
330332 - deployment : create_github_release
331333 condition : and(contains(variables['build.SourceBranch'], 'refs/tags/v'), succeeded())
0 commit comments