Я использую Jenkins и Gradle для создания своего java-проекта.
Каждый раз, когда я создаю свой проект, я получаю новый номер сборки на экране Jenkins.
Ниже приводится информация о моей сборке Jenkins:
Success > Console Output #96 03-Jan-2014 15:35:08
Success > Console Output #95 03-Jan-2014 15:27:29
Failed > Console Output #94 03-Jan-2014 15:26:16
Failed > Console Output #93 03-Jan-2014 15:25:01
Failed > Console Output #92 03-Jan-2014 15:23:50
Success > Console Output #91 03-Jan-2014 12:42:32
Success > Console Output #90 03-Jan-2014 12:02:45
Я хочу сбросить номер сборки Jenkins, например:
Success > Console Output #1 03-Jan-2014 12:02:45
Как я могу сбросить номер сборки в Jenkins?
java -jar jenkins-cli.jar -s https://jenkins.example.com groovysh \ 'jenkins.instance.getItemByFullName("job-name").updateNextBuildNumber(1021)'
echo "deleting all builds of ${jobName}" item = Jenkins.instance.getItemByFullName("${jobName}") for (build in item.builds){ build.delete(); } item.updateNextBuildNumber(1)
/var/lib/jenkins/jobs/
Linux и в названии директории есть точное название работыОт сюда
источник
источник
Если вы хотите установить номер следующей сборки, для этого есть плагин NextBuildNumber. Но в вашем случае это не сработает, потому что номер сборки, который вам нужен, равный 1, меньше вашего текущего номера сборки.
Здесь нужно сначала стереть все предыдущие сборки. Вы можете сделать это, запустив этот простой скрипт Перейти -> Управление Jenkins -> Консоль скрипта
Теперь вы можете установить номер следующей сборки на 1 и запустить сборку. Он начнется с 1 . :) Это так просто.
Обновление - у Jenkins теперь есть плагин Purge Job History, чтобы сделать это самым простым способом. Посетите страницу для получения более подробной информации - https://wiki.jenkins.io/display/JENKINS/Purge+Job+History+Plugin
источник
Чтобы в целом сбросить номер сборки на
N
(гдеN
не обязательно 1):buildNumber >= N
.Program Files (x86)/Jenkins/jobs/yourjob/nextBuildNumber
. Установите номер, который он содержитN
.Manage Jenkins -> Reload Configuration from Disk
.источник
Продолжая принятый ответ, вот как это сделать для всех проектов сразу:
источник
Как продолжение отличного ответа @ antweiss, мы можем пойти дальше ...
Нет необходимости удалять полную историю сборки, если вы не хотите, вы можете просто откатить время до предыдущей точки:
Если вы хотите фиктивный бежать, чтобы проверить , что он собирается делать, не на самом деле делать это, просто закомментируйте
build.delete()
иitem.updateNextBuildNumber(resetNumberTarget)
строки и раскомментировать различные команды печати.Документация: Подробную информацию об этих объектах найти было трудно, но я идентифицировал следующее:
item
это FreeStyleProject (или, возможно, просто любой тип абстрактного проекта ?)build
выглядит как Run , таким образом раскрывая свойство number и наследуя метод delete () от Jobисточник
Вы можете использовать либо
nexBuildNumber
плагин, либо просто изменитьnexBuildNumber
файл, чтобы сбросить номер сборки. Ниже приведены шаги, которые вам необходимо выполнить:.jenkins/Jobs/<YourJobName>/build/
, сделайте резервную копию этой папки (если вам нужно для будущего использования) и удалите папку сборки .nextBuildNumber
файл в каталоге вашего задания.источник
Я нашел простой способ сделать это.
Jenkins использует предыдущую сборку для определения следующего номера сборки. Если номер сборки, который вы вводите, ниже, чем номер предыдущей сборки, Jenkins автоматически увеличит номер сборки до большего, чем в предыдущей сборке. Итак, мы просто
источник
Используйте плагин Purge Job History (Jenkins> = 2.176.1)
https://plugins.jenkins.io/purge-job-history/
источник
Чтобы сбросить номера сборок всех заданий:
источник