Releases
v1.0.0
h5tark
released this
25 May 18:21
Added
Initial release of Viettel Cloud Object Storage Laravel Storage Driver
Custom Flysystem adapter for VIPCore/EMC ViPR S3-compatible endpoints
AWS v4 signature calculation compatible with VIPCore requirements
Support for UNSIGNED-PAYLOAD content hash (required by VIPCore)
File upload, download, delete, and existence check operations
Public/private file visibility support with ACL headers
MIME type detection for uploaded files
URL generation for file access
Comprehensive error handling with Flysystem exceptions
Laravel 10.x and 11.x compatibility
Auto-discovery service provider registration
Configurable via environment variables
Full documentation and usage examples
Features
✅ Upload files with Storage::disk('viettel-s3')->put()
✅ Download files with Storage::disk('viettel-s3')->get()
✅ Check file existence with Storage::disk('viettel-s3')->exists()
✅ Generate URLs with Storage::disk('viettel-s3')->url()
✅ Delete files with Storage::disk('viettel-s3')->delete()
✅ File metadata retrieval (size, MIME type, last modified)
✅ Stream support for large files
✅ Batch operations for multiple files
✅ Public/private file visibility
✅ Custom signature calculation bypassing AWS SDK issues
Technical Details
Direct cURL implementation for HTTP requests
Manual AWS v4 signature calculation
Proper canonical request formatting
Alphabetical header ordering for signatures
Content integrity checks with SHA256
Comprehensive logging for debugging
Requirements
PHP ^8.2
Laravel ^10.0 || ^11.0
League/Flysystem ^3.0
You can’t perform that action at this time.