Remote stsadm et WCF, c'est mieux! 

Admin, Developpement, Sharepoint, WCF

Dans la version précédente, le service sur le serveur qui exécutait la commande stsadm venant d'une machine distante était un web service. Je me suis donc mis à regarder WCF, et notamment les services WCF, et hmm ... comment dire ... c'est beaucoup mieux :-p

 

Bref, voici la version 2 de ce petit utilitaire qui permet d'exécuter à distance des commandes stsadm sur un serveur SharePoint.

 

Il faut au préalable lancer le service (en double cliquant sur l'exécutable NetstsadmService.exe) sur le serveur SharePoint, en précisant un numéro de port sur lequel écouter :

 

Launch Service 2

 

Dans la capture précédente, le service tournera donc sur le port 1234.

 

Ensuite, il faut exécuter la commande suivante depuis un poste distant (en supposant que le client du service NetStsAdm.exe soit dans le path)

 

> NetStsAdm.exe -TargetURL http://SharePoint:1234 -o deletesolution -name SampleFeature.wsp

 

TargetURL pointe vers le service, ensuite la syntaxe est la même que pour une commande stsadm. Dans l'exemple précédent, il est demandé de supprimer la solution SampleFeature.wsp.

 

Sur le même principe que la première version, si dans votre commande vous spécifiez un "filename" (pour par exemple les opérations addsolution, addtemplate, backup, restore etc ...), le fichier sera dans un premier temps téléchargé sur le serveur dans le répertoire temporaire renvoyé par la méthode :

 

Path.GetTempPath()

 

Ensuite, le paramètre sera bien entendu modifié pour prendre en compte le nouveau chemin sur le serveur.

 

Vous pourrez avoir une trace des commandes exécutées, en effet celles-ci s'afficheront sur la console hébergeant le service.

 

Attention, aucune sécurité n'est mise en place, ce qui veut dire que le service est accéssible de façon anonyme. Cet outil est dans un premier temps destiné aux environnements de développement. Dans une prochaine version, je mettrai en place la sécurité.

 

Vous pouvez télécharger cette nouvelle version sur CodePlex (le code source est également disponible).

 

Merci de me remonter vos commentaires et/ou remarques!

 
Posté le 8 Nov 08
Commentaires (2)  |  Url de Trackback  | Lien vers ce message (0) | Marquez ce billet avec:        
 

Liens vers ce message

Commentaires


srikanth (7-Apr-2009)
Hi, I could not run the command, i am getting this error -------------------- The server was unable to process the request due to an internal error. For more information about the error, either turn on IncludeExceptionDetailInFaults (eit her from ServiceBehaviorAttribute or from the configuration behav ior) on the server in order to send the exception information back to the client , or turn on tracing as per the Microsoft .NET Framework 3.0 SDK documentation a nd inspect the server trace logs. -------------------- can you please let me know what may be the cause Srikanth


Julien (7-Apr-2009)
Hi, have you installed the framework .NET 3.5?


Nom *:
URL:
Email:
Commentaires:

© 2009 Julien Chomarat - Design based on Blue World