Tous les produits
Search
Centre de documentation

CloudFlow:Étape d'échec

Dernière mise à jour :Aug 26, 2026

Cette rubrique décrit l'étape d'échec et fournit des exemples d'utilisation.

Introduction

Une étape d'échec interrompt prématurément une séquence d'étapes. Elle s'apparente aux instructions telles que raise ou throw dans les langages de programmation. Lorsqu'un flux exécute une étape d'échec, il n'exécute pas les étapes suivantes. L'étape d'échec fait échouer son étape parente. Cet échec se propage vers le haut, ce qui provoque finalement l'échec de l'intégralité du flux.

Une étape d'échec possède les propriétés suivantes :

  • (Obligatoire) type : type de l'étape. La valeur doit être fail.

  • (Obligatoire) name : nom de l'étape.

  • (Facultatif) error : type de l'erreur.

  • (Facultatif) cause : raison de l'erreur.

  • (Facultatif) inputMappings : mappages d'entrée.

  • (Facultatif) outputMappings : mappages de sortie.

Exemple

La définition de flux suivante utilise une étape d'échec pour terminer prématurément l'exécution du flux.

  • Si la valeur de status dans l'entrée est ready, le flux exécute l'étape pass1 dans la première branche de choix, puis l'étape final.

  • Si la valeur de status dans l'entrée est failed, le flux suit l'instruction goto de la deuxième branche de choix et exécute l'étape handle_failure. Comme handle_failure est une étape d'échec, le flux n'exécute pas l'étape final après handle_failure.

  • Si l'entrée ne contient pas status, ou si la valeur de status n'est ni ready ni failed, le flux exécute les étapes par défaut, à savoir pass2 et handle_failure.

version: v1
type: flow
steps:
  - type: choice
    name: mychoice
    choices:
      - condition: $.status == "ready"
        # choice with steps
        steps:
          - type: pass
            name: pass1
        goto: final
      - condition: $.status == "failed"
        goto: handle_failure
    default:
      # no need to use goto
      steps:
        - type: pass
          name: pass2
  - type: fail
    name: handle_failure
    error: StatusIsNotReady
    cause: status is not ready
  - type: pass
    name: final