@@ -6,46 +6,26 @@ $packagePattern = "*.nupkg"
6
6
$MetadataUri = " https://raw.githubusercontent.com/Azure/azure-sdk/main/_data/releases/latest/dotnet-packages.csv"
7
7
$BlobStorageUrl = " https://azuresdkdocs.blob.core.windows.net/%24web?restype=container&comp=list&prefix=dotnet%2F&delimiter=%2F"
8
8
9
- function Get-dotnet-PackageInfoFromRepo ( $pkgPath , $serviceDirectory )
9
+ function Get-AllPackageInfoFromRepo ( $serviceDirectory )
10
10
{
11
- $projDirPath = (Join-Path $pkgPath " src" )
11
+ $allPackageProps = @ ()
12
+ $msbuildOutput = dotnet msbuild / nologo / t:GetPackageInfo $EngDir / service.proj / p:ServiceDirectory= $serviceDirectory
12
13
13
- if ( ! ( Test-Path $projDirPath ) )
14
+ foreach ( $projectOutput in $msbuildOutput )
14
15
{
15
- return $null
16
- }
17
-
18
- $projectPaths = @ (Resolve-Path (Join-Path $projDirPath " *.csproj" ))
16
+ if (! $projectOutput ) { continue }
19
17
20
- if ($projectpaths.Count -ge 1 ) {
21
- $projectPath = $projectPaths [0 ].path
22
- if ($projectPaths.Count -gt 1 ) {
23
- LogWarning " There is more than on csproj file in the projectpath/src directory. First project picked."
24
- }
25
- }
26
- else {
27
- return $null
28
- }
18
+ $pkgPath , $serviceDirectory , $pkgName , $pkgVersion , $sdkType , $isNewSdk = $projectOutput.Split (' ' , [System.StringSplitOptions ]::RemoveEmptyEntries).Trim(" '" )
29
19
30
- if ($projectPath -and (Test-Path $projectPath ))
31
- {
32
- $pkgName = Split-Path - Path $projectPath - LeafBase
33
- $projectData = New-Object - TypeName XML
34
- $projectData.load ($projectPath )
35
- $pkgVersion = Select-XML - Xml $projectData - XPath ' /Project/PropertyGroup/Version'
36
- $sdkType = " client"
37
- if ($pkgName -match " \.ResourceManager\." -or $pkgName -match " \.Management\." )
38
- {
39
- $sdkType = " mgmt"
40
- }
41
20
$pkgProp = [PackageProps ]::new($pkgName , $pkgVersion , $pkgPath , $serviceDirectory )
42
21
$pkgProp.SdkType = $sdkType
43
- $pkgProp.IsNewSdk = $pkgName .StartsWith ( " Azure " )
22
+ $pkgProp.IsNewSdk = ( $isNewSdk -eq ' true ' )
44
23
$pkgProp.ArtifactName = $pkgName
45
- return $pkgProp
24
+
25
+ $allPackageProps += $pkgProp
46
26
}
47
27
48
- return $null
28
+ return $allPackageProps
49
29
}
50
30
51
31
# Returns the nuget publish status of a package id and version.
0 commit comments