jenkinsci / jenkinsci/workflow-basic-steps-plugin
[JENKINS-52578] retry clause causes multiplication
- Lingua principale
- Java
- Stelle
- 73
- Fork
- 129
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Just discovered by accident, if a retry step happens, it produces some odd results:
def NuGetStore = "packages"
...
stage ('SonarQube') {
when { expression { Settings.Analyse } }
steps {
script {
retry(3) {
bat "${Tools.NuGet.Run} install -ExcludeVersion -Source \"${Tools.Sonar.Source}\" -OutputDirectory ${NuGetStore} ${Tools.Sonar.Package}"
Tools.Sonar.Run = new File (NuGetStore, Tools.Sonar.Run).toString()
bat "${Tools.Sonar.Run} ${Tools.Sonar.Version}"
}
}
}
}
with each retry pass it multiplies value of NuGetStore variable, see:

---
Originally reported by quas, imported from: retry clause causes multiplication
Raw content of original issue
Just discovered by accident, if a retry step happens, it produces some odd results:
def NuGetStore = "packages"
...
stage ('SonarQube') {
when { expression { Settings.Analyse } }
steps {
script {
retry(3) {
bat "${Tools.NuGet.Run} install -ExcludeVersion -Source \"${Tools.Sonar.Source}\" -OutputDirectory ${NuGetStore} ${Tools.Sonar.Package}"
Tools.Sonar.Run = new File (NuGetStore, Tools.Sonar.Run).toString()
bat "${Tools.Sonar.Run} ${Tools.Sonar.Version}"
}
}
}
}with each retry pass it multiplies value of NuGetStore variable, see:
1 attachment
- [image-2018-07-16-12-36-44-190.png](https://issues.jenkins.io/secure/attachment/43415/image-2018-07-16-12-36-44-190.png)
> 
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia con il passaggio retry nell’esempio di Jenkins Pipeline fornito e riproduci il comportamento usando l’assegnazione NuGetStore e il blocco retry(3) mostrati. Determina perché il valore della variabile viene moltiplicato tra i passaggi di retry; il lavoro è completato quando i tentativi ripetuti non modificano più inaspettatamente il valore e questo esempio è coperto.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- groovy
- Ambito
- ci-cd
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 35/100