This script facilitates the submission of projects, samples, runs, assemblies, and other analyses to the public repository ENA (European Nucleotide Archive). It also assists in validating AMR (Antimicrobial Resistance) antibiograms before submission.
Project description
enaCLI
Introduction
enaCLI is a command-line tool designed to facilitate the validation and submission of data to the European Nucleotide Archive (ENA). This tool streamlines the process of preparing and uploading data files, ensuring they meet ENA's submission requirements.
Installation
sudo apt install lftp
pip install enaCLI
Resources
Usage
enaCLI -h
1. Project Submission
Usage
enaCLI project -h
Example
enaCLI project -u Webin-XXXX -p 'XXXXXX' -m templates/templates.xlsx -t
Options
-u
: Webin submission account-p
: Password for the submission account-m
: Manifest file (template: templates/templates.xlsx)-t
: Use Webin test service (optional)
2. Sample Submission
Usage
enaCLI sample -h
Example
enaCLI sample -u Webin-XXXX -p 'XXXXXX' -m templates/templates.xlsx -t
Options
-u
: Webin submission account-p
: Password for the submission account-m
: Manifest file (template: templates/templates.xlsx)-t
: Use Webin test service (optional)
3. Run Submission
Usage
enaCLI run -h
Example
enaCLI run -u Webin-XXXX -p 'XXXXXX' -m templates/templates.xlsx -i test_data/run -t
Options
-u
: Webin submission account-p
: Password for the submission account-m
: Manifest file (template: templates/templates.xlsx)-i
: Input directory for files declared in the manifest file-C
: The center name of the submitter (mandatory for broker accounts)-t
: Use Webin test service (optional)
4. Genome Assembly Submissions
Usage
enaCLI genome -h
Example
enaCLI genome -u Webin-XXXX -p 'XXXXXX' -m templates/templates.xlsx -i test_data/genome -c genome -t
Options
-u
: Webin submission account-p
: Password for the submission account-m
: Manifest file (template: templates/templates.xlsx)-i
: Input directory for files declared in the manifest file-c
: Assembly submission type (choices: genome, transcriptome)-C
: The center name of the submitter (mandatory for broker accounts)-t
: Use Webin test service (optional)
5. Targeted Command
The targeted
command facilitates the submission of targeted sequences to the public repository ENA (European Nucleotide Archive).
Usage Example
enaCLI targeted -u Webin-XXXX -p 'XXXXXX' -m templates/templates.xlsx -i test_data/targeted -t
Options
-u
,--username
: Webin submission account (e.g., Webin-XXX)-p
,--password
: Password for the submission account-m
,--manifestFile
: Path to the manifest file specifying the details of the submission. The manifest file should follow the template provided intemplates/templates.xlsx
-i
,--inputDir
: Path to the input directory containing the files declared in the manifest file-C
,--centerName
: The center name of the submitter (mandatory for broker accounts)-t
,--test
: Use Webin test service instead of the production service
6. Other Submission
Usage
enaCLI other -h
Example
enaCLI other -u Webin-XXXX -p 'XXXXXX' -m templates/templates.xlsx -i test_data/other -a AMR_ANTIBIOGRAM -t
Options
-u
: Webin submission account-p
: Password for the submission account-m
: Manifest file (template: templates/templates.xlsx)-i
: Input directory for files declared in the manifest file-a
: Analysis type (choices: GENOME_MAP, REFERENCE_ALIGNMENT, SEQUENCE_ANNOTATION, ASSEMBLY_GRAPH, PROCESSED_READ, PATHOGEN_ANALYSIS, AMR_ANTIBIOGRAM, COVID-19_FILTERED_VCF, COVID-19_CONSENSUS, PHYLOGENY_ANALYSIS)-C
: The center name of the submitter (mandatory for broker accounts)-t
: Use Webin test service (optional)
Validating Antimicrobial Resistance (AMR) Data
When submitting AMR data, it is crucial to ensure that each column in your antibiogram files adheres to specific validation rules:
- bioSample_ID: Must contain 'SAM' or 'ERS' as part of the identifier.
- species: Must be validated against the ENA taxonomy database to ensure correct scientific naming.
- antibiotic_name: Must match the list provided in antibiotics.txt.
- ast_standard: Must be one of the accepted standards (e.g., CLSI, EUCAST, CA-SFM, BSAC, DIN, SIR or WRG).
- breakpoint_version: Ensures compatibility with the chosen AST standard.
- laboratory_typing_method: Must be one of the predefined methods (e.g., BROTH DILUTION, MICROBROTH DILUTION, AGAR DILUTION or DISC-DIFFUSION, NEO-SENSITABS, ETEST).
- measurement: Must fall within valid ranges depending on the typing method.
- measurement_units: Must be appropriate for the typing method (e.g., 'mg/L' for dilution methods or 'mm' for diffusion methods).
- measurement_sign: Must be a valid comparison operator (e.g., >, <, =).
- resistance_phenotype: Must be one of the accepted phenotypes (e.g., intermediate, susceptible, resistant, non-susceptible or not-defined).
- platform: While not always mandatory, must be consistent with the data submitted.
For each column, the validation ensures that the data complies with ENA standards, preventing errors and ensuring smooth submission.
7. enaCLI All (the magic🪄 option)
Description
The all
command combines all submissions (projects, samples, runs, genome assemblies, targets, and other analysis objects) into a single command line. This aims to streamline submission to ENA.
Help
enaCLI all -h
Example
enaCLI all -u webin-XXXX -p 'XXXXXX' -m templates/templates_all.xlsx -i test_data/all/ -c genome -a AMR_ANTIBIOGRAM -t
Options
-u
: Webin submission account-p
: Password for the submission account-m
: Manifest file-i
: Input directory for all files declared in the manifest file (optional)-a
: Analysis type (optional)-c
: Assembly submission type (optional)-C
: Center name (optional)-t
: Test submission (optional)
Contact Information
For any errors or assistance, please contact the ENA helpdesk.
License
This project is licensed under the MIT License.
This documentation provides clear and concise instructions for installing, using, and troubleshooting the `enaCLI` tool. It also includes specific validation steps for AMR data, ensuring users submit accurate and valid information to the ENA.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file enaCLI-1.0.8.tar.gz
.
File metadata
- Download URL: enaCLI-1.0.8.tar.gz
- Upload date:
- Size: 67.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 693aa63a8f8ddb244ac4ff156d6578f4001d8573231a2eb1a7bbfab52c48a795 |
|
MD5 | 28b864f868e293d783d648d4c57e2ba6 |
|
BLAKE2b-256 | 4891b77f18c646944023a02ecc3ce3cba10daf213865995a1be3c8bac18cd6f5 |
File details
Details for the file enaCLI-1.0.8-py3-none-any.whl
.
File metadata
- Download URL: enaCLI-1.0.8-py3-none-any.whl
- Upload date:
- Size: 67.5 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f525c9cdf54110c6d7e3fec9d6d1a7629a47d43d75e1a0c73d138fb74e3d05da |
|
MD5 | 44a956cbb04ed55c9d1b57ce22e38ee4 |
|
BLAKE2b-256 | d84b93ce425c3380e2a28f5f6f0811f926342a7f8bd4d725ffbb2546f4d607e6 |