Outil graphique pour Powershell SharePoint

Microsoft a lancé le Windows PowerShell Command Builder for Microsoft SharePoint 2010 Products and Microsoft Office 365 vous permettant de créé des commandes Powershell de façon graphique et plus aisément que si vous aviez à les taper vous même.

C’est une application Silverlight toute simple mais qui vous permet de faire des requêtes (SharePoint Server 2010, Foundation 2010 et Office 365) pouvant être plus complexes:

image

La documentation est ici!

Bon PowerShell

SharePoint 2010: bogue avec WebConfigModification

Lorsque vous désirez apporter des modifications au fichier web.config de votre application SharePoint 2010, vous pouvez utiliser deux méthodes:

  • Créer un fichier webconfig.<votre_nom>.xml que vous ajouter au répertoire \CONFIG (Source sur MSDN)
  • Le faire à l’aide de la programmation et utiliser les objets SPWebConfigModification et SPWebApplication.WebConfigApplication (Source sur MSDN).

Cependant, lorsque vous utilisez la seconde méthode et que vous enlever les modifications du fichier à l’aide de Remove(), les modifications ne s’enlèvent pas. Et ce même si vous utiliser le .Update() et .ApplyWebConfigModifications(). Cela peut n’avoir comme effet que votre modification se retrouve plusieurs fois dans le fichier web.config, mais si vous insérez des modifications plus sensible à l’unicité, comme pour un HttpModule, alors cela crée une erreur qui empêche le site de fonctionner (Erreur 500).

Une question posée en ce sens sur les forums MSDN nous permet de découvrir que cela est un bogue connu de Microsoft (Office14 831708) et qu’éventuellement celui-ci devrait être corrigé. Pendant ce temps, vous pouvez essayer ce script PowerShell, mais dans mon cas, cela n’a pas fonctionné!

Bonne chance!

SharePoint 2010 and VS2010: Scripts de post-déploiement

Le contexte

Vous développer une application SharePoint 2010 à l’aide de Visual Studio 2010 sur un serveur Windows 2008 64 bits. Vous désirer rouler un script post-déploiement (Powershell par exemple) pour déboguer:

image

Le problème

Lorsque vous y mettez un script, par exemple:

powershell $(ProjectDir)\PowerShellScript\MonSuperScriptPowerShell.ps1

Vous obtenez toujours une erreur lors de l’exécution du script:

Error occurred in deployment step 'Run Post-Deployment Command': The command "powershell $(ProjectDir)\PowerShellScript\MonSuperScriptPowerShell.ps1" exited with error code: 1.

Cette erreur est dû au fait que VS2010 roule dans un mode 32 bits, ainsi que ses scripts post-déploiement, et que les API de SharePoint 2010 roule dans un mode 64 bits. Ce qui crée des erreurs lors de l’exécution de ce dernier.

La solution

Il faut faire rouler le script en 64 bits pour qu’aucune erreur n’apparaisse. Pour ce faire, nous allons utiliser MSBuild pour faire cela.

Nous allons créer le script MonSuperScriptPowerShell.msbuild:

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Install" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">  
    <Target Name="Install">    
        <Exec Command="powershell .\MonSuperScriptPowerShell.ps1" /> 
    </Target>
</Project>

Celui-ci lorsqu’il sera appelé roulera le script PowerShell dans le mode 64 bits et aucune erreur ne sera généré!

Voici la ligne de commande pour le lancer à partir de VS2010:

%WinDir%\Microsoft.NET\Framework64\v4.0.30319\MSBuild 
$(ProjectDir)\PowerShellScript\MonSuperScriptPowerShell.msbuild

Et voilà, le tour est joué!

Bon post-déploiement!

Source

StackOverflow