CLI tool for uploading data to the Morphic AWS S3 buckets.
Users need to have
- Basic command-line knowledge
- Python3.x installed on their machine
- AWS Cognito username and password
The morphic-util tool is available to install from PyPi.
$ pip install morphic-util
Display help and list of commands.
$ morphic-util -h
usage: morphic-util [-h] [--version] [--profile PROFILE] {config,create,select,list,upload,download,delete} ...
morphic-util
optional arguments:
-h, --help show this help message and exit
--version, -v show program's version number and exit
command:
{config,create,select,list,upload,download,delete}
config configure AWS credentials
create create an upload area (authorised users only)
select select or show the active upload area
list list contents of the area
upload upload files to the area
download download files from the area
delete delete files from the area
In the above, optional arguments are between []
and choices between {}
.
The basic usage is as follows:
$ morphic-util cmd ARG1 ARG2 -o1 -o2
Use the tool by specifying a command (cmd
- see list below) to run, any mandatory (positional) arguments (e.g. ARG1
and ARG2
- see positional args for each command), and any optional arguments (e.g. -o1
and o2
- see options for
each command).
Help with specific command:
$ morphic-util <cmd> -h
Some commands or options/flags are restricted to authorised users (admin) only.
Configure AWS credentials
$ morphic-util config username password
positional arguments:
username AWS Cognito username
password AWS Cognito password
The tool uses the profile name hca-util in local AWS config files.
Create an upload area/ project folder (authorised users only)
$ morphic-util create NAME DPC [-p {u,ud,ux,udx}]
positional arguments:
NAME name for the new area/ project folder
DPC center name of the submitter
optional arguments:
-p {u,ud,ux,udx} allowed actions (permissions) on new area. u for
upload, x for delete and d for download. Default is ux
Show or select the active upload area/ project folder
$ morphic-util select AREA
positional arguments:
AREA area name/ folder name.
If AREA is not specified, the selected area is shown.
List contents of selected area
$ morphic-util list [-b]
optional arguments:
-b list all areas in bucket **(authorised users only)**
Upload files to the selected area
$ morphic-util upload PATH [PATH ...] [-o]
positional arguments:
PATH valid file or directory
optional arguments:
-o overwrite files with same names
Download files from the selected area (authorised users only)
$ morphic-util download (-a | -f file [file ...])
optional arguments:
-a download all files from selected area
-f file [file ...] download specified file(s) only
Delete files from the selected area
$ morphic-util delete [-a | -d] [PATH [PATH ...]]
positional arguments:
PATH path to file or directory to delete
optional arguments:
-a delete all files from the area
-d delete upload area and contents (authorised users only)
Download dependencies
pip install -r requirements.txt
Run tests
nosetests