failed-step
Retourne le résultat de l'étape d’exécution échouée. Il est recommandé d'utiliser cette fonction lorsque vous gérez des erreurs avec des blocs protégés, tel que décrit dans Gérer les erreurs d’étape. La fonction failed-step doit faire partie du gestionnaire « Sur erreur », sinon l'étape à laquelle vous vous trouvez échouera parce qu'il n'y a pas d'étape erronée.
Cette fonction renvoie une valeur de type result qui représente le résultat d’une étape erronée. Pour trouver les attributs du result, passer cette fonction en tant qu'argument des fonctions comme stdout ou stderr, par exemple :
stderr(failed-step()) stdout(failed-step()) |
Utiliser stderr ou stdout dépend du fait si l’étape échouée renvoie l’information d’erreur dans l’erreur standard ou les streams de sortie standard, respectivement.
Signature
failed-step() -> result |
Exemples
La tâche illustrée ci-dessous utilise la gestion d’erreur pour qu’elle se qualifie pour un appel à la fonction failed-step. La première étape d’exécution tente d’exécuter une commande shell qui est fournie comme paramètre d’entrée de la tâche. Si la commande échoue avec une erreur, le gestionnaire « On error » sera exécuté. La première et seule étape du gestionnaire « On Error »appelle une erreur en gérant la sous-tâche qui a été créée et est discutée ci-dessous.
Bien que vous pouvez configurer une gestion d’erreur de manière différente, la sous-tâche de la gestion d’erreur dans cet exemple prend deux paramètres d’entrée :
1.inputResult - la sortie de la fonction de failed-step, de type result.
2.workingDirectory - le répertoire dans lequel le fichier journal contenant les détails d’erreur seront écrits.
La sous-tâche de la gestion d’erreur a l’aspect suivant :
L’étape d’exécution ci-dessus invoque la fonction copy afin de créer un fichier appelé error.log dans le répertoire de travail de la tâche. L’expression de la zone de texte Source fait la chose suivante :
1.La fonction d’expression stderr convertit l’erreur standard fournie par inputResult vers un stream. Tel que mentionné ci-dessus, dans quelques cas, vous allez devoir avoir besoin d’utiliser stdout à la place de stderr. Les deux stdout et stderr prennent une valeur de type result comme argument. C’est exactement le type de renvoi produit par la fonction failed-step (qui, dans cet exemple, était appelé tâche principale).
2.La fonction as-file convertit le stream vers un fichier et l’écrit sur le disque. Le chemin du fichier est relatif par rapport au répertoire de travail.
Pour plus d'exemples, voir :