Недавно я обновил конфигурацию одной из моих сборщиков hudson. История сборки не синхронизирована. Есть ли способ очистить историю сборки?Как очистить историю сборки Jenkins/Hudson?
Пожалуйста и спасибо
Недавно я обновил конфигурацию одной из моих сборщиков hudson. История сборки не синхронизирована. Есть ли способ очистить историю сборки?Как очистить историю сборки Jenkins/Hudson?
Пожалуйста и спасибо
Если вы выберите Управление Hudson/Конфигурация Reload с диска, Hudson перезагрузит все исторические данные сборки.
Если данные на диске перепутались, вы должны пойти на вашу% HUDSON_HOME% \ работу \ < Projectname> каталога и восстановить сборки каталогов, как они должны быть. Затем перезагрузите данные конфигурации.
Если вы просто спросить, как удалить все строить историю, вы можете просто удалить сборки по одному с помощью пользовательского интерфейса, если есть только несколько, или перейти к% HUDSON_HOME% \ рабочих мест \ < Projectname > и удалите все подкаталоги там - они соответствуют строкам. После этого перезапустите службу, чтобы изменения вступили в силу.
Я удалил все файлы и папки внутри «/ var/lib/jenkins/jobs/Demo», но я, когда отправляюсь в Дженкинс UI внутри этой РАБОТЫ Я все еще вижу историю сборки. – paul
После того, как вы «обезьяна» со структурой каталогов, просто перейдите в «Управление дженкинсами» и выберите «Обновить конфигурацию с диска» – DanBaker
@paul, после удаления там папок, ** restart ** Jenkins необходим для просмотра сборки история исчезла из пользовательского интерфейса. BTW, если мы используем Jenkins, путь обычно находится в/var/jenkins_home/jobs/{project name}/builds/ – Bright
Вы можете временно изменить конфигурацию проекта, чтобы сохранить только последнюю сборку, перезагрузить конфигурацию (которая должна уничтожить старые сборки), а затем снова изменить настройку конфигурации на нужное значение.
Как вы это делаете? –
Извините, не использовали Хадсон сейчас пару лет, но посмотрите на это, перезагрузив конфигурацию: http://stackoverflow.com/questions/5216552/does-anyone-know-how-to-reload-hudson-configuration -without-restarting –
С помощью консоли сценария (Управление Jenkins> Консоль Script) и что-то вроде этого сценария для основной массы удалить историю построить задания, https://github.com/jenkinsci/jenkins-scripts/blob/master/scriptler/bulkDeleteBuilds.groovy
Этот сценарий предполагает, что вы хотите только удалить диапазон компоновок. Для удаления всех сборок для данной работы, использовать это (проверено):
// change this variable to match the name of the job whose builds you want to delete
def jobName = "Your Job Name"
def job = Jenkins.instance.getItem(jobName)
job.getBuilds().each { it.delete() }
// uncomment these lines to reset the build number to 1:
//job.nextBuildNumber = 1
//job.save()
Отлично! определенно лучший подход! :) – hek2mgl
отличный трюк, но как насчет сброса счетчика сборки? любые сценарии для этого? –
@JesChergui Я обновил, чтобы показать сброс номера сборки. Консоль скрипта позволяет вам контролировать всевозможные вещи, см. Http://javadoc.jenkins-ci.org/ (AbstractProject - хорошее место для начала работы с заданиями) – rjohnston
Вот еще один вариант: удалить сборки с завитком.
$ curl -X POST http://jenkins-host.tld:8080/jenkins/job/myJob/[1-56]/doDeleteAll
Вышеупомянутые удаляет сборку № 1 до № 56 для работы myJob.
Если включена проверка подлинности на экземпляре Дженкинс, имя пользователя и маркер API должны быть предоставлены следующим образом:
$ curl -u userName:apiToken -X POST http://jenkins-host.tld:8080/jenkins/job/myJob/[1-56]/doDeleteAll
Этот API маркер должен быть извлечена из страницы/меня/настроить в Дженкинс. Просто нажмите кнопку «Показать API-маркер ...», чтобы отобразить как имя пользователя, так и маркер API.
Редактирование: возможно, придется заменить doDeleteAll
на указанные выше URL-адреса, чтобы сделать эту работу в зависимости от конфигурации или версии используемого Дженкинса.
Перейдите: %JENKINS_HOME%\jobs\jobName
Откройте файл "nextBuildNumber" и изменить номер. После этого перезагрузите конфигурацию Дженкинса. Примечание: файл nextBuildNumber содержит следующую сборку, которая не будет использоваться Дженкинсом.
Еще один простой способ очистить сборки - это добавить старый плагин Discard в конце ваших заданий. Установить максимальное количество сборок, чтобы сохранить и затем снова запустить задание:
https://wiki.jenkins-ci.org/display/JENKINS/Discard+Old+Build+plugin
Вот как удалить ВСЕ СТРОИТ ДЛЯ ВСЕХ РАБОЧИХ МЕСТ ......используя Jenkins Scripting.
def jobs = Jenkins.instance.projects.collect { it }
jobs.each { job -> job.getBuilds().each { it.delete() }}
Перейти к %HUDSON_HOME%\jobs\<projectname>
удалить builds
реж и удалить lastStable, lastSuccessful
ссылки и удалить nextBuildNumber
файл.
После выполнения выше шагов перейти по ссылке ниже от UI
Jenkins-> Управление Дженкинс -> Конфигурация Перезагрузка с диска
Он будет делать то, что вам нужно
Этот ответ для Jenkins
Перейти на домашнюю страницу Jenkins → Управление Jenkins → Сценарий оле
Выполните следующий скрипт там. Изменение copy_folder
к your project name
Код:
def jobName = "copy_folder"
def job = Jenkins.instance.getItem(jobName)
job.getBuilds().each { it.delete() }
job.nextBuildNumber = 1
job.save()
Лучший ответ до сих пор –
Это самое быстрое решение. –
Да, но для этого НЕ перезапускайте Jenkins или, похоже, не обновляете nextbuildnumber до 1, когда вы делаете сборку после перезапуска. Моя работа началась в 39 лет, поэтому мне пришлось переделать это. – Will
При использовании метода консоли Script затем попробуйте использовать следующие вместо того, чтобы принять во внимание, если задания сгруппированы в контейнеры папки.
def jobName = "Your Job Name"
def job = Jenkins.instance.getItemByFullName(jobName)
или
def jobName = "My Folder/Your Job Name
def job = Jenkins.instance.getItemByFullName(jobName)
Вы можете уточнить "полностью перепутались"? Возможно, кто-то испытает подобную проблему раньше и может направить вас на то, как ее исправить. –
сожалеет о двусмысленности. исправлено. – myusuf3
Здесь есть более новый и немного более конкретный вопрос: https://stackoverflow.com/questions/13052390/jenkins-remove-old-builds-with-command-line/22303284 –