-
Notifications
You must be signed in to change notification settings - Fork 169
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Google Cloud Storage uploader #240
base: master
Are you sure you want to change the base?
Conversation
a57e728
to
af829d4
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is an awesome contribution @mlt.
The only thing I am a little concerned about is there are no tests. Now I realise the S3 driver has no test either, and I also recognise end-to-end tests are going to be hard. However, it would be nice to have some assurance in future that we won't end up with a regression.
WDYT?
Thanks! I did write it after S3 implementation. Before we jump into testing I wonder how scalable this approach is. I mean what if we have more some XYZ uploaders. We keep adding members to store corresponding configs in hashes and allowing only a single uploader to be used at a time. While, we may say it doesn't make sense to use 2 uploaders at the same time (why would anybody need that?). I wonder if we should have a single hash with :s3 and :gcs keys on top level and make it possible to use all of them if one will? I feel like some refactoring would be necessary though...
I do see a unit test for S3. I can reuse that for GCS as well. Also I don't think end-to-end is going to be hard if we are up for it. Ingress is free and if we delete uploads, I don't think we would have to pay anything for storage. With high availability and low latency it can be done. We would want to encrypt credentials though. I'm going to rebase my stuff meanwhile as S3 path reporting changes have been merged... it will look clean for GCS as well. |
@mlt sorry for the slow reply. Initial thoughts:
WDYT? |
uhm… no worries on slow replies…it took me over 2 month to get back to it 😆 |
i wonder why this is not implemented using the callbacks. would be much cleaner, not clutter the base class with specifics. could also be released as a seperate gem. |
No description provided.