@@ -65,7 +65,7 @@ public static void UpdatePackageVersionForIntegrationTests()
65
65
66
66
foreach ( var package in packagesToUpdate )
67
67
{
68
- string packageInfo = Shell . GetOutput ( "NuGet" , $ "list { package } -Source { AzureFunctionsPreReleaseFeedName } -prerelease" ) . Split ( Environment . NewLine ) [ 0 ] ;
68
+ var packageInfo = GetLatestPackageInfo ( name : package . Name , majorVersion : package . MajorVersion , source : AzureFunctionsPreReleaseFeedName ) ;
69
69
70
70
if ( string . IsNullOrEmpty ( packageInfo ) )
71
71
{
@@ -624,9 +624,9 @@ public static void CreateIntegrationTestsBuildManifest()
624
624
}
625
625
}
626
626
627
- private static List < string > GetV3PackageList ( )
627
+ private static List < Package > GetV3PackageList ( )
628
628
{
629
- const string CoreToolsBuildPackageList = "https://raw.githubusercontent.com/Azure/azure-functions-integration-tests/dev/integrationTestsBuild/V3/CoreToolsBuild .json" ;
629
+ const string CoreToolsBuildPackageList = "https://raw.githubusercontent.com/Azure/azure-functions-integration-tests/dev/integrationTestsBuild/V3/CoreToolsBuild2 .json" ;
630
630
Uri address = new Uri ( CoreToolsBuildPackageList ) ;
631
631
632
632
string content = null ;
@@ -640,7 +640,7 @@ private static List<string> GetV3PackageList()
640
640
throw new Exception ( $ "Failed to download package list from { CoreToolsBuildPackageList } ") ;
641
641
}
642
642
643
- var packageList = JsonConvert . DeserializeObject < List < string > > ( content ) ;
643
+ var packageList = JsonConvert . DeserializeObject < List < Package > > ( content ) ;
644
644
645
645
return packageList ;
646
646
}
@@ -656,5 +656,32 @@ private static void RemoveLanguageWorkers(string outputPath)
656
656
}
657
657
}
658
658
}
659
+
660
+ private static string GetLatestPackageInfo ( string name , string majorVersion , string source )
661
+ {
662
+ string includeAllVersion = ! string . IsNullOrWhiteSpace ( majorVersion ) ? "-AllVersions" : string . Empty ;
663
+ string packageInfo = Shell . GetOutput ( "NuGet" , $ "list { name } -Source { source } -prerelease { includeAllVersion } ") ;
664
+
665
+ if ( string . IsNullOrEmpty ( packageInfo ) )
666
+ {
667
+ throw new Exception ( $ "Failed to get { name } package information from { source } .") ;
668
+ }
669
+
670
+ if ( ! string . IsNullOrWhiteSpace ( majorVersion ) )
671
+ {
672
+ foreach ( var package in packageInfo . Split ( Environment . NewLine ) )
673
+ {
674
+ var version = package . Split ( " " ) [ 1 ] ;
675
+ if ( version . StartsWith ( majorVersion ) )
676
+ {
677
+ return package ;
678
+ }
679
+ }
680
+
681
+ throw new Exception ( $ "Failed to find { name } package for major version { majorVersion } .") ;
682
+ }
683
+
684
+ return packageInfo ;
685
+ }
659
686
}
660
687
}
0 commit comments