J'utilise Jenkins et Gradle pour construire mon projet java.
Chaque fois que je construis mon projet, j'obtiens un nouveau numéro de build sur l'écran Jenkins.
Voici mes informations de compilation 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
Je veux réinitialiser le numéro de build Jenkins comme:
Success > Console Output #1 03-Jan-2014 12:02:45
Comment puis-je réinitialiser le numéro de build dans 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/
sur Linux et le nom du répertoire il y a le nom exact du travailD' ici
la source
la source
Si vous voulez définir le prochain numéro de build, il existe le plugin "NextBuildNumber" pour cela. Mais cela ne fonctionnera pas dans votre cas car le numéro de build dont vous avez besoin, qui est 1, est inférieur à votre numéro de build actuel.
Ici, il faut d'abord effacer toutes les versions précédentes. Vous pouvez le faire en exécutant ce script simple Allez dans -> Gérer Jenkins -> Console de script
Vous pouvez maintenant définir le numéro de build suivant sur 1 et exécuter la build. Il commencera par 1 . :) C'est si simple.
Mise à jour - Jenkins a maintenant un plugin Purge Job History pour le faire de la manière la plus simple. Consultez la page pour plus de détails - https://wiki.jenkins.io/display/JENKINS/Purge+Job+History+Plugin
la source
Pour réinitialiser plus généralement votre numéro de build à
N
(oùN
n'est pas nécessairement 1):buildNumber >= N
.Program Files (x86)/Jenkins/jobs/yourjob/nextBuildNumber
. Définissez le numéro qu'il contientN
.Manage Jenkins -> Reload Configuration from Disk
.la source
En développant la réponse acceptée, voici comment le faire pour tous les projets à la fois:
la source
En prolongement de l'excellente réponse de @ antweiss, nous pouvons en fait aller plus loin ...
Il n'est pas nécessaire de supprimer l'historique de construction complet, si vous ne le souhaitez pas, vous pouvez simplement revenir en arrière, à un point antérieur:
Si vous voulez une course factice, pour vérifier ce qu'il va faire, sans le faire réellement, il suffit de mettre les
build.delete()
etitem.updateNextBuildNumber(resetNumberTarget)
lignes et décommentez les différentes commandes d'impression.Documentation: les détails de ces objets étaient difficiles à trouver, mais j'ai identifié les éléments suivants:
item
est un FreeStyleProject (ou peut-être n'importe quel type de projet abstrait ?)build
semble être une course , exposant ainsi un nombre propriété et inheritting une suppression () méthode de travailla source
Vous pouvez utiliser un
nexBuildNumber
plug-in ou simplement modifier lenexBuildNumber
fichier pour réinitialiser le numéro de version. Voici les étapes à suivre:.jenkins/Jobs/<YourJobName>/build/
, sauvegardez ce dossier (si vous en avez besoin pour une utilisation future) et supprimez le dossier de construction .nextBuildNumber
fichier dans votre répertoire de tâches.la source
J'ai trouvé un moyen simple de le faire.
Jenkins utilise la build précédente pour déterminer le numéro de build suivant, si le numéro de build que vous entrez est inférieur au numéro de build précédent, Jenkins augmentera automatiquement votre numéro de build à un niveau supérieur à celui de la build précédente. Alors ici nous venons
la source
Utiliser le plugin Purge Job History (Jenkins> = 2.176.1)
https://plugins.jenkins.io/purge-job-history/
la source
Pour réinitialiser les numéros de build de tous les travaux:
la source