|
| 1 | +function GetOnboardingFile($docRepoLocation, $moniker) { |
| 2 | + $packageOnboardingFile = "$docRepoLocation/ci-configs/packages-latest.json" |
| 3 | + if ("preview" -eq $moniker) { |
| 4 | + $packageOnboardingFile = "$docRepoLocation/ci-configs/packages-preview.json" |
| 5 | + } |
| 6 | + |
| 7 | + return $packageOnboardingFile |
| 8 | +} |
| 9 | + |
| 10 | +# $GetOnboardedDocsMsPackagesFn = "Get-${Language}-OnboardedDocsMsPackages" |
| 11 | +function Get-cpp-OnboardedDocsMsPackages($DocRepoLocation) { |
| 12 | + $packageOnboardingFiles = @( |
| 13 | + "$DocRepoLocation/ci-configs/packages-latest.json", |
| 14 | + "$DocRepoLocation/ci-configs/packages-preview.json") |
| 15 | + |
| 16 | + $onboardedPackages = @{} |
| 17 | + foreach ($file in $packageOnboardingFiles) { |
| 18 | + $onboardingSpec = ConvertFrom-Json (Get-Content $file -Raw) |
| 19 | + foreach ($spec in $onboardingSpec.packages) { |
| 20 | + $packageName = $spec.name |
| 21 | + $onboardedPackages[$packageName] = $null |
| 22 | + } |
| 23 | + } |
| 24 | + |
| 25 | + return $onboardedPackages |
| 26 | +} |
| 27 | + |
| 28 | +# $GetOnboardedDocsMsPackagesForMonikerFn = "Get-${Language}-OnboardedDocsMsPackagesForMoniker" |
| 29 | +function Get-cpp-OnboardedDocsMsPackagesForMoniker($DocRepoLocation, $moniker) { |
| 30 | + $packageOnboardingFile = GetOnboardingFile ` |
| 31 | + -docRepoLocation $DocRepoLocation ` |
| 32 | + -moniker $moniker |
| 33 | + |
| 34 | + $onboardedPackages = @{} |
| 35 | + $onboardingSpec = ConvertFrom-Json (Get-Content $packageOnboardingFile -Raw) |
| 36 | + foreach ($spec in $onboardingSpec.packages) { |
| 37 | + $jsonFile = "$DocRepoLocation/metadata/$($moniker)/$($spec.name).json" |
| 38 | + if (Test-Path $jsonFile) { |
| 39 | + $onboardedPackages[$spec.name] = ConvertFrom-Json (Get-Content $jsonFile -Raw) |
| 40 | + } |
| 41 | + else { |
| 42 | + $onboardedPackages[$spec.name] = $null |
| 43 | + } |
| 44 | + } |
| 45 | + |
| 46 | + return $onboardedPackages |
| 47 | +} |
| 48 | + |
| 49 | +# $GetPackageLevelReadmeFn = "Get-${Language}-PackageLevelReadme" |
| 50 | +function Get-cpp-PackageLevelReadme($packageMetadata) { |
| 51 | + return GetPackageReadmeName -packageMetadata $packageMetadata |
| 52 | +} |
| 53 | + |
| 54 | +function GetPackageReadmeName($packageMetadata) { |
| 55 | + # Fallback to get package-level readme name if metadata file info does not exist |
| 56 | + $packageLevelReadmeName = $packageMetadata.Package.ToLower().Replace('azure-', '') |
| 57 | + |
| 58 | + # If there is a metadata json for the package use the DocsMsReadmeName from |
| 59 | + # the metadata function |
| 60 | + if ($packageMetadata.PSObject.Members.Name -contains "FileMetadata") { |
| 61 | + $readmeMetadata = &$GetDocsMsMetadataForPackageFn -PackageInfo $packageMetadata.FileMetadata |
| 62 | + $packageLevelReadmeName = $readmeMetadata.DocsMsReadMeName |
| 63 | + } |
| 64 | + return $packageLevelReadmeName |
| 65 | +} |
| 66 | + |
| 67 | +# $GetDocsMsTocDataFn = "Get-${Language}-DocsMsTocData" |
| 68 | +function Get-cpp-DocsMsTocData($packageMetadata, $docRepoLocation) { |
| 69 | + $packageLevelReadmeName = GetPackageReadmeName -packageMetadata $packageMetadata |
| 70 | + $packageTocHeader = GetDocsTocDisplayName $packageMetadata |
| 71 | + $output = [PSCustomObject]@{ |
| 72 | + PackageLevelReadmeHref = "~/docs-ref-services/{moniker}/$packageLevelReadmeName-readme.md" |
| 73 | + PackageTocHeader = $packageTocHeader |
| 74 | + TocChildren = @($packageMetadata.Package) |
| 75 | + } |
| 76 | + |
| 77 | + return $output |
| 78 | +} |
| 79 | + |
| 80 | +# $GetRepositoryLinkFn = "Get-${Language}-RepositoryLink" |
| 81 | +function Get-cpp-RepositoryLink($packageInfo) { |
| 82 | + return "$PackageRepositoryUri/$($packageInfo.Package)-cpp" |
| 83 | +} |
| 84 | + |
| 85 | + |
0 commit comments