Я использую TFS и Visual Studio 2017. У меня есть два сервера для балансировки нагрузки, оба сервера имеют идентичные версии выпуска (теоретически) моего приложения MVC.
Текущий процесс выпуска выглядит следующим образом:
- Создайте резервную копию существующей корневой папки, скопировав все файлы в _old папку.
- Скопируйте файлы выпуска всервер вручную, т. е. Ctrl + c и Ctrl + v.
Я делаю то же самое для Сервера 2.
Мне интересно, есть ли способ автоматизировать это.
Я попробовал следующее: Я создалПубликация профиля, который будет публиковаться на одном сервере за раз, это работает, однако резервное копирование существующих файлов (т. е. шаг 1) по-прежнему выполняется вручную, а также я должен сделать это дважды на каждом сервере (т. е. пришлось создать двапрофили вместо 1)
Я попытался настроить файл pubxml, как показано ниже. Мой * .pubxml файл выглядит следующим образом:
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is used by the publish/package process of your Web project. You can customize the behavior of this process
by editing this MSBuild file. In order to learn more about this please visit https://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>FileSystem</WebPublishMethod>
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish />
<LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
<ExcludeApp_Data>False</ExcludeApp_Data>
<publishUrl>\\10.0.0.100\c$\Applications\TestApps\Test</publishUrl>
<publishUrl>\\10.0.0.101\c$\Applications\TestApps\Test</publishUrl>
<DeleteExistingFiles>False</DeleteExistingFiles>
</PropertyGroup>
</Project>
Выше не получилось, достаточно забавно, когда я пытаюсьи публиковать с помощью этого профиля публикации. Только Сервер 2 (10.0.0.101) забрал мои изменения и может кто-нибудь помочь.
Я использую Visual Studio 2017 Visual Studio Team Foundation Server 15.117.26714.0