#azure #azure-devops #azure-rest-api
#azure #azure-devops #azure-rest-api
Вопрос:
Мы создаем и запускаем сборку, в которой есть связанные изменения и связанные рабочие элементы. Но если мы попытаемся получить связанные элементы из api, у нас будет 0 элементов ответа. Для некоторых сборок это работает, но для других — нет.
Какие соединения устанавливаются между сборкой и workitem при запуске сборки? Как мы можем получить список связанных рабочих элементов, которые мы видим в сводке сборки? p.s. URL-адрес запроса на 100% правильный, потому что иногда у нас есть правильный ответ, но тогда у нас возникает проблема при изменении build_id
.
Мы попытались определить точное поведение на основе идентификатора сборки и номера сборки, но нам это не удалось.
Пример: создайте рабочий элемент, исправьте его в ветке, объедините ветку с master, выпустите сборку.
К сборке прикреплен рабочий элемент, который отображается при запросе через API. Мы удаляем выпущенную сборку, снова выпускаем сборку, затем рабочий элемент теряется, и он не привязан ни к какой другой сборке (поскольку первая была удалена).
Нечто подобное происходит без удаления сборки, но мы просто не можем получить рабочий элемент.
Комментарии:
1. в чем ваш вопрос, можете ли вы сосредоточиться на вопросе, а не на истории!
2. Привет, я поделился ответом ниже, вы можете проверить его, если у вас есть какие-либо опасения, не стесняйтесь поделиться им здесь. Если ответ может помочь, не могли бы вы принять его в качестве ответа ? Таким образом, это может помочь другим членам сообщества, у которых возникают те же проблемы, и мы могли бы заархивировать эту тему. Спасибо. Хорошего дня. 🙂
Ответ №1:
Какие соединения устанавливаются между сборкой и workitem при запуске сборки? Как мы можем получить список связанных рабочих элементов, которые мы видим в сводке сборки?
Мы могли бы использовать приведенный ниже REST API для перечисления рабочих элементов, связанных со сборкой.
GET https://dev.azure.com/{organization}/{project}/_apis/build/builds/{buildId}/workitems?api-version=6.0
И шаги:
Нам нужно открыть определение сборки -> Перейдите на вкладку Триггеры и включите функцию Enable continuous integration
, затем перейдите на вкладку Параметры и включите функцию Automatically link new work in this build
Нажмите фиксацию и добавьте связанные рабочие элементы, тогда мы могли бы увидеть эти рабочие элементы на странице сводки сборки.
К сборке прикреплен рабочий элемент, который отображается при запросе через API. Мы удаляем выпущенную сборку, снова выпускаем сборку
Шаги: создать ветку -> нажать фиксацию и добавить рабочий элемент -> создать запрос на извлечение и запустить сборку, сборка должна запускаться с помощью CI или триггера запроса на извлечение, затем проверьте связанный со сборкой рабочий элемент -> удалите эту сборку и повторно запустите эту сборку вручную, затем снова проверьте связанный рабочий элементв результате не удается увидеть связанный рабочий элемент в новой сборке, верно?
Это специально разработано, если мы запустим сборку вручную, мы могли бы добавить эту ссылку на вкладку ссылки на рабочий элемент, и мы не смогли бы увидеть рабочий элемент на странице сводки, но мы могли бы перечислить рабочий элемент через API, общий ранее. Пожалуйста, проверьте рисунок ниже.