Команда Jenkins, чтобы получить количество сборок в очереди Я пытаюсь получить количество сборок в очереди сборки Jenkins. Могу ли я узнать команду Jenkins, чтобы получить количество запусков в очереди? Ответ 1 См. Jenkins API удаленного доступа. Доступ к описанию API с помощью: http://<Your Jenkins>/api/ и фактические данные: http://<Your Jenkins>/api/xml У очереди Build есть свой отдельный API: http://<Your Jenkins>/queue/api/ с его данными: http://<Your Jenkins>/queue/api/xml Ответ 2 Это легко сделать с Jenkins Script Консоль: println Hudson.instance.queue.items.length // => 2 Также возможно удаленно выполнить groovy Script. Например, из командной строки: $ curl -u username:password -d "script=println Hudson.instance.queue.items.length" jenkins_url/scriptText 2 Примечание. Пользователь с указанным именем пользователя должен иметь доступ к консоли Jenkins Script. Ответ 3 Вот реализация оболочки script упомянутого API-интерфейса Jenkins REST _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 Ответ 4 Попробуйте Jenkins API в 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} ]
Ответ 1 См. Jenkins API удаленного доступа. Доступ к описанию API с помощью: http://<Your Jenkins>/api/ и фактические данные: http://<Your Jenkins>/api/xml У очереди Build есть свой отдельный API: http://<Your Jenkins>/queue/api/ с его данными: http://<Your Jenkins>/queue/api/xml
Ответ 2 Это легко сделать с Jenkins Script Консоль: println Hudson.instance.queue.items.length // => 2 Также возможно удаленно выполнить groovy Script. Например, из командной строки: $ curl -u username:password -d "script=println Hudson.instance.queue.items.length" jenkins_url/scriptText 2 Примечание. Пользователь с указанным именем пользователя должен иметь доступ к консоли Jenkins Script.
Ответ 3 Вот реализация оболочки script упомянутого API-интерфейса Jenkins REST _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
Ответ 4 Попробуйте Jenkins API в 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} ]