Список всех keep-forever строит в Дженкинсе?
есть ли простой способ в Дженкинсе перечислить все сборки, помеченные как keep-forever? А затем, в идеале, один клик, чтобы либо отменить сборку как keep-forever, либо немедленно удалить ее?
в нашем процессе мы отмечаем сборку как keep-forever, если она включает в себя какой-то конкретный тип сбоя; это чтобы Дженкинс не удалялся автоматически с течением времени. Мне нужен простой способ получить список всех этих сборок keep-forever, чтобы они не занимали все наше дисковое пространство с течением времени.
2 ответов
в следующем запросе XPath против Дженкинса будут перечислены URL-адреса всех сборок с пометкой "Keep Forever":
http://[jenkins_server]/api/xml?depth=2&xpath=/hudson/job/build[keepLog="true"]/url&wrapper=forever
введите ее в браузере и посмотреть, что он возвращает.
теперь вы можете встроить его в HTML на основе XSLT, чтобы получить список со ссылками на эти сборки. Чтобы удалить сборку, вы можете предоставить кнопку, которая вызывает Jenkins CLI:
java -jar jenkins-cli.jar -s http://[jenkins_server]/ delete-builds [job-name] [build-num]
к сожалению, я не знаю, как отключить "keep build forever" с CLI без его удаления.
Я искал то же самое, и наш Дженкинс тоже довольно большой и пытается связать:
http://[jenkins_server]/api/xml?depth=2&xpath=/hudson/job/build[keepLog="true"]/url&wrapper=forever
Я закончил тем, что разбил его.
но, как оказалось, мне требуется только последняя сборка "keep forever" одной работы за раз, которая, кажется, работает намного быстрее. Поэтому я использую вместо этого следующее:
http://[jenkisn_server]/job/[job_name]/api/xml/?depth=2&xpath=/freeStyleProject/build[keepLog="true"]/number&wrapper=forever
который возвращает xml со всеми номерами сборки, которые помечены как "keep forever" Вы можете изменить xpath в соответствии с вашими потребностями.