Если у вас есть ферма из нескольких серверов SharePoint, на серверах которой нужно заменить один файл, то можно не использовать создание WSP-пакета, а написать несколько строчек на PowerShell (взять из примера) и добавить в установочный пакет.

Так, недавно нужно было добавить новый шаблон для оповещений на сайте с именем CustomAlertTemplates.xml. Обычно шаблоны хранятся в  папке c:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\XML, потому мы тоже туда скопируем файл.

 

#PowerShell script копирование файла на все серверы фермы SharePoint
#Путь и имя файла, который нужно скопировать
$source = "C:\distrib\CustomAlertTemplates.xml" 

#UNC путь к каждому серверу
$pc1 = "\\PC1\c$\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\XML" 
$pc2 = "\\PC2\c$\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\XML" 
$pc3 = "\\PC3\c$\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\XML" 

Copy-Item -LiteralPath $source -Destination $pc1 
Copy-Item -LiteralPath $source -Destination $pc2 
Copy-Item -LiteralPath $source -Destination $pc3

 

Этот скрипт можно много оптимизировать, улучшать, украшать. Но когда «вам ехать или шашечки?», то его вполне хватит. Особенно, если файл требует проверок.

Два требования:

1. наличие открытых портов между машины, с которой копируете файл, и машинами, на которые нужно копировать файл;

2. Запускать PowerShell консоль от имени учетной записи, которая имеет права записи файлов на удаленных машинах.