Skip to main content

ABCOMICS Genomic Data Upload Tool — upload sequencing files to ABCOMICS

Project description

abcupload

ABCOMICS Genomic Data Upload Tool

A command-line tool to upload sequencing and genomic data files to the ABCOMICS platform. It handles the full two-step upload process automatically: requesting a signed URL from the API, then streaming the file directly to secure cloud storage with a live progress bar.


Installation

pip install abcupload

Requires Python 3.8 or later. Dependencies (requests, rich) are installed automatically.


Quick start

# Set your API key once (contact contact@abcomics.org to receive it)
export ABCOMICS_API_KEY=your_key_here

# Upload a single file
abcupload -u abc-000001 -p PRJAB00001 -d sample_R1.fastq.gz

# Upload all FASTQ files in the current directory
abcupload -u abc-000001 -p PRJAB00001 -d '*.fastq.gz'

# Upload an entire directory (scans for all accepted formats)
abcupload -u abc-000001 -p PRJAB00001 -d /data/project/

# Upload multiple specific files
abcupload -u abc-000001 -p PRJAB00001 -d file1.bam,file2.bam

# Test mode — files are deleted after 24 hours
abcupload -u abc-000001 -p PRJAB00001 -d '*.fastq.gz' -t

Usage

abcupload -u USERNAME -p PROJECT_ID -d DATA [OPTIONS]

required:
  -u USERNAME     ABCOMICS username          (e.g. abc-000001)
  -p PROJECT_ID   Project ID                 (e.g. PRJAB00001)
  -d DATA         What to upload:
                    single file  :  -d sample.fastq.gz
                    comma list   :  -d file1.fastq.gz,file2.bam
                    glob pattern :  -d '*.fastq.gz'
                    directory    :  -d /path/to/data/

options:
  -k API_KEY      API key  (alternative to ABCOMICS_API_KEY env var)
  -t              Test mode — files deleted after 24 h
  -o              Overwrite existing files without asking
  -h, --help      Show this help and exit
  -V, --version   Show version and exit

Environment variable

Set your API key as an environment variable so you do not have to pass -k on every command:

# Add to ~/.bashrc or ~/.zshrc for persistence
export ABCOMICS_API_KEY=your_key_here

Accepted file formats

Format Extensions
FASTQ .fastq, .fq, .fastq.gz, .fq.gz, .fastq.bz2, .fq.bz2
FASTA .fasta, .fa, .fna, .faa, .ffn, .frn, .fasta.gz, .fa.gz, .fna.gz, .faa.gz
BAM / SAM / CRAM .bam, .sam, .cram
Index files .bai, .crai, .csi, .tbi
VCF / BCF .vcf, .vcf.gz, .bcf, .bcf.gz
Annotation .gff, .gff3, .gtf, .bed (and .gz variants)
Tabular .csv, .tsv

Maximum file size: 500 GB.


What happens under the hood

  1. For each file, abcupload sends a POST request to the ABCOMICS API with your username, project ID, and filename.
  2. The API validates the request and returns a time-limited signed URL pointing directly to the ABCOMICS cloud storage bucket.
  3. abcupload streams the file to that URL with a live progress bar showing speed, percentage, and estimated time remaining.
  4. If a file with the same name already exists, you are asked whether to overwrite it or skip it (or use -o to always overwrite).

Author

Khadim Gueye — African Bioinformatics Center (ABCOMICS)
Contact: contact@abcomics.org


License

MIT

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

abcupload-1.0.1.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

abcupload-1.0.1-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file abcupload-1.0.1.tar.gz.

File metadata

  • Download URL: abcupload-1.0.1.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for abcupload-1.0.1.tar.gz
Algorithm Hash digest
SHA256 ed899b7dbc2f4a8a10683ef54da29c30b513cebf5066f532c4fd7ee6973adcb6
MD5 6e5f1cab9fea0998f110901299c30760
BLAKE2b-256 a19ca2bb2318d063ec5a761a5c5f73e9a68fd01e8e1671dd594573b0a83b3622

See more details on using hashes here.

File details

Details for the file abcupload-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: abcupload-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 8.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for abcupload-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 809f26bc0dc461231ab2adbaf36b08830bb9d5fdde4b18cee2984118a2799d7e
MD5 8b4215ab36c6bc9b583980ce3a722c79
BLAKE2b-256 338c9b9dc694bef994df47bfef6efc2cf4b2f644e2e1425deba0564cb4078375

See more details on using hashes here.

Supported by

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