J'essaie d'obtenir le nombre de builds dans la file d'attente des builds Jenkins.
Puis-je connaître la commande Jenkins pour connaître le nombre de versions exécutées dans la file d'attente?
Voir Jenkins ' API d'accès distant.
Accédez à la description de l'API avec:
http://<Your Jenkins>/api/
et les données réelles avec:
http://<Your Jenkins>/api/xml
La file d'attente de génération possède sa propre API distincte:
http://<Your Jenkins>/queue/api/
avec ses données:
http://<Your Jenkins>/queue/api/xml
C'est facile à faire avec Jenkins Script Console :
println Hudson.instance.queue.items.length
// => 2
En outre, il est possible d'exécuter un script groovy à distance. Par exemple, en ligne de commande:
$ curl -u username:password -d "script=println Hudson.instance.queue.items.length" jenkins_url/scriptText
2
Note: l'utilisateur ayant spécifié nom d'utilisateur devrait avoir accès à Jenkins Script Console.
Voici une implémentation de script Shell de l'API Jenkins REST mentionnée.
_queuesize=$(curl -s -k -m 60 http://${yourjenkinsserver}:8180/jenkins/queue/api/xml 2>/dev/null | grep -c '<item>')
if [[ -z "${_queuesize}" ]]; then
_queuesize=0;
fi
Essayez API Jenkins en Python .
get_jobs()
Get list of jobs running.
Each job is a dictionary with ‘name’, ‘url’, and ‘color’ keys.
Returns: list of jobs, [ { str: str} ]