Mode d'exécution des étapes

Dans une définition d'étape, la propriété de commande contient des commandes de système d'exploitation, des commandes point ou une combinaison des deux.

Vous pouvez exécuter plusieurs commandes dans une étape individuelle. Séparez les commandes individuelles en les plaçant sur différentes lignes.
Remarque : Lorsque vous utilisez le paramètre par défaut Code de sortie pour la propriété Résultat de votre étape, le code de sortie renvoyé par la dernière commande de l'étape détermine la réussite ou l'échec de toute l'étape. Pour détecter un échec dans l'une des commandes, créez un filtre de journal et indiquez son utilisation dans la propriété Résultat.

Avant que le système n'exécute une étape, il crée son environnement. Les variables sont définies à l'aide des valeurs spécifiées dans les environnements du serveur, du projet et de l'étape. Voir Héritage de l'environnement. Par défaut, ces variables sont analysées puis prêtes à être utilisées dans les commandes. Voir Interprétation des variables dans les étapes.

Définition d'un interpréteur de commandes

Vous pouvez utiliser la configuration #! afin de spécifier l'interpréteur de commandes à utiliser pour exécuter les commandes. Cette opération fonctionne dans les systèmes Windows®, Linux® et UNIX® (l'agent Windows prend en charge la transmission des commandes à l'interpréteur indiqué). Pour envoyer les commandes de votre étape vers une copie de langage Perl dans C:\perl\bin sous Windows, utilisez #!C:\perl\bin\perl.exe. Si vous utilisez l'agent Windows avec Cygwin mais si vous avez besoin de diriger une commande vers l'interpréteur de commandes Windows cmd.exe, vous pouvez utiliser la ligne suivante qui bénéficie des chemins d'accès implicites de Windows :

#!cmd.exe /C

Notez que l'option /C est nécessaire pour cmd.exe, sinon il attend des commandes supplémentaires après avoir reçu vos commandes d'étape. Vous pouvez utiliser la commande #!/bin/perl sur une machine UNIX ou Linux.

Remarque : Lorsque vous utilisez la commande #! sous Linux ou UNIX, le système n'accède pas au répertoire standard par défaut (le chemin d'accès créé à partir de la combinaison du chemin d'accès du serveur, du projet, du nom et de la zone de chemin d'accès de l'étape) car il ne peut pas prévoir la syntaxe requise ; vous devez inclure votre propre commande de modification du répertoire. Pour ce faire, utilisez des variables d'environnements spéciales créées par le système telles que BF_SERVER_ROOT et BF_PROJECTNAME_PHYS.

Séparation d'une étape en parties par le système

Rational® Build Forge® sépare une étape en parties, chaque partie étant constituée d'un ensemble de commandes de système d'exploitation ou d'une commande point unique. Par exemple, l'étape suivante comporte six parties.

cmd1        # Partie 1
cmd2
.dot_cmd1   # Partie 2
cmd3        # Partie 3
cmd4
.dot_cmd2   # Partie 4
.sleep 30   # Partie 5
.dot_cmd3   # Partie 6

Les parties de l'étape s'exécutent dans l'ordre. L'environnement de chaque partie est transmis à la partie suivante. Lorsqu'une erreur se produit dans une partie, le traitement s'interrompt immédiatement.

Les éditions précédentes exigeaient que chaque partie provenant de l'étape au-dessus soit une étape unique.

Remarque : Ne créez pas de références entre les parties. Ne créez pas de sauts entre les parties, comme utiliser par exemple GOTO dans une partie et son étiquette de destination dans une autre partie.

Feedback