Как исключить определенные файлы appsettings из публикации - PullRequest
0 голосов
/ 18 мая 2018

У меня есть приложение asp.net core 2.На основании документации я создал .pubxml файл для своей среды разработки.Я использую веб-развертывание (удаленный агент) для развертывания веб-пакета на целевом веб-сервере.На нашем сервере сборки, где установлен jenkins, я запускаю следующую команду для сборки и развертывания

D:\Jenkins\myproject\workspace\myapplication\Src\Api>dotnet publish Api.csproj /p:PublishProfile=development.pubxml

. Она успешно создает и развертывает приложение на целевом веб-сервере.

Однако в моем приложении есть несколько appsettings файлов, специфичных для каждой среды.Например, appsettings.json, appsettings.development.json, appsettings.staging.json и appsettings.production.json Процесс развертывания развертывает все файлы настроек на веб-сервере.(в данном случае для веб-сервера разработки)

Как включить только файл специфичных для среды приложений?(в этом случае я хочу развернуть appsettings.json, appsettings.development.json, но не другие 2 файла)

1 Ответ

0 голосов
/ 22 мая 2018

Вы можете добавить <ItemGroup> определений в свои профили публикации (файлы .pubxml), содержащие операторы обновления для файлов.

Например, если профиль публикации называется Production.pubxml / Staging.pubxml в соответствии сВы можете добавить эту группу элементов в корневой узел <Project> xml:

<ItemGroup>
  <Content Update="appsettings.*.json" CopyToPublishDirectory="Never" />
  <Content Update="appsettings.$(MSBuildThisFileName).json" CopyToPublishDirectory="PreserveNewest" />
</ItemGroup>
...