Страницы

Поиск по вопросам

понедельник, 16 декабря 2019 г.

Настройка CI/CD для публикации приложения в Azure

#visual_studio #aspnet #azure #непрерывная_интеграция #devops


Хочу использовать Visual Studio Team Services для сборки и публикации своего ASP.NET
приложения в Azure Web Application. Раньше публиковал с помощью Web Deploy в Visual
Studio, и там мой профиль публикации содержал следующие данные:


Строка подключение к базе SQL Azure
Параметры для включения аутентификации в Azure AD


Теперь же, когда публикация происходит с помощью CI/CD конвейера, эти параметры не
подставляются и приложение публикуется в облако со строкой подключения и параметрами,
которые были на локальной машине. 

Вопрос: есть ли способ внести в Build Definition эти настройки? Импортировать профиль
публикации при развертывании или еще какие-либо способы корректно развернуть приложение
в облаке?
    


Ответы

Ответ 1



Если вы публикуете приложение именно как Azure Web Application, то вам не нужно править конфиги на стадии билда. Вынесите настройки в web.config, в стандартные секции ConnectionStrings и AppSettings. Они должны быть там по умолчанию, но вдруг вы храните из где-то в другом месте. В портале Azure, в секции Application settings для своего приложения - задайте реальные значения для своего приложения. Значения из Application settings применяются поверх того, что вписано в web.config, так что вам вообще ничего не придется заменять в процессе сборки и публикации релиза. Официальная документация по настройкам: Configure web apps in Azure App Service. App settings: For .NET apps, these settings are injected into your .NET configuration AppSettings at runtime, overriding existing settings. Connection strings: For .NET apps, these connection strings are injected into your .NET configuration connectionStrings settings at runtime, overriding existing entries where the key equals the linked database name. Кстати, Azure Web Sites умеют автопубликацию из GIT / VSTS, со встроенной поддержкой основных типов студийных проектов, так что может быть вам вообще не нужны билды в VSTS :)

Комментариев нет:

Отправить комментарий