Private/ConvertTo-FylgyrJson.ps1
|
function ConvertTo-FylgyrJson { [CmdletBinding()] [OutputType([string])] param( [Parameter(Mandatory)] [PSCustomObject[]]$Results, [string]$Target = '' ) $module = Get-Module -Name Fylgyr -ErrorAction SilentlyContinue $version = if ($module -and $module.Version) { $module.Version.ToString() } else { '0.0.0' } $output = [PSCustomObject]@{ tool = 'Fylgyr' version = $version scanDate = (Get-Date -Format 'o') target = $Target summary = [PSCustomObject]@{ total = $Results.Count pass = ($Results | Where-Object Status -EQ 'Pass').Count fail = ($Results | Where-Object Status -EQ 'Fail').Count warning = ($Results | Where-Object Status -EQ 'Warning').Count error = ($Results | Where-Object Status -EQ 'Error').Count } results = $Results } $output | ConvertTo-Json -Depth 10 } |