Перечислите все сборки keep-forever в Jenkins? - PullRequest
7 голосов
/ 09 марта 2012

Есть ли в Jenkins простой способ перечислить все сборки, помеченные как keep-forever? А затем, в идеале, одним щелчком мыши, чтобы либо снять пометку со статусом keep-forever, либо немедленно удалить ее?

В нашем процессе мы помечаем сборку как сохраняющуюся навсегда, если она связана с каким-то конкретным типом сбоя; это не даст Дженкинсу автоматически удалять со временем. Мне нужен простой способ получить список всех этих сборок keep-forever, чтобы они не занимали все наше дисковое пространство с течением времени.

Ответы [ 2 ]

9 голосов
/ 09 марта 2012

В следующем запросе XPath к Jenkins будут перечислены URL-адреса всех сборок, помеченных как «Keep Forever»:

http://[jenkins_server]/api/xml?depth=2&xpath=/hudson/job/build[keepLog="true"]/url&wrapper=forever

Введите его в браузере и посмотрите, что он вернет.

Теперь,Вы можете встроить его в HTML на основе XSLT, чтобы получить список со ссылками на эти сборки.Чтобы удалить сборку, вы можете предоставить кнопку, которая вызывает CLI Jenkins:

java -jar jenkins-cli.jar -s http://[jenkins_server]/ delete-builds [job-name] [build-num]

К сожалению, я не знаю, как отключить «держать сборку навсегда» с помощью CLI, не удаляя ее.

6 голосов
/ 15 мая 2014

Я искал то же самое, и наши Дженкинс тоже довольно большой и пробовал ссылку:

 http://[jenkins_server]/api/xml?depth=2&xpath=/hudson/job/build[keepLog="true"]/url&wrapper=forever

Я закончил тем, что разбил ее.

Но, как оказалосьМне требуется только последняя сборка «всегда навсегда» по одной работе за раз, которая, кажется, работает намного быстрее.Поэтому вместо этого я использую следующее:

http://[jenkisn_server]/job/[job_name]/api/xml/?depth=2&xpath=/freeStyleProject/build[keepLog="true"]/number&wrapper=forever

, которое возвращает xml со всеми номерами сборки, помеченными как «сохранить навсегда». Вы можете изменить xpath в соответствии со своими потребностями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...