【问题标题】:AWS Step Functions SDK: State type `Choice` does not support method `next`AWS Step Functions SDK:状态类型`Choice`不支持方法`next`
【发布时间】:2021-01-29 21:43:04
【问题描述】:

我有一个带有选择状态的工作流,它检查某个变量,如果满足条件,它会再次启动上一步,如果不满足,则进入下一步。

import stepfunctions

first_job = stepfunctions.steps.Pass('First job')
second_job = stepfunctions.steps.Pass('Second job')

check = stepfunctions.steps.Choice('Check first job')
check.add_choice(
    rule=stepfunctions.steps.ChoiceRule.BooleanEquals(
        variable='$run_me_again',
        value=True
    ),
    next_step=first_job
)
check.default_choice(second_job) # This could be set automatically

chain = stepfunctions.steps.Chain([first_job, check, second_job])

最后一行想要链接不同的步骤,以便我们可以将其转换为工作流,但这一行引发了错误:

ValueError: ... , State type `Choice` does not support method `next`.

为什么这会引发错误?在选择状态之后有下游任务是有意义的。

我从here得到了例子

【问题讨论】:

    标签: amazon-web-services aws-step-functions


    【解决方案1】:

    选择状态不支持 End 字段。此外,他们仅在其 Choices 字段中使用 Next。

    您也可以使用“默认”:如果未采用 Choices 中的任何转换,则转换到的状态名称。

    https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-choice-state.html

    【讨论】:

      猜你喜欢
      • 2022-09-13
      • 2020-09-05
      • 1970-01-01
      • 2021-11-25
      • 1970-01-01
      • 1970-01-01
      • 2018-09-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多