状态机版本 - Amazon Step Functions
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

状态机版本

版本 是状态机快照,带编号且不可变。您可以从该状态机的最新修订版开始发布版本。每个版本都具有唯一的 Amazon 资源名称 (ARN)。此 ARN 是状态机 ARN 和版本号的组合,用冒号 (:) 分隔。以下示例显示状态机版本 ARN 的格式。

arn:partition:states:region:account-id:stateMachine:myStateMachine:1

要开始使用状态机版本,必须发布第一个版本。发布版本后,您可以使用版本 ARN 调用 StartExecutionAPI 操作。您无法编辑版本,但可以更新状态机并发布新版本。您也可以发布多个状态机版本。


            状态机定义的版本。更新状态机时,它会创建一个新的状态机修订版。您可以从一个修订版中发布一个状态机版本。

发布状态机的新版本时,Step Functions 会为其分配一个版本号。版本号从 1 开始,每个新版本都会单调递增。对于给定的状态机,版本号不会重复使用。如果您删除了状态机的版本 10,然后发布了新版本,Step Functions 会将其发布为版本 11。

状态机的所有版本的以下属性都相同:

  • 状态机的所有版本共享相同的类型(标准或快速)

  • 您无法更改不同版本之间状态机的名称或创建日期。

  • 标签全局适用于状态机。您可以使用TagResourceUntagResourceAPI 操作管理状态机的标签。

状态机还包含作为每个版本和revision一部分的属性,但这些属性在两个给定版本或修订版之间可能不同。这些属性包括状态机定义IAM 角色跟踪配置日志配置

发布状态机版本(控制台)

您最多可以发布 1000 个版本的状态机。要请求提高此软限制,请使用 Amazon Web Services Management Console中的支持中心页面。您可以从控制台手动删除未使用的版本,也可以通过调用 DeleteStateMachineVersionAPI 操作来删除未使用的版本。

发布状态机版本的操作步骤
  1. 打开 Step Functions 控制台,然后选择一个现有的状态机。

  2. 状态机详细信息页面上,选择编辑

  3. 根据需要编辑状态机定义,然后选择保存

  4. 选择发布版本

  5. (可选)在出现的对话框的描述字段中,输入有关状态机版本的简短描述。

  6. 选择发布

注意

发布状态机的新版本时,Step Functions 会为其分配一个版本号。版本号从 1 开始,每个新版本都会单调递增。对于给定的状态机,版本号不会重复使用。如果您删除了状态机的版本 10,然后发布了新版本,Step Functions 会将其发布为版本 11。

使用 Step Functions API 操作管理版本

Step Functions 提供了以下 API 操作来发布和管理状态机版本:

myStateMachine使用发布名为的状态机的当前版本中的新版本 Amazon Command Line Interface,请使用以下publish-state-machine-version命令:

aws stepfunctions publish-state-machine-version --state-machine-arn arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine

该响应返回 stateMachineVersionArn。例如,前面的命令返回的响应为 arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine:1

注意

发布状态机的新版本时,Step Functions 会为其分配一个版本号。版本号从 1 开始,每个新版本都会单调递增。对于给定的状态机,版本号不会重复使用。如果您删除了状态机的版本 10,然后发布了新版本,Step Functions 会将其发布为版本 11。

从控制台运行状态机版本

要开始使用状态机版本,必须先从当前状态机revision中发布一个版本。要发布版本,请使用 Step Functions 控制台或调用 PublishStateMachineVersionAPI 操作。您还可以使用名为的可选参数来调用 UpdateStateMachineAliasAPI 操作publish来更新状态机并发布其版本。

您可以使用控制台或调用 StartExecutionAPI 操作并提供版本 ARN 来开始执行某个版本。您也可以使用别名开始执行某个版本。别名会根据其路由配置,会将流量路由到特定版本。

如果不使用版本就启动状态机执行,Step Functions 将使用状态机的最新版本进行执行。有关 Step Functions 如何将执行与版本关联的信息,请参阅将执行与版本或别名关联

使用一个状态机版本启动执行
  1. 打开 Step Functions 控制台,然后选择已为其发布一个或多个版本的现有状态机。要了解如何发布版本,请参阅发布状态机版本(控制台)

  2. 状态机详细信息页面上,选择版本选项卡。

  3. 设置部分,执行以下操作:

    1. 选择要启动执行的版本。

    2. 选择启动执行

  4. (可选)在启动执行对话框中,输入执行名称。

  5. (可选),输入执行输入,然后选择启动执行