Azure DevOps: неправильный конвейер вызван git коммитом - PullRequest
2 голосов
/ 17 января 2020

У нас есть проект в Azure DevOps с двумя репозиториями, назовем их OldRepo и NewRepo. NewRepo является копией OldRepo.

Оба репо имеют соответствующий конвейер, OldPipeline и NewPipeline, каждый из которых запускается, когда новый код фиксируется в соответствующем репо. NewPipeline был создан путем экспорта OldPipeline как json, его импорта и изменения.

OldPipeline работает точно так, как задумано: вы набираете код sh в OldRepo, и OldPipeline запускается, вытягивая задание, получая источники, et c.

Проблема возникает при вводе кода sh в NewRepo. Он правильно запускает NewPipeline, и NewPipeline работает без проблем, но отправка кода в NewRepo также вызывает OldPipeline . OldPipeline завершается ошибкой на этапе Git Checkout, так как фиксация ha sh от NewRepo отсутствует в OldRepo.

Я прошел все настройки, которые могу найти, и даже экспортировал задания сборки как .json файлов и сравнил их, но все выглядит правильно в отношении триггеров, репо и других настроек.

Ответы [ 2 ]

0 голосов
/ 03 февраля 2020

Исходные данные:

  • Три Azure хранилища со связанными конвейерами сборки: A B C.
  • Трубопровод B был клонирован из трубопровода A.
  • Трубопровод C был клонирован из трубопровода B.

Все трубопроводы были в порядке до января 2020 года.

Поведение:

  • Передача кода на A репо запускает конвейеры A B;
  • Отправка кода на B репозитории запускает конвейеры B C;
  • Нажатие кода на C работает как ожидалось.

Решение:

После воссоздания B C конвейеров с нуля все работает как положено.

0 голосов
/ 19 января 2020

Он корректно запускает NewPipeline, и NewPipeline работает без проблем

Мы можем разумно предположить, что NewPipeline настроен правильно.

, но отправляет код в NewRepo также вызывает OldPipeline. OldPipeline завершается ошибкой на этапе Git Checkout, так как фиксация ha sh от NewRepo отсутствует в OldRepo.

Кажется, что OldPipeline может быть вызван фиксацией к NewRepo, в этом В этом случае вам необходимо проверить Get sources OldPipeline, чтобы увидеть, если вы выбрали OldRepo в качестве Repository вместо NewRepo.

enter image description here

Также, пожалуйста, поделитесь, как вы набираете код sh для NewRepo, если вышеуказанное предложение не работает для вас. Если вы напрямую отредактируете свой код в NewRepo в Azure DevOps и подтвердите, произойдет ли проблема? Вы можете предоставить столько информации, сколько считаете нужным, поскольку проблема не может быть воспроизведена в соответствии с предоставленным описанием.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...