S3 Content Delivery tool
Project description
s3cd
S3 Content Delivery tool - CLI for uploading and copying static files/artifacts to S3
Features
- 📦 Upload directories recursively to S3 buckets maintaining structure
- 🔄 Copy objects between S3 buckets without local download (server-side copy)
- 🚀 Multipart upload support for large files
- 📝 Automatic __info.json generation with GitLab CI/CD metadata
- 🔐 Flexible authentication via environment variables or CLI flags
- 🌐 Support for S3-compatible storage (MinIO, Yandex Object Storage, etc.)
- 🎯 Path-style and virtual-hosted-style S3 addressing
Quick Start
export CDS_RELEASE_ID=$(uuidgen --time-v7)
export CDS_S3_ACCESS_KEY_ID="your-access-key"
export CDS_S3_SECRET_ACCESS_KEY="your-secret-key"
export CDS_S3_BUCKET="content-delivery-storage"
uvx s3cd upload ./dist
Environment
# Meta
export CDS_RELEASE_ID=$(uuidgen --time-v7)
# S3
export CDS_S3_ACCESS_KEY_ID="your-access-key"
export CDS_S3_SECRET_ACCESS_KEY="your-secret-key"
export CDS_S3_REGION="us-east-1"
export CDS_S3_ENDPOINT="https://s3.amazonaws.com"
export CDS_S3_ADDRESSING_STYLE="virtual" # or "path"
Contributing
Issue Tracker: https://gitlab.com/rocshers/python/s3cd/-/issues
Source Code: https://gitlab.com/rocshers/python/s3cd
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
s3cd-0.0.6.tar.gz
(8.1 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
s3cd-0.0.6-py3-none-any.whl
(9.1 kB
view details)
File details
Details for the file s3cd-0.0.6.tar.gz.
File metadata
- Download URL: s3cd-0.0.6.tar.gz
- Upload date:
- Size: 8.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b9c044074b0ff3e2c0efe466c3b09034069774527e9b2d9d0f5ab416002d955c
|
|
| MD5 |
ba43d379ae5f19842261807a4043bb6c
|
|
| BLAKE2b-256 |
91e1f9edcb104daaf178dc64da97172cacfe89bd26e2411367cdf9e577dcd33e
|
File details
Details for the file s3cd-0.0.6-py3-none-any.whl.
File metadata
- Download URL: s3cd-0.0.6-py3-none-any.whl
- Upload date:
- Size: 9.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4a0b0aee398c3828e39315d16312e287cf4e6de28634d686b27b7e3f656852b4
|
|
| MD5 |
203c28a0cd5174768aa6e938f6a6f14a
|
|
| BLAKE2b-256 |
b881c89ac7202c52396109190962b56b48dd4eb52882dfd0052db03c228f34da
|