2016-01-28 3 views
0

J'ai un problème avec la tâche passionnante avec la commande de type qui renvoient les différents codes de sortie qui est sens réellement le succès, tandis que Atlassian Bamboo est de voir à 0 comme un succès et tout d'autre comme ayant échoué.Puis-je faire Atlassian Bamboo d'accepter un code de retour différent de 0 comme un succès

J'essaye d'exécuter la commande robocopy qui 0, 1 et 2 signifiant (ou même dans quelques cas 4) rien que son succès avec quelques notes. Voir la doc: http://ss64.com/nt/robocopy-exit.html

Mon exemple ici, je tht tâche de Cmd exécuter Robocopy avec l'argument suivant:

. c:\inetpub\CIVEBuildCentral\UI\. /IS /S /XD node_modules 

Comment je peux faire accepter un autre code plutôt que 0?

Répondre

1

J'ai trouvé une solution facile simple pour ceci:

Je viens de remplacer la tâche avec la nouvelle tâche de type Script et Conservé emplacement de script comme Inline et dans le Script Body j'ai écrit les codes simples suivants:

Robocopy . c:\inetpub\CIVEBuildCentral\UI\. /IS /S /XD node_modules 
IF %ERRORLEVEL% LEQ 4 exit /B 0 

Dans ce cas, si le code de sortie est inférieur ou égal scénario 4 I force pour le faire revenir 0 qui est un succès.

Vous pouvez faire plus de code pour gérer les autres codes de sortie comme REM messages et les faire revenir 0 ou 1.

Modifier: Si vous utilisez Linux: pour les codes d'erreur de poignée comme dans cet exemple la condition if sera comme:

if [$? le 4] 
    then 
    exit 0 
fi