Лучший способ поиска и замены в Azure DevOps на основе стадии выпуска - PullRequest
0 голосов
/ 15 апреля 2020

Я создаю конвейер Release в Azure DevOps, который включает этап развертывания dacpa c. Многие из сценариев SQL содержат ссылку на другую базу данных SQL Server через связанный сервер. По разным причинам имя базы данных отличается от dev, UAT и производства. В нашем источнике он жестко запрограммирован на dev, например:

select * from LW.devdb.dbo.Account

Мы меняем имена с помощью ручного поиска и заменяем при развертывании UAT

select * from LW.uatdb.dbo.Account

Я бы хотелось бы иметь возможность сделать это автоматически как часть этапа UAT в Azure DevOps. Какой лучший способ сделать это?

Ответы [ 2 ]

0 голосов
/ 15 апреля 2020

Лучший способ поиска и замены в Azure DevOps на основе стадии выпуска

Вы можете использовать задачу Заменить токены , чтобы обновить имя базы данных на основе различные этапы.

В качестве теста измените имя базы данных в файле .sql:

select * from LW.#{DatabaseName}#db.dbo.Account

Формат имени базы данных в файле .sql: #{DatabaseName}#

Затем установите переменные для переменной DatabaseName для разных этапов:

enter image description here

Добавьте жетоны замены, чтобы заменить переменную в источнике file:

enter image description here

При выполнении этой задачи переменная # {DatabaseName} # в исходном файле будет заменена значением переменной DatabaseName:

select * from LW.devdb.dbo.Account

Надеюсь, это поможет.

0 голосов
/ 15 апреля 2020

Существует различное количество расширений для замены строк в файлах. Для вашей цели этого должно быть достаточно для замены имени базы данных в SQL сценариях.

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