MSDeploy - команда синхронизации для копирования файлов в подпапку приложения iis
Я хочу выполнить шаг после сборки, чтобы скопировать некоторые файлы в папку веб-сайта с помощью MSDeploy.
В конце концов я буду делать это в удаленном месте (указав computerName
, userName
переключатели и т.д.), но сейчас я запускаю его локально:
"C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe"
-AllowUntrusted -verb:sync
-source:dirPath="D:\files_to_copy"
-dest:iisApp="My Website Name"
Это работает, но он удаляет все содержимое папки сайта и заменяет их содержимым "D:\files_to_copy" (как вы могли ожидать!). Поэтому мне было интересно, как я использую это просто скопировать в подпапку на сайте?
я пробовал -dest:iisApp="My Website Name/my_subfolder"
но это просто создает новое приложение IIS под названием "my_subfolder", вложенное в существующее приложение IIS.
2 ответа
Есть другие провайдеры, кроме iisApp, возможно, вам нужен dirPath -dest
также?:
- dirPath: поставщик dirPath синхронизирует содержимое каталога.
- filePath: поставщик filePath синхронизирует отдельные файлы.
- iisApp. Поставщик iisApp синхронизирует содержимое каталога с папкой и помечает папку как приложение.
- contentPath: поставщик contentPath синхронизирует содержимое веб-сайта.
Ответ Андерса, приведенный выше, дает правильную информацию, но полный код, который я использовал для успешного выполнения, выглядит следующим образом:
"C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe"
-AllowUntrusted -verb:sync
-source:contentPath="D:\files_to_copy"
-dest:contentPath="My Website Name\my_new_folder"
Добавление одного файла в корень сайта (например, robots.txt) можно выполнить с помощью следующего:
"C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe"
-AllowUntrusted -verb:sync
-source:contentPath="D:\my_folder\robots.txt"
-dest:contentPath="My Website Name\robots.txt"
Надеюсь, это будет полезным примером для других в будущем.