Jenkins - simplement robocopy dans Jenkins finitions marques de construire à l'échec
J'ai simplement windows commande de traitement par lots (robocopy) qui renvoie zéro erreurs, mais est toujours marqué comme un échec dans Jenkins. Je voudrais savoir pourquoi?
D:\Jenkins\jobs\Jenkins Config Backup\espace de travail>exit 1
Étape de génération 'Exécuter Windows commande de traitement par lots" marqué construire comme un échec
Fini: l'ÉCHEC
Vous devez vous connecter pour publier un commentaire.
robocopy retourne un bit carte
Pour plus de détails voir ici: http://ss64.com/nt/robocopy-exit.html
En résumé: Tous les codes de sortie jusqu'à '3' sont très bien.
C'est le fichier batch de code que j'utilise habituellement:
Vous pouvez aussi faire un "goto" et pas de sortie.
Jenkins marque un construire en échec lorsque l'existence du code d'un script batch n'est pas 0. Si robocopy est la dernière commande dans le script, la robocopy code de sortie seront prises.
Robocopy ne pas se conformer à la norme d'un code de sortie, puis d'autres à 0 signifie un échec lors de la construction. Vous devez évaluer la robocopy code de sortie et à la fin de votre script avec
exit 0
ouexit 1
en fonction de la réussite de robocopy.Ont un look à la robocopy codes de sortie.
exit 0
à la fin du script. Depuis l'instruction if vous avez utilisé, sera vrai si ERRORLEVEL est 1 ou plus gros. Vous devriez avoir la déclaration suivante au-dessus d'elleif ERRORLEVEL 4 exit 1
.Mise à jour de cette question pour jenkins canalisations - ce qui fonctionne pour moi:
Sinon, vous pouvez consulter la Opérations Sur Les Fichiers Du Plugin