J'ai besoin de filtrer les résultats de construction d'un travail basé sur la description de la construction dans Hudson. J'ai trouvé un plugin qui permet le filtrage basé sur la description du travail, mais je ne suis pas sûr de la façon dont je commencerais à faire la même chose pour les builds.Filtrage des résultats de construction Hudson par description
Répondre
Utilisez API XML Hudsons avec XPATH
http://<your hudson url>/api/xml?depth=1&xpath=//job/description[contains(./text(),'<search string>')]&wrapper=jobs
vous montrera les descriptions de tous les emplois qui contiennent la chaîne de recherche donnée
avec un peu plus de magie XPath vous pouvez probablement l'obtenir pour afficher le résultat de la dernière version aussi (le chemin est le travail/lastBuild/résultat, peut-être que vous avez besoin d'augmenter la profondeur à 2)
consulter le api xml à http://<your hudson url>/api
pour référence ultérieure
Edit:
http://<your hudson url>/api/xml?depth=2&xpath=child::hudson/job[contains(displayName,'<search string>')]/*[self::name or self::lastBuild]&wrapper=jobs
fonctionne presque pour moi, il indique le nom et la dernière construction, mais malheureusement dans une structure comme celle-
<jobs>
<name>job1</name>
<lastBuild>
<!-- snip a lot -->
<result>SUCCESS</result>
<!-- snip a lot -->
</lastBuild>
<name>job2</name>
<lastBuild>
<!-- snip a lot -->
<result>SUCCESS</result>
<!-- snip a lot -->
</lastBuild>
</jobs>
alors que je préfère ceci:
<jobs>
<job>
<name>job1</name>
<lastBuild>
<!-- snip a lot -->
<result>SUCCESS</result>
<!-- snip a lot -->
</lastBuild>
</job>
<job>
<name>job2</name>
<lastBuild>
<!-- snip a lot -->
<result>SUCCESS</result>
<!-- snip a lot -->
</lastBuild>
</job>
</jobs>
Quelqu'un peut-il fournir le réglage fin xpath nécessaire?
EDIT à nouveau
maintenant je réalisais que vous voulez lire les informations sur les constructions, pas d'emplois, donc utiliser ce code à la place:
http://<your hudson url>/job/<your job name>/api/xml?depth=1&xpath=//build[contains(action/cause/shortDescription,'<search string>')]/*[self::result or self::number]&wrapper=builds