{{ transformations:AmazonCommandAction.png}}
====== AMAZON COMMAND ======
Category: Workflow / App/Cloud\\
\\
=====Description=====
The action performs file operations with Amazon S3 buckets. A configured [[connectors:awss3|Amazon S3 connector]] is required.
Currently, the following commands are available:
* List files
* List folders
* Download file
* Download folder
* Upload file
* Upload folder
* Delete file
* Create folder
* Delete folder
\\
=====Action settings=====
^ Setting ^ Description ^
|Command|Select the file operation this action will perform. Options: //List files//, //List folders//, //Download file//, //Download folder//, //Upload file//, //Upload folder//, //Delete file//, //Create folder//, or //Delete folder//. See below for details of each command type.|
|Connector*|Select the preconfigured Amazon S3 connector, or, build one by selecting //Add connector//.|
|Bucket1|Select the Amazon S3 bucket to perform the command in.|
* Setting can be specified using a [[:parameters|parameter]].\\
1 Setting can be specified using a [[:parameters|parameter]] or the first value of a column.
\\
====List files settings====
**Description:** Produce a list of files, with selected details, in a specified S3 bucket.
^ Setting ^ Description ^
|Folder*|Select a folder containing the files to create the file list from.|
|Columns|Select the details of the found files to be included in the dataset. Each detail creates a column in the dataset. Options: //File name with full path//, //File name only//, //File extension//, //Size//, and //Date modified//.|
* Setting can be specified using a [[:parameters|parameter]] or the first value of a column.
\\
====List folders settings====
**Description:** Produce a list of folders, with selected details, in a specified S3 bucket.
^ Setting ^ Description ^
|Folder*|Enter or select a folder containing the subfolders to create the list of.|
|Columns|Select the details of the folders to be included in the dataset. Each detail creates a column in the dataset. Options: //Folder name with full path// and //Folder name only//.|
* Setting can be specified using a [[:parameters|parameter]], or the first value of a column.
\\
====Download file settings====
**Description:** Downloads the specified file from the S3 bucket to the local location defined.
^ Setting ^ Description ^
|File path*|Enter or browse to the file in the S3 bucket to be downloaded.|
|Local folder*|Enter or browse to the local folder to download the file to.|
|If a file with such\\ name already exists|Select how EasyMorph will handle saving the file if a file with the same name exists in the destination folder.\\ Options: //Overwrite//, //Do nothing//, or //Halt project execution//. See the "File already exists" table below.|
* Setting can be specified using a [[:parameters|parameter]], or the first value of a column.
\\
====Download folder settings====
**Description:** Downloads multiple files from the specified folder from the S3 bucket.
^ Setting ^ Description ^
|Folder path*|Enter or browse to the folder in S3 bucket containing the files to download.|
|Local folder*|Enter or browse to the local folder to download the files to. This action will //overwrite// files with the same name(s)\\ that already exist(s) in the destination folder.|
* Setting can be specified using a [[:parameters|parameter]], or the first value of a column.
\\
====Upload file settings====
**Description:** Uploads the specified local file to the specified folder in the S3 bucket.
^ Setting ^ Description ^
|File path*|Enter or browse to the local file to upload.|
|Target folder*|Enter or browse to a folder in the S3 bucket to upload the file to.|
|If a file with such\\ name already exists|Select how EasyMorph will handle saving the file if a file with the same name exists in the destination folder.\\ Options: //Overwrite//, //Do nothing//, or //Halt project execution//. See the "File already exists" table below.|
* Setting can be specified using a [[:parameters|parameter]], or the first value of a column.
\\
====Upload folder settings====
**Description:** Uploads multiple files (and, optionally, subfolders) with the specified local folder to a folder in the S3 bucket.
^ Setting ^ Description ^
|Local folder*|Select the local folder to upload the files and subfolders (if selected) from.|
|Upload subfolders recursively|When checked, all subfolders in the specified folder, regardless of depth, will be uploaded.|
|Filter files|When checked, enter a filter to use on the filenames in the specified folder to constrain which files are uploaded. Using wildcards in the filter is supported.|
|Target folder*|Enter or browse to a folder in the S3 bucket to upload the files to. This action will //overwrite// files with the same name(s) that already exist(s) in the destination folder.|
* Setting can be specified using a [[:parameters|parameter]], or the first value of a column.
\\
====Delete file settings====
**Description:** Deletes the specified file stored in the S3 bucket.
^ Setting ^ Description ^
|File path*|Enter or browse to the remote file in the S3 bucket to delete.|
|If the file doesn't exist|Select how EasyMorph handles situations when the specified file does not exist. Options: //Do nothing// (nothing\\ happens, the workflow continues, no error is displayed), or //Halt project execution// (workflow stops, an error is displayed).|
* Setting can be specified using a [[:parameters|parameter]], or the first value of a column.
\\
====File already exists options====
^Option ^Description ^
|Overwrite|The new file replaces the original file.|
|Do nothing|No file is downloaded/uploaded, the workflow does not halt, and no error is displayed.|
|Halt project execution|The project will stop processing and this action will display an error.|
\\
====Create folder settings====
**Description:** Create a new folder under the parent folder in the selected S3 bucket.
^ Setting ^ Description ^
|Parent folder*|Select a folder in the S3 bucket to create the new folder under.|
|Folder name*|Enter the name of the new folder.|
|If a folder with such name already exists|Choose how EasyMorph behaves if a folder with the //Folder name// already exists. Options: //Fail// (the workflow stops with a warning) or //Do nothing// (the workflow continues without creating the new folder).|
* Setting can be specified using a [[:parameters|parameter]].\\
\\
====Delete folder settings====
**Description:** Delete the selected folder in the S3 bucket.
^ Setting ^ Description ^
|Folder path*|Select the folder in the S3 bucket to delete.|
|If the folder doesn't exist|Choose how EasyMorph behaves if the selected folder does not exist. Options: //Do nothing// (the workflow continues without creating the new folder) or //Fail// (the workflow stops with a warning).|
* Setting can be specified using a [[:parameters|parameter]].\\
\\
=====Remarks=====
The easiest way to build a list of remote files in an S3 bucket to be downloaded or deleted is to use this action in its //File list// configuration, including the "File name with full path" option. This list can then be modified to generate the final list of files to be downloaded.
\\
=====See also=====
* [[transformations:filecommand|File command]]
* [[transformations:folderlist|List of folders]]