infracloud/scripts/auto-organized/final_status2.ps1

35 lines
1.7 KiB
PowerShell

$p = '19mNqNXIoZ4c3EriFNfzfkgpGNOvLjpOqqZnTFXKnzjxWJ5zURjgJQQJ99CBACAAAAAamI5kAAASAZDOAMPp'
$t = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(':' + $p))
$h = @{ Authorization = 'Basic ' + $t }
$base = 'https://dev.azure.com/CN-Squad/Invista%20FIDC%20-%20Nexus/_apis'
foreach ($buildId in @(6181, 6182, 6185, 6186)) {
$b = Invoke-RestMethod -Uri "$base/build/builds/$buildId`?api-version=7.0" -Headers $h
$tl = Invoke-RestMethod -Uri "$base/build/builds/$buildId/timeline?api-version=7.0" -Headers $h
$icon = if ($b.result -eq 'succeeded') { 'OK' } else { 'FALHOU' }
Write-Host "[$icon] $($b.definition.name) (build $buildId): $($b.result)" -ForegroundColor $(if ($b.result -eq 'succeeded') { 'Green' } else { 'Red' })
$tl.records | Where-Object { $_.type -eq 'Stage' } |
Sort-Object order |
ForEach-Object {
$icon2 = if ($_.result -eq 'succeeded') { 'v' } elseif ($_.result -eq 'failed') { 'x' } else { '-' }
Write-Host " [$icon2] $($_.name): $($_.result)"
}
# Se falhou, mostrar erro
if ($b.result -eq 'failed') {
if ($b.validationResults) {
$b.validationResults | Select-Object -First 1 | ForEach-Object { Write-Host " ERRO: $($_.message)" -ForegroundColor Yellow }
} else {
$failedTask = $tl.records | Where-Object { $_.result -eq 'failed' -and $_.type -eq 'Task' } | Select-Object -First 1
if ($failedTask) {
Write-Host " Task falhou: $($failedTask.name)" -ForegroundColor Yellow
if ($failedTask.issues) {
$failedTask.issues | Select-Object -First 3 | ForEach-Object { Write-Host " $($_.message)" -ForegroundColor Yellow }
}
}
}
}
Write-Host ""
}