Очистить историю сборки Jenkins (очистить сборку вчера)

Мне нужно очистить и очистить историю сборки Jenkins: Вчера - 2 дня назад - Все сборки. Как я могу сделать это в Дженкинс?

4 ответа

Решение
  • Удалить сборку Jenkins через GUI.

    Зайдите в сборку, которую вы хотите удалить, и нажмите кнопку Удалить эту сборку в правом верхнем углу.

  • Если вам нужно очистить историю сборки Jenkins и вернуть номер сборки обратно в 1, вы можете запустить простой скрипт в консоли скриптов Jenkins. источник

    1. Перейти к консоли сценариев Jenkins.

      Перейдите на домашнюю страницу Jenkins -> Управление Jenkins -> Консоль сценариев.

    2. Запустите этот скрипт для очистки и сброса.

      Скопируйте и вставьте этот сценарий в текстовую область "Консольный сценарий" и измените "copy_folder" на имя проекта, который вам нужно очистить историю. Затем нажмите кнопку " Выполнить".

      def jobName = "copy_folder"  
      def job = Jenkins.instance.getItem(jobName)  
      job.getBuilds().each { it.delete() }  
      job.nextBuildNumber = 1   
      job.save()
      

Другой способ удаления старых сборок или заданий - в командной строке.

Войдите в командную строку jenkins.

Чтобы удалить всю работу и построить историю, удалите папку работы. например

$ rm -rf jobs/jobname

Чтобы посмотреть историю сборки:

$ ls jobs/jobname/builds

1409  1411  1413  1415  1417  1419  1421  1423  1425
923  963  974  985  lastFailedBuild  lastSuccessfulBuild  
lastUnsuccessfulBuild 1191  1334  1348  1379  1381  1383
1406  1408  1410  1412  1414  1416  1418  1420  1422  1424
913   962  973  978  987  lastStableBuild  lastUnstableBuild
legacyIds

Чтобы удалить выбранные сборки, удалите каталог номеров сборок, например

$ rm -rf jobs/jobname/builds/97* jobs/jobname/builds/13*

Не забудьте последний шаг при удалении или редактировании файлов под jenkins:

После удаления заданий или сборок из файловой системы вам нужно перейти в Manage Jenkins в графическом интерфейсе jenkins, а затем выполнить "Перезагрузить конфигурацию с диска".

Обратите внимание, что домашний каталог jenkins может находиться в /var/jenkins_home или /var/lib/jenkins или в другом месте.

Объяснение выше удивительно. Он охватывает различные способы очистки истории, рабочих мест и т. Д.

Просто идея, основанная на вышеизложенном: оберните инструкции командной строки для удаления заданием Jenkins и параметризируйте номера сборок, например, укажите CSV в параметре задания и проанализируйте его в сценарии оболочки, связанном с заданием, для удаления целевых сборок., И / или добавьте параметр флажка DELETE_ALL_BUILDS и отметьте его с помощью оператора IF в сценарии - если он выбран, удалите все сборки. Вы также можете параметризовать имя задания, например, предоставить параметр с именем JOB_NAME и интерполировать значение в сценарии, например:

rm -rf jobs/${JOB_NAME}/builds/${BUILD_NUM}*
      # cd to your Jenkins install directory with the userid that has "permissions"

sudo bash     ( if you have to )

# My installation is like this, so go wherever you placed yours:

cd /reps/jenkins/home/jobs/TestPlaywrightSuite/builds 

# Touch these two files to exclude from the auto search below
#   but since these are regular files, they should be excluded from
#   the find command anyway
touch permalinks
touch legacyids

# find directories older than 7 days and delete on one command

find . -type d -mtime +7 -exec rm -rf {} \;

Для выполнения этой задачи вы должны быть администратором Jenkins. Ниже приведен пример задания Дженкинса 305.

  • Откройте Jenkins → выберите ветку, которую нужно удалить → выберите «История сборки».
  • Опция «История сборки» → выберите красный кружок сборки с ошибкой (# 305).
        
  • Ошибка задания Jenkins → выберите «Удалить сборку»:
        
  • Подтверждающее сообщение перед удалением → Выберите «Да», чтобы удалить.
        
Другие вопросы по тегам