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.3.tar.gz
(8.2 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.3-py3-none-any.whl
(9.2 kB
view details)
File details
Details for the file s3cd-0.0.3.tar.gz.
File metadata
- Download URL: s3cd-0.0.3.tar.gz
- Upload date:
- Size: 8.2 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 |
182c18ba3c913451d2cddfbed4d1bbda393de1e3bb5bc891705f87e521924674
|
|
| MD5 |
7435959bfd8c7c75fc8978e98b472565
|
|
| BLAKE2b-256 |
aa7a03b174baf38bd9b698e8abd4693c104f1394ff78c51c9c63e68c4f5f0c21
|
File details
Details for the file s3cd-0.0.3-py3-none-any.whl.
File metadata
- Download URL: s3cd-0.0.3-py3-none-any.whl
- Upload date:
- Size: 9.2 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 |
4a6e85ca430b10e2886552ca67741a6a44aa53fb423352283a4a10ddea4d84f7
|
|
| MD5 |
dc4a28f5c08d3d41494cd500e357bac4
|
|
| BLAKE2b-256 |
6c76338b9a1a274d39bd792bbabfd13ce961fd515025df3a3fbb572a03bf3760
|