#azure #azure-pipelines #azure-data-factory #azure-triggers
#azure #azure-конвейеры #azure-data-factory #azure-триггеры
Вопрос:
Установлен триггер для запуска конвейеров в 5 утра.
Pipeline name: 5_AM_Trigger
Pipelines running on trigger: Pipeline_A, Pipeline_B
Я работал над Pipeline_C, а другой разработчик работает над Pipeline_D. В итоге мы развернули один и тот же триггер примерно в одно и то же время.
Развертывание, выполненное для запуска мной:
Before deployment:
Pipelines on trigger: Pipeline_A, Pipeline_B
After deployment:
Pipelines on trigger: Pipeline_A, Pipeline_B, Pipeline_C
Развертывание, выполненное для запуска другим разработчиком (через несколько минут после моего развертывания):
Before deployment:
Pipelines on trigger: Pipeline_A, Pipeline_B
After deployment:
Pipelines on trigger: Pipeline_A, Pipeline_B, Pipeline_D
Причина, по которой я узнал, почему Pipeline_C не появился в триггере, потому что другой разработчик не обновил браузер после моего развертывания и в итоге добавил свой конвейер к предыдущим конфигурациям триггера (2 конвейера), перезаписав триггер новыми конфигурациями (3 конвейера).
Является ли это уважительной причиной? Если да, есть ли решение этой проблемы?
Expected pipelines on trigger after both deployments: Pipeline_A, Pipeline_B, Pipeline_C, Pipeline_D
Actual pipelines on trigger after both deployments: Pipeline_A, Pipeline_B, Pipeline_D
Комментарии:
1. Устанавливаете ли вы триггер в файле yaml в Azure DevOps ( dev.azure.com/xxx )? Как правило, триггер устанавливается в каждом файле yaml, Pipeline_C и Pipeline_D не должны влиять друг на друга, не могли бы вы показать нам, как вы устанавливаете триггер? learn.microsoft.com/en-us/azure/devops/pipelines/process /. …
2. @CeceDong-MSFT У меня есть триггер, созданный в adf.azure.com -> Управление -> Триггеры -> Создать Создать -> затем ввел данные для имени триггера, описания, расписания, повторной проверки и т. Д. И активировал. После этого adf.azure.com -> Автор -> Конвейер -> Триггер -> Создать / Редактировать -> Выбрал имя триггера, который уже был создан, а затем -> Проверить -> Проверить все -> опубликовал Это сработало, поскольку многие конвейеры работают с триггерами, созданными некоторое время назад, но эта проблема возникает только тогда, когдадва человека одновременно развертывают конвейеры на один и тот же триггер, когда один конвейер переопределяет другой без получения последних изменений.
Ответ №1:
Публикация в реальном режиме фабрики данных (когда она не подключена к GIT) совпадает с опцией сохранения. Когда другой пользователь работает над устаревшей копией и публикует изменения в тех же компонентах, с которыми работали другие, ожидается, что эти изменения будут перезаписаны.
Чтобы избежать этого, когда над проектом работают несколько членов команды, предлагается использовать режим GIT, в котором все могут использовать отдельные ветки, а публикация может быть выполнена из ветки совместной работы после объединения всех изменений.
Комментарии:
1. можете ли вы добавить дополнительную информацию о своем ответе или какие-либо ссылки, на которые я могу взглянуть?