@@ -217,41 +217,6 @@ function Get-DocsMsPackageName($packageName, $packageVersion) {
217217 return " $ ( Get-PackageNameFromDocsMsConfig $packageName ) @$packageVersion "
218218}
219219
220-
221- # Performs package validation for a list of packages provided in the doc
222- # onboarding format ("name" is the only required field):
223- # @{
224- # name = "@azure/attestation@dev";
225- # folder = "./types";
226- # registry = "<url>";
227- # ...
228- # }
229- function ValidatePackagesForDocs ($packages , $DocValidationImageId ) {
230- # Using GetTempPath because it works on linux and windows
231- $tempDirectory = Join-Path ([System.IO.Path ]::GetTempPath()) ([System.IO.Path ]::GetRandomFileName())
232- New-Item - ItemType Directory - Force - Path $tempDirectory | Out-Null
233-
234- $scriptRoot = $PSScriptRoot
235- # Run this in parallel as each step takes a long time to run
236- $validationOutput = $packages | ForEach-Object { [PSCustomObject ]$_ } | Foreach-Object - Parallel {
237- # Get value for variables outside of the Foreach-Object scope
238- $scriptRoot = " $using :scriptRoot "
239- $workingDirectory = " $using :tempDirectory "
240- Write-Host " `" $scriptRoot \validate-docs-package.ps1`" -Package $_ -DocValidationImageId `" $ ( $using :DocValidationImageId ) `" -WorkingDirectory $workingDirectory "
241- return ." $scriptRoot \validate-docs-package.ps1" - Package $_ - DocValidationImageId " $using :DocValidationImageId " - WorkingDirectory $workingDirectory
242- }
243-
244- # Clean up temp folder
245- Remove-Item - Path $tempDirectory - Force - Recurse - ErrorAction Ignore | Out-Null
246-
247- return $validationOutput
248- }
249-
250- $PackageExclusions = @ {
251- ' @azure/identity-vscode' = ' Fails type2docfx execution https://github.com/Azure/azure-sdk-for-js/issues/16303' ;
252- ' @azure/identity-cache-persistence' = ' Fails typedoc2fx execution https://github.com/Azure/azure-sdk-for-js/issues/16310' ;
253- }
254-
255220function Update-javascript-DocsMsPackages ($DocsRepoLocation , $DocsMetadata , $DocValidationImageId ) {
256221 Write-Host " Excluded packages:"
257222 foreach ($excludedPackage in $PackageExclusions.Keys ) {
@@ -454,49 +419,26 @@ function GetExistingPackageVersions ($PackageName, $GroupId = $null) {
454419
455420# Defined in common.ps1 as:
456421# $ValidateDocsMsPackagesFn = "Validate-${Language}-DocMsPackages"
457- function Validate-javascript-DocMsPackages ($PackageInfo , $PackageInfos , $DocRepoLocation , $DocValidationImageId ) {
422+ function Validate-javascript-DocMsPackages ($PackageInfo , $PackageInfos , $DocRepoLocation , $DocValidationImageId ) {
458423 if (! $PackageInfos ) {
459424 $PackageInfos = @ ($PackageInfo )
460425 }
461426
462- $outputPackages = @ ()
427+ $allSucceeded = $true
463428
464429 foreach ($packageInfo in $PackageInfos ) {
465- $fileLocation = " "
466- if ($packageInfo.DevVersion -or $packageInfo.Version -contains " beta" ) {
467- $fileLocation = (Join-Path $DocRepoLocation ' ci-configs/packages-preview.json' )
468- if ($packageInfo.DevVersion ) {
469- $packageInfo.Version = $packageInfo.DevVersion
470- }
471- }
472- else {
473- $fileLocation = (Join-Path $DocRepoLocation ' ci-configs/packages-latest.json' )
474- }
475-
476- $packageConfig = Get-Content $fileLocation - Raw | ConvertFrom-Json
430+ $outputLocation = New-Item `
431+ - ItemType Directory `
432+ - Path (Join-Path ([System.IO.Path ]::GetTempPath()) ([System.IO.Path ]::GetRandomFileName()))
477433
478- $outputPackage = $packageInfo
479-
480- foreach ($package in $packageConfig.npm_package_sources ) {
481- if ($package.name -eq $packageInfo.Name ) {
482- $outputPackage = $package
483- $outputPackage.name = Get-DocsMsPackageName $package.name $packageInfo.Version
484- break
485- }
486- }
487-
488- $outputPackages += $outputPackage
489- }
490-
491- $validationResults = ValidatePackagesForDocs `
492- - packages $outputPackages `
493- - DocValidationImageId $DocValidationImageId
494-
495- foreach ($result in $validationResults ) {
496- if (! $result.Success ) {
497- return $false
434+ Write-Host " type2docfx `" $ ( $packageInfo.Name ) @$ ( $packageInfo.Version ) `" $outputLocation "
435+ $output = & type2docfx " $ ( $packageInfo.Name ) @$ ( $packageInfo.Version ) " $outputLocation 2>&1
436+ if ($LASTEXITCODE ) {
437+ $allSucceeded = $false
438+ Write-Host " Package $ ( $packageInfo.Name ) @$ ( $packageInfo.Version ) failed validation"
439+ $output | Write-Host
498440 }
499441 }
500442
501- return $true
443+ return $allSucceeded
502444}
0 commit comments