Я создал расширение Visual Studio Team Services, которое обеспечивает несколько задач сборки. Все задачи реализованы в виде скриптов PowerShell.
Казалось, все работает, как ожидалось, но потом я понял, что когда в задаче возникает ошибка, которая не нарушает сборку, как должна.
Я предполагал, что сценарий PowerShell, возвращающий ненулевой код выхода, нарушит сборку, но это не так. Чтобы подтвердить это, я создал очень простую задачу только с этой строкой:
exit 1
и проверил, что сборка прошла успешно.
Я также обнаружил, что неперехваченные исключения в скрипте вызывают сбой сборки.
Следовательно, как следует уведомлять о сбоях из задач сборки?
ОБНОВЛЕНИЕ: Я использую task.json и скрипт:
task.json:
{
"id": "7CA6E75B-0700-4723-83A7-C167EA514988",
"name": "ExampleTask",
"friendlyName": "Example build task",
"description": "Example build task for development purposes",
"author": "eduardomhg",
"category": "Utility",
"visibility": [
"Build",
"Release"
],
"demands": [],
"version": {
"Major": "0",
"Minor": "0",
"Patch": "1"
},
"minimumAgentVersion": "1.83.0",
"instanceNameFormat": "Example Task",
"groups": [
{
"name":"advanced",
"displayName":"Advanced",
"isExpanded":false
}
],
"execution": {
"PowerShell": {
"target": "$(currentDirectory)\\ExampleTask.ps1",
"argumentFormat": "",
"workingDirectory": "$(currentDirectory)"
}
}
}
ExampleTask.ps1:
Write-Host "Executing example task..."
exit 1
write-error
работает (приводит к сбою сборки), как и другие решения, предложенные в ответах, так что задайтесь вопросом, как правильно сообщать о сбоях ... - person Eduardo Hernández   schedule 11.01.2017