Skip to content
This repository has been archived by the owner on Mar 7, 2020. It is now read-only.

Add a storage abstraction layer #244

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

gabiudrescu
Copy link

Add an abstraction layer to avoid being tied up to the local storage. FlySystem can hot swap local with s3 or any other kind of remote hosting for files by simply changing a configuration file.

config/packages/oneup_flysystem.yaml Outdated Show resolved Hide resolved
config/packages/oneup_flysystem.yaml Outdated Show resolved Hide resolved
@loic425 loic425 requested a review from smildev January 10, 2020 09:21
@loic425
Copy link
Member

loic425 commented Jan 10, 2020

@gabiudrescu We talked about your feature with @smildev at Mobizel and we think about creating a cookbook instead. Cause it's not a systematic need to use a remote hosting. We prefer to limit the amount of composer dependencies.

@gabiudrescu
Copy link
Author

@loic425 your argument makes sense. the reason I think this should be in the app instead of a cookbook is because it will promote a way of thinking to those who use this application skeleton.

in my opinion, nowadays new apps should start from day 1 with being cloud ready in mind. and being tied to the filesystem of your webserver is not something you want in 2020, in the cloud environments we are working with today.

if the skeleton is working by design with a filesystem abstraction, the probability of people using this abstraction with a cloud ready file storage is increased, compared to the option of defaulting to a filesystem with no abstraction and creating some documentation about how to optionally activate such feature.

the reason I added this was to encourage the usage of better solutions for the long run. and flysystem doesn't feel to me it's a big dependency.

anyway, in the end, it's your call. if you don't think it is that useful, I have nothing against closing this PR and submitting another one with a cookbook.

though, if I am allowed, I would strongly suggest for implementing such an abstraction for the default way of handling filesystems in Monofony.

PS: one more reason to do this is to attract more attention by claiming Monofony is cloud ready and Amazon S3 compatible. Buzz words, but it can help grow the community by reaching to people with such needs.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants