@@ -41,13 +41,18 @@ abstract class AbstractToolset
4141 readonly SourceCacheContext cache ;
4242 readonly SourceRepository repository ;
4343 readonly FindPackageByIdResource resource ;
44+ readonly SourceRepository repository5 ;
45+ readonly FindPackageByIdResource resource5 ;
46+
4447 protected readonly string baseDir ;
4548
4649 public AbstractToolset ( string baseDir )
4750 {
4851 this . cache = new SourceCacheContext ( ) ;
4952 this . repository = Repository . Factory . GetCoreV3 ( "https://api.nuget.org/v3/index.json" ) ;
5053 this . resource = repository . GetResource < FindPackageByIdResource > ( ) ;
54+ this . repository5 = Repository . Factory . GetCoreV3 ( "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json" ) ;
55+ this . resource5 = repository5 . GetResource < FindPackageByIdResource > ( ) ;
5156 this . baseDir = baseDir ;
5257 }
5358
@@ -68,13 +73,26 @@ protected async Task FetchPackage(string packageName, string version, string sou
6873 {
6974 packageStream = new MemoryStream ( ) ;
7075
71- await resource . CopyNupkgToStreamAsync (
72- packageName ,
73- NuGetVersion . Parse ( version ) ,
74- packageStream ,
75- cache ,
76- logger ,
77- cancellationToken ) . ConfigureAwait ( false ) ;
76+ if ( version . StartsWith ( "5" ) )
77+ {
78+ await resource5 . CopyNupkgToStreamAsync (
79+ packageName ,
80+ NuGetVersion . Parse ( version ) ,
81+ packageStream ,
82+ cache ,
83+ logger ,
84+ cancellationToken ) . ConfigureAwait ( false ) ;
85+ }
86+ else
87+ {
88+ await resource . CopyNupkgToStreamAsync (
89+ packageName ,
90+ NuGetVersion . Parse ( version ) ,
91+ packageStream ,
92+ cache ,
93+ logger ,
94+ cancellationToken ) . ConfigureAwait ( false ) ;
95+ }
7896
7997 packageStream . Position = 0 ;
8098 }
0 commit comments