HCA Smart-Sync
Intelligent S3 data synchronization for HCA Atlas source datasets and integrated objects.
Features
- Smart synchronization - Only uploads files with changed checksums
- SHA256 verification - Research-grade data integrity
- Manifest generation - Automatic upload manifests
- Progress tracking - Real-time upload progress
- Environment support - Separate prod and dev buckets
- Dry run mode - Preview changes before uploading
Requirements
- Python 3.10+
- AWS CLI configured with appropriate profiles
- S3 access to HCA Atlas buckets
Installation
Install using pipx (recommended):
pipx install hca-smart-sync
Quick Start
First Time Setup
Configure default settings (optional but recommended):
hca-smart-sync config init
# Enter your default AWS profile and atlas name
Basic Usage
# Sync source datasets for gut atlas
hca-smart-sync sync gut-v1 source-datasets --profile my-profile
# Sync integrated objects for immune atlas
hca-smart-sync sync immune-v1 integrated-objects --profile my-profile
# Dry run to preview changes
hca-smart-sync sync gut-v1 source-datasets --profile my-profile --dry-run
Using Config Defaults
Once you've configured defaults, you can omit the atlas:
# File type only (uses config for atlas and profile)
hca-smart-sync sync source-datasets
# Or integrated objects
hca-smart-sync sync integrated-objects
# Override config atlas, use config profile
hca-smart-sync sync immune-v1 source-datasets
Flexible Argument Order
The tool accepts arguments in two ways:
# Atlas first, then file type
hca-smart-sync sync gut-v1 source-datasets
# File type first (uses config for atlas)
hca-smart-sync sync source-datasets
Note: File type is always required - you must specify either source-datasets or integrated-objects.
Available Options
--profile TEXT- AWS profile to use (uses config default if not specified)--dry-run- Preview changes without uploading--verbose- Show detailed output--force- Force upload even if file content is unchanged--local-path TEXT- Custom local directory (defaults to current directory)
Getting Help
# Show all available commands
hca-smart-sync --help
# Show sync command options
hca-smart-sync sync --help
# Show version
hca-smart-sync --version
Metadata
Release files for hca-smart-sync 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| hca_smart_sync-0.4.0.tar.gz | 22.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| hca_smart_sync-0.4.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 47.4 kB
Release files / hca_smart_sync-0.4.0.tar.gz
| Download URL | hca_smart_sync-0.4.0.tar.gz |
|---|---|
| Size | 22.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
bd8ef4f039b9595cf4bc88aaa6fce78ee1261c45fba9acafa95fdc157f8383d7
|
|
BLAKE2b-256 checksum How to use checksums |
32b2a386bee03a9e59a877d37cf4609e18567cf98dcfbe2c300545741692da7c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.8
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 1, 2025.
Transparency logRelease files / hca_smart_sync-0.4.0-py3-none-any.whl
| Download URL | hca_smart_sync-0.4.0-py3-none-any.whl |
|---|---|
| Size | 25.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
98a86208ba6d9809a64a28e6e6020792b33f29f7e07fc938e7c80493d4fee19f
|
|
BLAKE2b-256 checksum How to use checksums |
22c6b277c9933726e98d2c8811044a1a47487ebfe74e1534a12c357c779d0856
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.8
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 1, 2025.
Transparency log