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

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

使用 Application Composer 中的 Workflow Studio

Amazon 应用程序编辑器 是一个可视化生成器,可帮助您使用简单的图形界面开发 Amazon SAM 和 Amazon CloudFormation 模板。借助 Application Composer,您可以通过在可视化画布中拖动、分组以及连接 Amazon Web Services来设计应用程序架构。然后,Application Composer 会根据您的设计创建基础设施即代码 (IaC) 模板,您可以使用该模板通过 Amazon SAM 命令行界面 (Amazon SAM CLI) 或 CloudFormation 部署应用程序。要了解有关 Application Composer 的更多信息,请参阅什么是 Application Composer

Application Composer 中提供的 Workflow Studio 旨在帮助您设计和构建工作流。Application Composer 中的 Workflow Studio 提供一个视觉 IaC 环境,可让您轻松地将工作流整合到使用 CloudFormation 模板等 IaC 工具构建的无服务器应用程序中。当您在 Application Composer 中使用 Workflow Studio 时,它会将各个工作流步骤连接到 Amazon 资源,并在 Amazon SAM 模板中生成资源配置。它还会添加工作流运行所需的 IAM 权限。使用 Application Composer 中的 Workflow Studio,您可以创建应用程序原型,并将其转化为生产就绪的应用程序。

使用 Application Composer 中的 Workflow Studio 时,您可以在 Application Composer 画布和 Workflow Studio 之间来回切换。

使用 Application Composer 中的 Workflow Studio 构建无服务器工作流

  1. 打开 Application Composer 控制台,然后选择创建项目来创建项目。

  2. 资源选项板的搜索字段中输入 state machine

  3. Step Functions 状态机资源拖到画布上。

  4. 选择在 Workflow Studio 中编辑,以编辑状态机资源。

    为编辑在 Application Composer 中创建的状态机资源而与 Workflow Studio 的集成仅适用于 AWS::Serverless::StateMachine 资源。此集成不适用于使用 AWS::StepFunctions::StateMachine 资源的模板。

在 Workflow Studio 中使用 CloudFormation 定义替换项动态引用资源

在 Workflow Studio 中,您可以在工作流定义中使用 CloudFormation 定义替换项来动态引用您在 IaC 模板中定义的资源。您可以使用 ${dollar_sign_brace} 表示法向工作流定义中添加占位符替换项,在 CloudFormation 堆栈创建过程中,它们会替换为实际值。有关定义替换项的更多信息,请参阅 DefinitionSubstitutions 在Amazon SAM模板中

将服务集成任务连接到增强型组件卡

您可以在 Application Composer 画布中将调用优化的服务集成的任务连接到增强型组件卡。这样做会自动映射工作流定义中通过 ${dollar_sign_brace} 表示法指定的任何占位符替换项和 StateMachine 资源的 DefinitionSubstitution 属性。它还会为状态机添加适当的 Amazon SAM 策略。

如果您映射优化的服务集成任务与标准组件卡,则 Application Composer 画布上不会显示连接线。

您无法将处于 Task 状态的 Amazon SDK 集成与增强型组件卡连接,也无法将优化的服务集成与标准组件卡连接。对于这类任务,您可以在 Application Composer 画布的资源属性面板中映射替换项,并在 Amazon SAM 模板中添加策略。

提示

或者,您也可以在资源属性面板的定义替换项下为状态机映射占位符替换项。执行此操作时,您必须针对 Task 状态调用的 Amazon Web Service,为状态机执行角色添加必需的权限。有关执行角色可能需要的权限的信息,请参阅 Workflow Studio 中的执行角色

以下动画显示了如何在资源属性面板中手动更新占位符替换项映射。

一个动画,演示了使用 Application Composer 中的 Workflow Studio 时,如何在资源属性面板中手动更新占位符替换项映射。

导入现有项目并在本地同步它们

您可以在 Application Composer 中打开现有 CloudFormation 和 Amazon SAM 项目,直观查看,以便更好地了解,而且可以修改其设计。使用 Application Composer 的本地同步功能,您可以自动同步模板和代码文件,并将其保存到本地构建机器上。使用本地同步模式可以对您现有的开发流形成补充。请确保您的浏览器支持 File System Access API,它允许 Web 应用程序在本地文件系统中读取、写入和保存文件。我们建议使用 Google Chrome 或 Microsoft Edge。

Amazon 应用程序编辑器 中不可用的 Workflow Studio 功能

当您在 Application Composer 中使用 Workflow Studio 时,某些 Workflow Studio 功能不可用。此外,Inspector 面板中的 API 参数部分支持 CloudFormation 定义替换项。您可以在代码模式中使用 ${dollar_sign_brace} 表示法添加替换项。有关此表示法的更多信息,请参阅 DefinitionSubstitutions 在Amazon SAM模板中

以下列表说明了在 Application Composer 中使用 Workflow Studio 时不可用的 Workflow Studio 功能:

  • 入门模板 - 入门模板是随时可以运行的示例项目,可自动创建工作流原型和定义。这类模板会将您的项目需要的所有相关 Amazon 资源部署到您的 Amazon Web Services 账户。

  • 配置模式 - 此模式可让您管理状态机的配置。您可以在 IaC 模板中更新状态机配置,也可以使用 Application Composer 画布中的资源属性面板。有关在资源属性面板中更新配置的信息,请参阅 将服务集成任务连接到增强型组件卡

  • TestState API

  • 在 Workflow Studio 中,通过操作下拉按钮导入或导出工作流定义的选项。不过,可以在 Application Composer 菜单中,依次选择打开 > 项目文件夹。请确保您已启用本地同步模式,以自动将 Application Composer 画布中的更改直接保存到本地机器。

  • 执行按钮。当您在 Application Composer 中使用 Workflow Studio 时,Application Composer 会为工作流生成 IaC 代码。因此,您必须先部署模板。然后,在控制台中或通过 Amazon Command Line Interface(Amazon CLI) 运行工作流。