Commit Graph

41 Commits (stable12)

Author SHA1 Message Date
Robin Appelman 05fddcd7ae
forward object not found error in swift as dav 404
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-11-19 11:37:56 +07:00
Robin Appelman 50162e619c
disable part files for object stores
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-03-08 13:09:37 +07:00
Morris Jobke 08a13dde4a
Merge pull request #8101 from nextcloud/s3-uploader-12
[12] Use S3Client::upload instead of splitting single/multipart upload ourselves
2018-02-08 14:31:36 +07:00
Robin Appelman ce4f74bec2
actually return stream from swift
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-02-08 08:12:51 +07:00
Robin Appelman 8d5b86c159
Use S3Client::upload instead of splitting single/multipart upload ourselves
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-01-29 16:11:23 +07:00
Robin Appelman 4ec4a7df93
add option to use legacy v2 auth with s3
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-01-09 18:21:47 +07:00
Robin Appelman 0519ca5893
add retry wrapper when reading files from swift
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-12-06 15:43:00 +07:00
Bjoern Schiessle 83ef3d2411
only create the file cache entry after the empty file was created successfully, otherwise file_exists() call on the initial file_put_content() will indicate that the file already exists
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-11-17 12:46:52 +07:00
Robin Appelman e041c7a92f
Use non empty files for object store touch
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-11-15 14:23:47 +07:00
Robin Appelman a21f2c2813
Fix contructing headers for s3 download
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-11-15 14:23:43 +07:00
Morris Jobke 8a8e76561b
Merge pull request #7081 from nextcloud/12-6958
[stable12] Improve mimetype detection for object storages
2017-11-06 18:45:32 +07:00
Morris Jobke 21b8399e88
Improve mimetype detection for object storages
Object storage instances always fall back to the content based mimetype detection, because the file name for object storage was always random due to the fact that it was temporarily storage in a generated temp file. This patch adds a check before that to make sure to use the original file name for this purpose and also remove possible other extensions like the versioning or part file extension.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 15:23:35 +07:00
Robin Appelman 1ed9a25ae8
use fopen directly when reading objects from s3
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-11-06 10:39:52 +07:00
William Pain cfbc0c8141
Fix uninitialized variable $this->params
Signed-off-by: William Pain <pain.william@gmail.com>
2017-10-25 01:32:59 +07:00
Robin Appelman 74b43f1d7d
propagate multipart upload exception when aborting upload
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-10-17 15:19:40 +07:00
Robin Appelman e2a25d5caf
set s3 part size to 500mb
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-10-11 16:01:04 +07:00
Robin Appelman 239f561ab2
Add tests for multipart upload
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-10-09 15:29:44 +07:00
Robin Appelman 6fee4232ee
only do multipart upload for large files
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-10-09 15:29:40 +07:00
Robin Appelman d3a57a7568
multipart upload for s3 object storage
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-10-09 15:29:34 +07:00
Robin Appelman d26951beb4
fix path style
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-10-03 14:11:21 +07:00
Robin Appelman 474c8aff29
reuse object read/write/delete logic in s3 implementations
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-10-03 14:10:57 +07:00
Robin Appelman f62e0a33f3
update aws sdk and move it to 3rdparty
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-10-03 14:09:59 +07:00
Robin Appelman a277101133 improved logging of objectore errors
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-07-04 11:14:41 +07:00
Morris Jobke c54a59d51e
Remove unused use statements
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-04-22 19:23:31 +07:00
Robin Appelman 6991b79d40
serialize the token to json instead of using php's serialize
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-03-28 21:33:07 +07:00
Robin Appelman 205d5586e8
cache swift tokens in memcache
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-03-28 12:37:41 +07:00
Robin Appelman 8dbca71a77
better error messages for invalid regions, urltypes and service names
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-03-28 17:00:11 +07:00
Robin Appelman 5062d0ac50
better error messages when swift authentication fails
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-03-28 11:02:18 +07:00
Robin Appelman 5774d3e82c
replace close:// streamwrapper with CallBackWrapper
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-01-06 15:33:32 +07:00
Robin Appelman 3ab160dd5a
fopen s3 objects directly to work around unexplainable guzzle bug
For some reason when a text file started with a valid hex character ([0-9a-f]) it would eat the text untill the first newline
The new code does basically the same thing as guzzle/s3-sdk did only without wrapping everything in a guzzle stream

Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-11-16 15:30:37 +07:00
Robin Appelman eefd059716
add amazon s3 objectstore backend
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-11-16 15:30:36 +07:00
Robin Appelman 64e896cc0d
split testing of objectstoragestorage and objectstore implementations
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-11-16 15:30:36 +07:00
Robin Appelman 0a246f9852
split off s3 connection logic
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-11-16 15:30:36 +07:00
Jörn Friedrich Dreyer 4a9361905d
make object prefix configurable 2016-11-14 15:10:56 +07:00
Robin Appelman b72e5a2e4e
allow using 'bucket' to set the swift container
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-11-04 14:15:18 +07:00
Robin Appelman 049bcae29e
Allow setting a maximun number of buckets for multibucket
Signed-off-by: Robin Appelman <robin@icewind.nl>
2016-11-02 21:31:24 +07:00
Joas Schilling 0215b004da
Update with robin 2016-07-21 18:13:58 +07:00
Joas Schilling ba87db3fcc
Fix others 2016-07-21 18:13:57 +07:00
Lukas Reschke aba539703c
Update license headers 2016-05-26 19:57:24 +07:00
Roeland Jago Douma 5e2316d05d
Allow multibucket in objectstore 2016-05-23 20:42:08 +07:00
Roeland Jago Douma dedf392751
Move \OC\Files to PSR-4 2016-04-24 21:37:35 +07:00