Procédure : déployer une règle d’intégrité avec un package de solution
Dernière modification : mardi 15 novembre 2011
S’applique à : SharePoint Foundation 2010
Dans votre environnement de développement, le déploiement d’une nouvelle règle d’intégrité est direct et simple. Vous pouvez installer manuellement l’assembly qui contient votre règle en utilisant l’outil Global Assembly Cache Tool (Gacutil.exe) pour placer l’assembly dans le Global Assembly Cache (GAC) sur votre serveur de développement. Si vous avez créé un Composant fonctionnel SharePoint pour enregistrer la règle avec Analyseur d’intégrité SharePoint, vous pouvez installer manuellement ce composant en utilisant SharePoint Management Shell pour exécuter l’applet de commande Windows Powershell Install-SPFeature. Vous pouvez utiliser l’applet de commande Windows Powershell Enable-SPFeature pour activer le Composant et enregistrer la règle.
La procédure manuelle n’est pas pratique dans un environnement de production où la batterie de serveurs comprend probablement plusieurs serveurs et où des serveurs supplémentaires peuvent être mis en ligne avec le temps. Dans un environnement de production, la meilleure approche consiste à utiliser un package de solution. Vous pouvez télécharger un package de solution une seule fois et la solution est propagée sur tous les serveurs de la batterie. Lorsque de nouveaux serveurs sont mis en ligne, ils récupèrent automatiquement la solution lors de leur configuration.
Cette rubrique explique comment créer un package de solution qui contient une règle d’intégrité, et comment télécharger et déployer la solution sur une batterie de serveurs. Cette rubrique suppose que vous avez exécuté les procédures décrites dans Procédure : créer une règle d'intégrité et Procédure : créer une fonction pour inscrire une règle d’intégrité.
Création du package de solution
Un package de solution est un fichier CAB avec une extension de nom de fichier .wsp, qui contient tous les fichiers devant être déployés sur les serveurs de la batterie. Comme nous utilisons un package de solution pour déployer une règle d’intégrité, le package va installer deux fichiers : feature.xml et l’assembly de la règle. Chaque package de solution doit également contenir un fichier nommé manifest.xml qui inclut des instructions pour l’installation de la solution.
La première étape dans la création d’un package de solution consiste à créer le fichier manifest.xml. La seconde étape consiste à créer un fichier .ddf (Diamond Directive File) qui indique à l’utilitaire de ligne de commande MAKECAB.EXE quels fichiers inclure dans le fichier CAB résultat. La dernière étape consiste à utiliser MAKECAB.EXE pour compiler le fichier CAB.
Pour créer le manifeste d’un package de solution
Ouvrez Visual Studio en tant qu’administrateur : cliquez sur le programme dans le menu Démarrer, puis sélectionnez Exécuter en tant qu’administrateur.
Ouvrez le projet qui contient le code de votre règle d’intégrité.
Créez un dossier Solution.
Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le nom du projet, choisissez Ajouter, puis Nouveau dossier. Tapez Solution.
Créez un fichier manifeste de la solution.
Cliquez avec le bouton droit sur le dossier Solution, choisissez Ajouter, puis Nouvel élément.... Dans la boîte de dialogue Ajouter un nouvel élément, sélectionnez le modèle Fichier XML. Nommez le fichier manifest.xml. Puis, cliquez sur Ajouter.
Ouvrez le fichier manifest.xml dans l’éditeur.
Supprimez la première (et unique) ligne du fichier et collez à sa place le code suivant.
<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>
Remplacez la valeur de l’attribut SolutionId par le nouveau GUID généré (sans accolades).
Vous pouvez utiliser l’outil GuidGen (guidgen.exe) pour obtenir un nouveau GUID. Dans le menu Outils de Visual Studio, cliquez sur Créer GUID. Dans la boîte de dialogue Créer GUID, sélectionnez 4. Format de registre, puis cliquez sur Copier. Collez le contenu du Presse-papiers entre les guillemets après l’attribut SolutionId. Supprimez les accolades du GUID.
Dans l’élément FeatureManifest, modifiez la valeur de l’attribut Location, en remplaçant FeatureFolderName par le nom du dossier de votre solution contenant le fichier feature.xml.
Lorsque la solution est déployée, un dossier de même nom est créé dans le dossier %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\FEATURES sur chaque serveur de la batterie.
Dans l’élément Assembly, modifiez la valeur de l’attribut Location, en remplaçant AssemblyName.dll par le nom du fichier de votre assembly de règle.
Enregistrez manifest.xml.
Pour créer un fichier de directives pour le package de solution
Créez un dossier de package dans votre projet Visual Studio.
Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le nom du projet, choisissez Ajouter, puis Nouveau dossier. Tapez Package.
Il s’agit du répertoire de sortie pour l’utilitaire de ligne de commande MAKECAB.EXE.
Créez un fichier .ddf (Diamond Directive File) dans le dossier Solution de votre projet Visual Studio.
Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le dossier nommé Solution, choisissez Ajouter, puis Nouvel élément.... Dans la boîte de dialogue Ajouter un nouvel élément, sélectionnez le modèle Fichier texte. Nommez le fichier cab.ddf. Puis, cliquez sur Ajouter.
Ce fichier sera utilisé avec l’utilitaire de ligne de commande MAKECAB.EXE.
Ouvrez le fichier cab.ddf dans l’éditeur. Copiez le code suivant et collez-le dans le fichier 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
Modifiez la valeur de l’argument CabinetNameTemplate, en remplaçant SolutionName par le nom du fichier que vous voulez utiliser pour votre package de solution (conservez l’extension .wsp).
Remplacez FeatureFolderName (il apparaît deux fois) par le nom du dossier de votre solution contenant le fichier feature.xml.
Remplacez AssemblyName.dll (il apparaît deux fois) par le nom du fichier de votre assembly de règle. Par ailleurs, si le chemin relatif de l’assembly n’est pas bin\Release\, remplacez cette chaîne par le chemin correct.
Enregistrez cab.ddf.
Pour créer le fichier package de solution
Ouvrez une fenêtre d’invite de commandes Visual Studio.
Accédez au répertoire qui contient votre projet Visual Studio.
Les chemins d’accès aux fichiers dans cab.ddf et dans la commande émise lors de l’étape suivante sont relatifs au répertoire du projet Visual Studio.
À l’invite de commandes, exécutez la commande suivante :
makecab /f solution\cab.ddf
Un package de solution est créé dans le dossier Package.
Téléchargement et déploiement de la solution
Après avoir créé un nouveau package de solution, vous devez le tester sur une installation SharePoint, de préférence sur une image propre plutôt que sur votre serveur de développement. Pour cela, vous devez d’abord télécharger le package de solution vers la batterie de serveurs, puis déployer la solution.
Notes
Votre solution inclut un composant fonctionnel dont la portée est la batterie de serveurs. Un composant de ce niveau-là est automatiquement activé au moment de son installation, il est donc inutile d’exécuter une commande pour l’activer manuellement.
Pour télécharger et déployer un package de solution sur la batterie de serveurs
Ouvrez SharePoint Management Shell en tant qu’administrateur : dans le menu Démarrer, cliquez avec le bouton droit sur Outils d’administration, puis sélectionnez Exécuter en tant qu’administrateur.
À l’invite de commandes, exécutez la commande suivante pour télécharger la solution (en remplaçant par le chemin d’accès complet et le nom du fichier de votre package de solution).
add-spsolution -literalpath <full path and filename.wsp>
Le package de solution est maintenant téléchargé sur la batterie de serveurs.
À l’invite de commandes, exécutez la commande suivante pour déployer la solution (en remplaçant par le nom du fichier .wsp correct).
install-spsolution -identity filename.wsp -force -gacdeployment
Votre règle d’intégrité est maintenant installée et enregistrée. Vous pouvez vérifier cela en consultant la liste Règle de l’Analyseur d’intégrité dans la section Analyse de l’Administration centrale.
Voir aussi
Tâches
Procédure : créer une règle d'intégrité
Procédure : créer une fonction pour inscrire une règle d’intégrité
Concepts
Création manuelle d’une solution
Autres ressources
Automating Solution Package Creation for Windows SharePoint Services by Using MSBuild