Skip to main content

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 in templates/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

enaCLI-1.0.8.tar.gz (67.5 MB view details)

Uploaded Source

Built Distribution

enaCLI-1.0.8-py3-none-any.whl (67.5 MB view details)

Uploaded Python 3

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

Hashes for enaCLI-1.0.8.tar.gz
Algorithm Hash digest
SHA256 693aa63a8f8ddb244ac4ff156d6578f4001d8573231a2eb1a7bbfab52c48a795
MD5 28b864f868e293d783d648d4c57e2ba6
BLAKE2b-256 4891b77f18c646944023a02ecc3ce3cba10daf213865995a1be3c8bac18cd6f5

See more details on using hashes here.

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

Hashes for enaCLI-1.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 f525c9cdf54110c6d7e3fec9d6d1a7629a47d43d75e1a0c73d138fb74e3d05da
MD5 44a956cbb04ed55c9d1b57ce22e38ee4
BLAKE2b-256 d84b93ce425c3380e2a28f5f6f0811f926342a7f8bd4d725ffbb2546f4d607e6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page