Как: Развернуть правило работоспособности с пакетом решения
Дата последнего изменения: 15 ноября 2011 г.
Применимо к: SharePoint Foundation 2010
Внедрить новое правило работоспособности в текущую среду разработки не составляет труда. Можно установить сборку, содержащую правило, вручную при помощи средства глобального кэша сборок (Gacutil.exe) на сервере разработки. Если для регистрации правила в анализаторе работоспособности SharePoint был создан компонент SharePoint, то данный компонент можно установить вручную, запустив при помощи командной консоли SharePoint следующий командлет Windows Powershell: Install-SPFeature. Для активации компонента и регистрации правила можно использовать следующий командлет Windows Powershell: Enable-SPFeature.
Установка и регистрация правил вручную не является лучшим решением в производственной среде, в которой ферма серверов может состоять из нескольких серверов или есть планы со временем запустить дополнительные серверы. В такой среде рекомендуется использовать пакет решения, который загружается один раз и распространяется по всем серверам в ферме. При добавлении новых серверов данный пакет решения загружается автоматически при подготовке сервера.
В данной статье описан процесс создания пакета решения, содержащего правило работоспособности, его загрузка и внедрение в ферму серверов. Предполагается, что уже выполнены процедуры из статей Практическое руководство. Создание правила исправности и Практическое руководство. Создание компонента для регистрации правила работоспособности.
Создание пакета решения
Пакет решения представляет собой CAB-файл с расширением WSP и содержит файлы, которые должны быть развернуты на серверах фермы. Так как для внедрения правила работоспособности используется пакет решения, пакет установит два файла: feature.xml и сборку для правила. В каждом пакете решения также должен присутствовать файл manifest.xml, в котором указаны инструкции по установке.
Создание пакета решения необходимо начать с файла manifest.xml. Затем следует создать файл DDF (Diamond Directive File), который даст инструкции программе командной строки MAKECAB.EXE какие файлы следует включить в конечный CAB-файл. Завершает процесс создания пакета компиляция самого CAB-файла программой MAKECAB.EXE.
Создание манифеста для пакета решения
Откройте Visual Studio как администратор, щелкнув программу правой кнопкой в меню Пуск и выбрав Запуск от имени администратора.
Откройте проект, содержащий код для правила работоспособности.
Создайте папку решения.
В окне Обозреватель решений щелкните правой кнопкой мыши имя проекта и выберите Добавить, а затем Новая папка. Введите Решение.
Создайте файл манифеста решения.
Щелкните правой кнопкой мыши папку Решение и выберите Добавить, а затем Новый элемент. В окне Создать элемент выберите шаблон XML-файл. Дайте файлу имя manifest.xml. Щелкните Добавить.
Откройте в редакторе файл manifest.xml.
Удалите первую (и единственную) строку в файле. На ее месте вставьте следующий код.
<Solution SolutionId="00000000-0000-0000-0000-000000000000" xmlns="https://schemas.microsoft.com/sharepoint/"> <FeatureManifests> <FeatureManifest Location="FeatureFolderName\feature.xml" /> </FeatureManifests> <Assemblies> <Assembly DeploymentTarget="GlobalAssemblyCache" Location="AssemblyName.dll" /> </Assemblies> </Solution>
Замените значение атрибута SolutionId на созданный GUID (без скобок).
Для создания нового GUID можно использовать средство GuidGen (guidgen.exe). В Visual Studio перейдите в менюИнструменты и выберите пункт Создать GUID. В окне Создание GUID выберите 4. Формат реестра, затем нажмите кнопку Копировать. Теперь вставьте содержимое буфера обмена между кавычками после атрибута SolutionId. Удалите фигурные скобки в GUID.
Измените значение атрибута Location элемента FeatureManifest, заменив "FeatureFolderName" названием папки в решении, в которой находится файл feature.xml.
При развертывании решения в папке %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\FEATURES каждого сервера фермы создается каталог с названием решения.
Измените атрибут Location элемента Assembly, заменив имя файла "AssemblyName.dll" названием сборки правила.
Сохраните файл manifest.xml.
Создание файла каталога пакета решения
В проекте Visual Studio создайте папку пакета.
В окне Обозреватель решений щелкните правой кнопкой мыши имя проекта и выберите Добавить, а затем Новая папка. Введите Пакет.
Данная папка станет каталогом вывода программы командной строки MAKECAB.EXE.
Создайте в папке Solution проекта Visual Studio файл DDF (Diamond Directive File).
В окне Обозреватель решений щелкните правой кнопкой мыши папку Решение и выберите Добавить, а затем Новый элемент. В окне Создать элемент выберите шаблон Текстовый файл. Дайте файлу имя cab.ddf. Теперь нажмите кнопку Добавить.
Файл будет использоваться с программой командной строки MAKECAB.EXE.
Откройте в редакторе файл cab.ddf. Скопируйте следующий фрагмент в файл cab.ddf.
.OPTION EXPLICIT ; Generate errors .Set CabinetNameTemplate=SolutionName.wsp .set DiskDirectoryTemplate=CDROM ; All cabinets go in a single directory. .Set CompressionType=MSZIP;** All files are compressed in cabinet files. .Set UniqueFiles="ON" .Set Cabinet=on .Set DiskDirectory1=Package ; This is the output directory. ; Files to include. Solution\manifest.xml manifest.xml Features\FeatureFolderName\feature.xml FeatureFolderName\feature.xml bin\Release\AssemblyName.dll AssemblyName.dll
Измените значение аргумента CabinetNameTemplate, заменив "SolutionName" именем файла, который будет использован в пакете решения. (Не изменяйте расширение WSP.)
Замените "FeatureFolderName" (встречается в файле дважды) именем папки, в которой находится файл feature.xml решения.
Замените "AssemblyName.dll" (встречается в файле дважды) именем файла сборки правила. Если относительный путь в сборке отличается от "bin\Release\", замените соответствующую строку правильным путем.
Сохраните файл cab.ddf.
Создание файла пакета решения
Откройте командную строку Visual Studio.
Перейдите в каталог проекта Visual Studio.
Пути к файлам в cab.ddf и в команде, которая указана далее, относительны к каталогу проекта Visual Studio.
В командной строке выполните следующую команду:
makecab /f solution\cab.ddf
Пакет решения создается в папке Пакет.
Загрузка и развертывание решения
Созданный пакет решения необходимо проверить на установке SharePoint. Рекомендуется проводить проверку на чистом образе и не использовать текущий сервер разработки. Для этого необходимо следующее: а) загрузить пакет решения в ферму серверов; б) развернуть решение.
![]() |
---|
Созданное решение включает компонент, обрабатываемый на уровне фермы серверов, который активируется автоматически по окончании установки. Следовательно, не требуется выполнять какие-либо команды вручную. |
Загрузка и развертывание пакета решения в ферме
Откройте командную консоль SharePoint с правами администратора, щелкнув правой кнопкой мыши соответствующий пункт менюПуск | Администрирование, а затем выберите пункт Запуск от имени администратора.
Для загрузки решения необходимо в командной строке выполнить следующую команду. (Укажите полный путь и имя файла для пакета решения.)
add-spsolution -literalpath <full path and filename.wsp>
Пакет решения загружен в ферму серверов.
Для развертывания решения необходимо в командной строке выполнить следующую команду. (Укажите правильное имя для файла WSP.)
install-spsolution -identity filename.wsp -force -gacdeployment
Правило работоспособности установлено и зарегистрировано. Для проверки необходимо обратиться к списку Правило анализатора работоспособности в разделе ОтслеживаниеЦентра администрирования.
См. также
Задачи
Практическое руководство. Создание правила исправности
Практическое руководство. Создание компонента для регистрации правила работоспособности
Концепции
Другие ресурсы
https://msdn.microsoft.com/ru-ru/library/cc441431(v=office.14)