Мы создаем и запускаем сборку, которая имеет связанные изменения и связанные рабочие элементы. Но если мы попытаемся получить связанные элементы из API, у нас будет 0 элементов ответа. Для некоторых сборок это работает, а для других нет.
Какие связи устанавливаются между сборкой и рабочим элементом, когда мы запускаем сборку?
Как мы можем получить список связанных рабочих элементов, которые мы видим в сводке сборки?
p.s. URL-адрес запроса 100% правильный, потому что иногда у нас есть правильный ответ, но тогда у нас возникает проблема, когда мы меняем build_id
.
Мы попытались выяснить точное поведение на основе идентификатора сборки и номера сборки, но нам это не удалось.
Пример: создать рабочий элемент, исправить его в ветке, слить ветку в master, выпустить сборку.
К сборке прикреплен рабочий элемент, отображаемый при запросе через API. Удаляем выпущенный билд, снова выпускаем билд, далее workitem теряется и он не привязан ни к какому другому билду (т.к. первый был удален).
Нечто подобное происходит и без удаления сборки, но мы просто не можем получить 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. Пожалуйста, проверьте рисунок ниже.
какой у тебя вопрос, можешь сосредоточиться на вопросе, а не на истории?