Skip to content

Commit

Permalink
Better result handling
Browse files Browse the repository at this point in the history
  • Loading branch information
trondhindenes committed Jul 10, 2014
1 parent 3bf1680 commit d5a0c18
Showing 1 changed file with 21 additions and 13 deletions.
34 changes: 21 additions & 13 deletions library/windows/win_feature.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -92,23 +92,31 @@ Elseif ($state -eq "absent") {
# Loop through results and create a hash containing details about
# each role/feature that is installed/removed
$installed_features = @()
ForEach ($item in $featureresult.FeatureResult) {
$installed_features += New-Object psobject @{
id = $item.id.ToString()
display_name = $item.DisplayName
message = $item.Message.ToString()
restart_needed = $item.RestartNeeded.ToString()
skip_reason = $item.SkipReason.ToString()
success = $item.Success.ToString()
#$featureresult.featureresult is filled if anything was changed
if ($featureresult.FeatureResult)
{
ForEach ($item in $featureresult.FeatureResult) {
$installed_features += New-Object psobject @{
id = $item.id.ToString()
display_name = $item.DisplayName
message = $item.Message.ToString()
restart_needed = $item.RestartNeeded.ToString()
skip_reason = $item.SkipReason.ToString()
success = $item.Success.ToString()
}
}
Set-Attr $result "feature_result" $installed_features


$result.changed = $true
}
Else
{
Set-Attr $result "feature_result" $null
}
Set-Attr $result "feature_result" $installed_features

Set-Attr $result "feature_success" $featureresult.Success.ToString()
Set-Attr $result "feature_exitcode" $featureresult.ExitCode.ToString()
Set-Attr $result "feature_restart_needed" $featureresult.RestartNeeded.ToString()

If ($result.feature_result.Length -gt 0) {
$result.changed = $true
}

Exit-Json $result;

0 comments on commit d5a0c18

Please sign in to comment.