TFS REST API Получить элементы, которые не удалось собрать

Кто-то знает способ получить проекты, которые не удалось построить, через REST API TFS?

Быстрый поиск в Google выдал эта документация Майкрософт, что намекает на использование resultFilter из failed. В будущем вы можете взять SO тур и прочитать Как спросить.

Diado 28.05.2019 14:37

Спрашивая "кто-нибудь знает X?" Может иметь действительный, но бесполезный ответ да/нет. Проведите некоторое исследование, попробуйте какой-нибудь код, и если у вас возникнут проблемы, вернитесь с минимальный воспроизводимый пример.

Cleptus 28.05.2019 14:47
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
2
2
297
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете загрузить журналы сборки с помощью Сборка - Получить журнал сборки Rest API. Вам нужно знать, какой идентификатор журнала является журналом сборки (если у вас мало задач, поэтому у каждой задачи есть журнал), чтобы вы могли проверить все доступные журналы с помощью Сборка — получение журналов сборки Rest API, затем выполнить их итерацию и проверить, что такое сборка. после того, как у вас есть журнал, вы можете искать и фильтровать ошибки.

Небольшой пример с PowerShell:

$collection = "http://tfs-server:8080/tfs/collection"
$project = "team-project"
$buildId = 10

#"api-version=4.1" is for TFS 2018, for other versions you need to change the number
$logsUrl = "$collection/$project/_apis/build/builds/$buildId/lgos?api-version=4.1"
$logs = Invoke-RestMethod -Uri $logsUrl -Method Get -UseDeafultCredntials -ContentType application/json

$buildLog = ""
ForEach($log in $logs.value)
{
    $urlLog = "$collection/$project/_apis/build/builds/$buildId/logs/$($log.id)?api-version=4.1"
    $logDetails = Invoke-RestMethod -Uri $urlLog -Method Get -UseDefaultCredntials -ContentType application/json
    if ($logDetails.Contains("msbuild"))
    {
         $buildLog = $logDetails
         break
    }
}
# Now you have the logs in your hand and you can find in which projects have errors

Если вы хотите сделать это с помощью C#, вы можете вызвать Rest API с помощью HttpClient:

using (HttpClient client = new HttpClient(new HttpClientHandler() { UseDeafultCredntials = true } )
{
     string url = "the-url-from-above-powershell-script";
     var method = new HttpMethod("GET");
     var reqeust = new HttpRequestMessage(mehtod,url);
     var result = await client.SendAsync(rqeuest);
}
// In this way you get the Rest API response, so you need to it once for the logs, iterate them to get each log and then filter the errors.

Другие вопросы по теме