Imaginons que vous n’utilisez pas Ant comme outil d’automatisation (de build) mais plutôt Phing parce que vous maîtrisez cet outil.
Imaginons que vous souhaitez également vérifier la qualité de vos développement Javascript (Dans un projet PHP, vous avez sûrement un peu de Javascript, non ?) et que vous souhaitez disposer d’indicateur de suivi de la qualité dans Jenkins.
Il existe plusieurs outils pour vérifier la qualité de son code Javascript :
L’outil JSL n’a pas évolué depuis 2007. Il nécessite d’être installé en suivant l’une de ces procédures. Avantage, il existe une tâche Phing pour exécuter JSL. Inconvénient, il n’est pas possible de générer un fichier XML compréhensible par Jenkins.
Je n’ai pas regardé Google Closure Linter.
JSHint semble intéressant. Mais à nouveau, il ne semble pas y avoir de mécanisme simple permettant de l’intégrer à Jenkins.
Jslint ne permet pas, a priori, nativement de générer un fichier XML compréhensible par Jenkins.
Je me suis donc tourné vers jslint4java. Je me suis inspiré du travail de Stephen Rees (qui utilise Ant) pour implémenter l’exécution de Jslint avec phing.
Voici le résultat :
Vous devez ensuite appeler cette tâche dans votre tâche principale de build. Quelque chose comme ça :
Vous pourrez ensuite configurer dans Jenkins l’appel du fichier de log (build/log/jslint.xml) :
Après l’exécution du build, vous devriez avoir dans le menu Violations, quelque chose comme ça :