Home > Business tools, Sysadmin > XWiki, c’est décidemment magique

XWiki, c’est décidemment magique

December 15th, 2008 Leave a comment Go to comments

Encore un billet dans la série XWiki, mais décidemment, cet outil me rend vraiment beaucoup de services. Ma dernière oeuvre (sic) consiste en la création d’une mini gestion des membres de l’association (GUSES, pour ceux qui ne le savent pas déjà !). Nous utilisons déjà Galette pour gérer les cotisations, mais malheureusement il n’y a rien (à ma connaissance) pour y brancher des hooks, dans mon cas ajouter l’utilisateur à la liste de diffusion de l’assocation.

Bref, quel rapport avec XWiki me direz vous ? Et bien, gràce à la bibliothèque SSH Trilead pour Java j’ai écrire une classe Groovy qui me permet d’exécuter des commandes (au sens unix) à distance. Et via quelques scripts shell et perl, il m’est désormais possible lors de l’ajout d’un utilisateur dans XWiki, d’automatiquement l’ajouter dans la base Galette, mais aussi l’inscrire à la liste de diffusion. D’autant plus que ces deux opérations étaient jusqu’alors réalisé par deux personnes différentes, n’arrangeant rien.

Un petit d’exemple d’utilisation de ma classe Groovy (sshhelper), en Groovy :

def sshHelper = new SshHelper()
sshHelper.openSession("hostname", "4222", "asyd", "/Users/asyd/.ssh/id_dsa", "password");
println sshHelper.runCommand("echo OK");

Le même utilisable directement depuis XWiki :

#set ($sshHelper = $xwiki.parseGroovyFromPage("Users.SshHelper"))
$sshHelper.openSession("hostname", "22", "user", "/Users/asyd/.ssh/id_dsa", "password")
#set ($buffer = $sshHelper.runCommand("echo OK")

Il est à noter que j’ai eu des problèmes (avec la bibliothèque Trilead) d’authentification en login / mot de passe vers des serveurs Linux (Debian) alors que cela fonctionne vers des serveurs Solaris. Cependant, l’authentification par clé a fonctionné vers les deux OS.

Categories: Business tools, Sysadmin Tags: ,
  1. No comments yet.
  1. No trackbacks yet.