private/Write-Documentation.ps1
|
function Write-Documentation { [CmdletBinding()] param ( [Parameter()] [switch] $ShowDetailed ) $currentContext = $psake.Context.Peek() if ($currentContext.tasks.default) { $defaultTaskDependencies = $currentContext.tasks.default.DependsOn } else { $defaultTaskDependencies = @() } $docs = Get-TasksFromContext -CurrentContext $currentContext | Where-Object { $_.Name -ne 'default' } | ForEach-Object { $isDefault = $null if ($defaultTaskDependencies -contains $_.Name) { $isDefault = $true } return Add-Member -InputObject $_ 'Default' $isDefault -PassThru } if ($ShowDetailed) { $docs | Sort-Object 'Name' | Format-List -Property Name, Alias, Description, @{Label = "Depends On"; Expression = { $_.DependsOn -join ', ' } }, Default } else { $docs | Sort-Object 'Name' | Format-Table -AutoSize -Wrap -Property Name, Alias, @{Label = "Depends On"; Expression = { $_.DependsOn -join ', ' } }, Default, Description } } |