anglemx / file-storage-bundle
Multi-backend file storage bundle (local, S3, Azure)
Installs: 7
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Type:symfony-bundle
Requires
- php: >=8.1
- ext-curl: *
- ext-fileinfo: *
- anglemx/php-utilities: ^1.0
- aws/aws-sdk-php: ^3.100
- microsoft/azure-storage-blob: ^1.0
- symfony/dependency-injection: ^5.4
- symfony/deprecation-contracts: ^2.1 | ^3
- symfony/event-dispatcher-contracts: ^2.4
- symfony/framework-bundle: ^5.4
- symfony/security-bundle: ^5.4
Requires (Dev)
- dms/phpunit-arraysubset-asserts: ^0.2.0
- doctrine/orm: ~2.3
- php-coveralls/php-coveralls: ^2.2
- phpunit/phpunit: ^9.0
- symfony/event-dispatcher: ^5.4
- symfony/phpunit-bridge: ^5.4
README
Multi-backend file storage bundle. Supported backends: local, AWS S3, Azure Storage Blob.
Supported types:
local
aws_s3
azure_blob_storage
create a configuration file in symfony/config/packages/angle_file_storage.yaml
:
angle_file_storage: type: local container: file-storage username: null secret: null aws_region: null
or link it to the .env
variables:
angle_file_storage: type: "%env(ANGLE_FILE_STORAGE_TYPE)%" container: "%env(ANGLE_FILE_STORAGE_CONTAINER)%" username: "%env(ANGLE_FILE_STORAGE_USERNAME)%" secret: "%env(ANGLE_FILE_STORAGE_SECRET)%" aws_region: "%env(ANGLE_FILE_STORAGE_AWS_REGION)%"
and then in the .env
add:
###> angle/file-storage-bundle ### ANGLE_FILE_STORAGE_TYPE="local" ANGLE_FILE_STORAGE_CONTAINER="container_or_path" ANGLE_FILE_STORAGE_USERNAME="myusername" ANGLE_FILE_STORAGE_SECRET="mysecret" ANGLE_FILE_STORAGE_AWS_REGION=null ###< angle/file-storage-bundle ###
Local
angle_file_storage: type: local container: path/to/files
- if path is absolute, it will be taken as is.
- if path is relative, it will be created inside
symfony/var/
Azure
angle_file_storage: type: azure_blob_storage container: azure_blob_container_name username: azure_account_name secret: azure_account_key
AWS
angle_file_storage: type: aws_s3 container: aws_s3_bucket_name username: aws_s3_access_key secret: aws_s3_secret_access_key aws_region: aws_s3_bucket_region