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.5.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.5-py3-none-any.whl
(9.1 kB
view details)
File details
Details for the file s3cd-0.0.5.tar.gz.
File metadata
- Download URL: s3cd-0.0.5.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 |
8c42fc8f80c5cb1e22629214c0cf1068362acfde86f5379a65b0731e6cafc098
|
|
| MD5 |
0ec71128b5d213e1711f558bf6dd4e0e
|
|
| BLAKE2b-256 |
df7ef1eb78e7528bea0e717cd6fa9608157f8f403a5768a90187acb86c9fe435
|
File details
Details for the file s3cd-0.0.5-py3-none-any.whl.
File metadata
- Download URL: s3cd-0.0.5-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 |
03e7133265403c3dbb27b81936a99b1e07669443847df25e7bdae85f1ee44dd0
|
|
| MD5 |
16e8f3859cc1178a909ed0aa724926c9
|
|
| BLAKE2b-256 |
b0cbb482b42d2618d9e50b330a9d8383a19e477964e910c3bad6857980ab1e78
|