TaskFunctions/Invoke-PlumberHelp.ps1
|
function Invoke-PlumberHelp { <# .SYNOPSIS Runs the Help task body. #> [CmdletBinding()] param () $publicRoot = Join-Path $BuildRoot 'Public' $functionRoots = @( @{ Path = $publicRoot RequireFullHelp = $true } ) $functionRoots += foreach ($moduleFolder in $script:moduleFolders) { if ($moduleFolder.Equals($publicRoot, [System.StringComparison]::OrdinalIgnoreCase)) { continue } @{ Path = $moduleFolder RequireFullHelp = -not $script:PlumberConfig.Tasks.Help.PrivateSynopsisOnly } } $failures = foreach ($functionRoot in $functionRoots) { if (-not (Test-Path $functionRoot.Path)) { continue } foreach ($file in Get-ChildItem $functionRoot.Path -File -Filter '*.ps1') { $help = Get-PlumberFunctionHelp -Path $file.FullName Test-PlumberFunctionHelp -Help $help -RequireFullHelp:$functionRoot.RequireFullHelp } } if ($failures) { Write-Error ($failures -join (', ' + [Environment]::NewLine)) } } |