CreateWorkflow - AWS Transfer Family

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

CreateWorkflow

Permite crear un flujo de trabajo con pasos especificados y detalles de pasos que el flujo de trabajo invoca después de que se completa la transferencia de archivos. Después de crear un flujo de trabajo, puede asociarlo con cualquier servidor de transferencia especificando el campo workflow-details en las operaciones CreateServer y UpdateServer.

Sintaxis de la solicitud

{ "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" } ] }

Parámetros de la solicitud

Para obtener información sobre los parámetros comunes a todas las acciones, consulte Parámetros comunes.

La solicitud acepta los siguientes datos en JSON formato.

Description

Descripción del texto del flujo de trabajo.

Tipo: cadena

Limitaciones de longitud: longitud mínima de 0. La longitud máxima es de 256 caracteres.

Patrón: [\w- ]*

Obligatorio: no

OnExceptionSteps

Especifica los pasos (acciones) que se deben seguir si se encuentran errores durante la ejecución del flujo de trabajo.

nota

En el caso de los pasos personalizados, la función Lambda debe FAILURE enviarse a la llamada API para iniciar los pasos de excepción. Además, si la Lambda no se envía SUCCESS antes de que se agote el tiempo de espera, se ejecutan los pasos de excepción.

Tipo: matriz de objetos WorkflowStep

Miembros de la matriz: número mínimo de 0 artículos. La cantidad máxima es de 8 elementos.

Obligatorio: no

Steps

Especifica los detalles de los pasos que están en el flujo de trabajo especificado.

TYPE especifica cuáles de las siguientes acciones se van a realizar para este paso.

  • COPY : copiar el archivo en otra ubicación.

  • CUSTOM- Realice un paso personalizado con un objetivo de AWS Lambda función.

  • DECRYPT : descifrar un archivo que se cifró antes de subir.

  • DELETE : eliminar el archivo.

  • TAG : agregar una etiqueta al archivo.

nota

Actualmente, la copia y el etiquetado solo se admiten en S3.

Para la ubicación del archivo, especifique el depósito y la clave de Amazon S3 o el ID y la ruta del sistema de EFS archivos de Amazon.

Tipo: matriz de objetos WorkflowStep

Miembros de la matriz: número mínimo de 0 artículos. La cantidad máxima es de 8 elementos.

Obligatorio: sí

Tags

Pares clave-valor que se pueden usar para agrupar y buscar flujos de trabajo. Las etiquetas son metadatos asociados a flujos de trabajo para cualquier fin.

Tipo: matriz de objetos Tag

Miembros de la matriz: número mínimo de 1 artículo. Número máximo de 50 artículos.

Obligatorio: no

Sintaxis de la respuesta

{ "WorkflowId": "string" }

Elementos de respuesta

Si la acción se realiza correctamente, el servicio devuelve una respuesta de HTTP 200.

El servicio devuelve los siguientes datos en JSON formato.

WorkflowId

Un identificador único para el flujo de trabajo.

Tipo: cadena

Limitaciones de longitud: longitud fija de 19.

Patrón: w-([a-z0-9]{17})

Errores

Para obtener información acerca de los errores comunes a todas las acciones, consulte Errores comunes.

AccessDeniedException

No tiene acceso suficiente para realizar esta acción.

HTTPCódigo de estado: 400

InternalServiceError

Esta excepción se produce cuando se produce un error en el AWS Transfer Family servicio.

HTTPCódigo de estado: 500

InvalidRequestException

Esta excepción se produce cuando el cliente envía una solicitud con un formato incorrecto.

HTTPCódigo de estado: 400

ResourceExistsException

El recurso solicitado no existe o existe en una región distinta de la especificada para el comando.

HTTPCódigo de estado: 400

ServiceUnavailableException

La solicitud ha fallado porque el servicio AWS Transfer Family no está disponible.

HTTPCódigo de estado: 500

ThrottlingException

La solicitud fue denegada debido a una limitación de la solicitud.

HTTPCódigo de estado: 400

Ejemplos

Ejemplo

Puede guardar la información de los pasos del flujo de trabajo en un archivo de texto y, a continuación, usar ese archivo para crear un flujo de trabajo, como se describe en el siguiente ejemplo. En el siguiente ejemplo, se presupone que guardó los pasos del flujo de trabajo en example-file.json (en la misma carpeta desde la que ejecuta el comando) y que desea crear el flujo de trabajo en la región de Norte de Virginia (us-east-1).

aws transfer create-workflow --description "example workflow from a file" --steps file://example-file.json --region us-east-1
// Example file containing workflow steps [ { "Type": "TAG", "TagStepDetails": { "Name": "TagStep", "Tags": [ { "Key": "name", "Value": "testTag" } ] } }, { "Type": "COPY", "CopyStepDetails": { "Name": "CopyStep", "DestinationFileLocation": { "S3FileLocation": { "Bucket": "DOC-EXAMPLE-BUCKET", "Key": "DOC-EXAMPLE-KEY/" } }, "OverwriteExisting": "TRUE", "SourceFileLocation": "${original.file}" } }, { "Type": "DELETE", "DeleteStepDetails":{ "Name":"DeleteStep", "SourceFileLocation": "${original.file}" } } ]

Ejemplo

La llamada CreateWorkflow devuelve el identificador del flujo de trabajo nuevo.

Respuesta de ejemplo

{ "WorkflowId": "w-1234abcd5678efghi" }

Véase también

Para obtener más información sobre cómo usarlo API en uno de los idiomas específicos AWS SDKs, consulte lo siguiente: