Может ли Chocolatey выйти со статусом выхода install/script?
Команда, choco install
, кажется, не бросать исключения. Он возвращает только массив текста, что не самая полезная вещь. Я хочу установить список приложений и проверить / обработать сбои. Я мог бы разобрать журнал, но было бы неплохо обрабатывать исключения по мере их возникновения.
Прямо сейчас я делаю что-то вроде этого:
$chocoMsg = (choco install $myApp -y) -join('')
if($chocoMsg -match "install of $myApp was successful.") {
Write-Host -fo:green 'Success'
} else {
# handle errors
}
Есть ли способ лучше?
1 ответ
В последнем выпуске Chocolatey, 0.9.10, была добавлена возможность выхода Chocolatey с тем же кодом завершения, что и базовый установщик. Вы можете увидеть эту проблему, которая описывает эту функцию здесь: https://github.com/chocolatey/choco/issues/512. Это должно позволить вам проверить возвращенный код выхода, а затем принять решение о том, что делать дальше.
Также из этого вышло две ошибки, обе исправлены в 0.9.10.3:
- Игнорировать коды выхода для реальных - https://github.com/chocolatey/choco/issues/827
- Успешные коды выхода, не распознанные choco, должны вернуть 0 - https://github.com/chocolatey/choco/issues/821