CreateWorkflow - Amazon Transfer Family
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

CreateWorkflow

允许您使用文件传输完成后工作流调用的指定步骤和步骤详细信息创建工作流。创建工作流后,您可以通过在 CreateServerUpdateServer 操作中指定 workflow-details 字段将创建的工作流与任何传输服务器相关联。

请求语法

{ "Description": "string", "OnExceptionSteps": [ { "CopyStepDetails": { "DestinationFileLocation": { "EfsFileLocation": { "FileSystemId": "string", "Path": "string" }, "S3FileLocation": { "Bucket": "string", "Key": "string" } }, "Name": "string", "OverwriteExisting": "string", "SourceFileLocation": "string" }, "CustomStepDetails": { "Name": "string", "SourceFileLocation": "string", "Target": "string", "TimeoutSeconds": number }, "DecryptStepDetails": { "DestinationFileLocation": { "EfsFileLocation": { "FileSystemId": "string", "Path": "string" }, "S3FileLocation": { "Bucket": "string", "Key": "string" } }, "Name": "string", "OverwriteExisting": "string", "SourceFileLocation": "string", "Type": "string" }, "DeleteStepDetails": { "Name": "string", "SourceFileLocation": "string" }, "TagStepDetails": { "Name": "string", "SourceFileLocation": "string", "Tags": [ { "Key": "string", "Value": "string" } ] }, "Type": "string" } ], "Steps": [ { "CopyStepDetails": { "DestinationFileLocation": { "EfsFileLocation": { "FileSystemId": "string", "Path": "string" }, "S3FileLocation": { "Bucket": "string", "Key": "string" } }, "Name": "string", "OverwriteExisting": "string", "SourceFileLocation": "string" }, "CustomStepDetails": { "Name": "string", "SourceFileLocation": "string", "Target": "string", "TimeoutSeconds": number }, "DecryptStepDetails": { "DestinationFileLocation": { "EfsFileLocation": { "FileSystemId": "string", "Path": "string" }, "S3FileLocation": { "Bucket": "string", "Key": "string" } }, "Name": "string", "OverwriteExisting": "string", "SourceFileLocation": "string", "Type": "string" }, "DeleteStepDetails": { "Name": "string", "SourceFileLocation": "string" }, "TagStepDetails": { "Name": "string", "SourceFileLocation": "string", "Tags": [ { "Key": "string", "Value": "string" } ] }, "Type": "string" } ], "Tags": [ { "Key": "string", "Value": "string" } ] }

请求参数

有关由所有操作共享的参数的信息,请参阅Common Parameters (常用参数)。

请求接受采用 JSON 格式的以下数据。

Description

工作流的文本描述。

类型:字符串

长度限制:最大长度为 256。

模式:^[\w- ]*$

必需:否

OnExceptionSteps

指定在工作流执行期间遇到错误时要采取的步骤(措施)。

注意

对于自定义步骤,lambda 函数需要发送FAILURE到回调 API 以启动异常步骤。此外,如果 lambda 在超时SUCCESS之前没有发送,则会执行异常步骤。

类型:WorkflowStep 对象数组

数组成员:最多 15 项。

必需:否

Steps

指定所指定工作流中步骤的详细信息。

TYPE指定要为此步骤采取以下哪些操作。

  • COPY-将文件复制到另一个位置。

  • CUSTOM-使用Amazon Lambda函数目标执行自定义步骤。

  • DECRYPT-解密上传前已加密的文件。

  • DELETE-删除该文件。

  • TAG-为文件添加标签。

注意

目前,只有 S3 支持复制和标记。

对于文件位置,您可以指定 Amazon S3 存储桶和密钥,或指定 Amazon EFS 文件系统 ID 和路径。

类型:WorkflowStep 对象数组

数组成员:最多 15 项。

必需:是

Tags

可用于分组和搜索工作流的键值对。标签是出于任何目的附加到工作流的元数据。

类型:Tag 对象数组

数组成员:最少 1 项。最多 50 项。

必需:否

响应语法

{ "WorkflowId": "string" }

响应元素

如果此操作成功,则该服务将会发送回 HTTP 200 响应。

服务以 JSON 格式返回的以下数据。

WorkflowId

工作流的唯一标识符。

类型:字符串

长度限制:固定长度为 19。

模式:^w-([a-z0-9]{17})$

错误

有关所有操作常见错误的信息,请参阅常见错误

AccessDeniedException

您没有足够的访问权限,无法执行该操作。

HTTP 状态代码:400

InternalServiceError

当 Transfer Family 服务中发生错误时,会Amazon引发此异常。

HTTP 状态代码:500

InvalidRequestException

当客户端提交格式错误的请求时,会引发此异常。

HTTP 状态代码:400

ResourceExistsException

请求的资源不存在。

HTTP 状态代码:400

ServiceUnavailableException

由于 Transfer FamAmazon ily 服务不可用,请求失败。

HTTP 状态代码:500

ThrottlingException

由于请求限制而导致请求被拒绝。

HTTP 状态代码:400

示例

示例

您可以将工作流步骤信息保存到文本文件中,然后使用该文件创建工作流,如下例所示。以下示例假设您已将工作流步骤保存到 example-file.json (在运行该命令的同一文件夹中),并且您希望在弗吉尼亚北部(us-east-1)区域中创建工作流。

aws transfer create-workflow --description "example workflow from a file" --steps file://example-file.json --region us-east-1

另请参阅

有关在特定语言的 Amazon 软件开发工具包中使用此 API 的更多信息,请参阅以下内容: