Создать скрипт SQL из коммитов с момента последней сборки - PullRequest
0 голосов
/ 05 сентября 2018

Как инженер DevOps, я хочу, чтобы наши разработчики могли размещать сценарии SQL в папке проекта базы данных SQL Server, и чтобы агент сборки VSTS подготавливал все сценарии, зафиксированные с момента последней успешной сборки.

Причина, по которой я ищу только файлы со времени последней успешной сборки, заключается в том, что я хочу, чтобы эти сценарии запускались только один раз. Если они встроены в сценарий после развертывания, они будут запускаться при каждом развертывании базы данных. Большинство этих сценариев являются изменениями данных, а не изменениями схемы.

Я нашел это Построить последний принятый [sic] SQL Script VSTS , но решение применялось к репозиторию Git для последних зафиксированных изменений вместо универсального решения или эквивалента TFVC.

Нужно ли изучать события предварительной сборки Visual Studio? Сценарии после развертывания проекта базы данных SQL Server? Задача агента сборки VSTS для поиска и копирования последних файлов в другое место?

Ответы [ 2 ]

0 голосов
/ 05 сентября 2018

Похоже, что вы действительно хотите, это DBUP, он отслеживает, какие скрипты были запущены, и запускает их через консольное приложение.

https://dbup.readthedocs.io/en/latest/

https://marketplace.visualstudio.com/items?itemName=johanclasson.UpdateDatabaseWithDbUp

0 голосов
/ 05 сентября 2018

Если они встроены в сценарий после развертывания, они будут запускаться при каждом развертывании базы данных.

Решение этой проблемы - сделать скрипты идемпотентными . Если необходимо вставить данные, проверьте, есть ли они там , прежде чем вставить их.

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