summaryrefslogtreecommitdiffstats
path: root/lib/private/Files/ObjectStore
Commit message (Collapse)AuthorAgeFilesLines
* Fix typo in commentMorris Jobke2019-07-291-1/+1
| | | | Signed-off-by: Morris Jobke <hey@morrisjobke.de>
* Fix File#putContents(string) on ObjectStorageMarcel Klehr2019-07-171-4/+4
| | | | Signed-off-by: Marcel Klehr <mklehr@gmx.net>
* Use HTTP1.1 to read S3 objectsRoeland Jago Douma2019-07-101-0/+1
| | | | | | | | Some of the READs otherwise use HTTP/1.0 which is not always supported by all backends. HTTP/1.1 is there since 1999 way longer than S3 so safe to assume it is always there IMO. Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* Merge pull request #15715 from nextcloud/s3-bucket-nameMorris Jobke2019-05-241-1/+4
|\ | | | | Allow other code to use the s3 client from object store
| * add method to get bucket name from s3 storageRobin Appelman2019-05-241-1/+4
| | | | | | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* | make ObjectStoreStorage::getURN publicRobin Appelman2019-05-221-1/+1
|/ | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* add method to get the used object store from the storageRobin Appelman2019-05-211-0/+4
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* Always use a temp file for swift writesRoeland Jago Douma2019-04-181-8/+3
| | | | | | | | Apparently the if statement doesn't work in all cases (even if I could not reproduce it). So for the time being we will just not directly stream to swift. Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* Merge pull request #14424 from nextcloud/fix/13554/swift_to_tmpRoeland Jago Douma2019-03-061-1/+10
|\ | | | | Use a tmp file for swift writes
| * Use a tmp file for swift writesRoeland Jago Douma2019-03-041-1/+10
| | | | | | | | | | | | Else this leads to a seekable stream error with chunked uploads Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* | Merge pull request #14175 from skydiablo/masterMorris Jobke2019-03-051-0/+1
|\ \ | |/ |/| Fix ObjectStorage expired token (v3)
| * Update SwiftFactory.phpVolker2019-02-131-0/+1
| | | | | | Auth-Service (in explizit v3) will recheck the cached-token and will end in an "token expired exception".
* | Merge pull request #14254 from sparrowjack63/masterRoeland Jago Douma2019-03-011-4/+7
|\ \ | | | | | | Dont check Bucket Name in Nextcloud
| * | Bucket name - Alert in debug modeS. Cat2019-03-011-1/+1
| | | | | | | | | | | | | | | | | | Alert in debug mode only when trying to mount non compatible DNS bucket name (in order to not flood the logs) Signed-off-by: Sébastien Cat <sebastien.cat@inra.fr>
| * | Correct code indentS. Cat2019-03-011-5/+5
| | | | | | | | | | | | | | | | | | Just correct code indent. Signed-off-by: Sébastien Cat <sebastien.cat@inra.fr>
| * | Warning on S3 not compatible DNS bucket nameS. Cat2019-03-011-4/+11
| | | | | | | | | | | | | | | | | | The new created bucket should respect the DNS compatibility, nevertheless, Nextcloud should accept to mount "old created" buckets that does not respect DNS compatibility (Backward compatibility, or compatibility with CEPH). Signed-off-by: Sébastien Cat <sebastien.cat@inra.fr>
| * | Dont check Bucket Name in NextcloudSebastien Cat2019-03-011-4/+0
| |/ | | | | | | | | Signed-off-by: Sebastien Cat <sparrow.jack63@gmail.com> Signed-off-by: Sébastien Cat <sebastien.cat@inra.fr>
* | Merge pull request #14210 from nextcloud/fix/14192/fix_empty_uploadsRoeland Jago Douma2019-02-181-2/+23
|\ \ | | | | | | Fix empty file uploads to S3 (and other streaming storages)
| * | Fix empty file uploads to S3Roeland Jago Douma2019-02-151-2/+23
| |/ | | | | | | Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* / Use CountWrapper instead of almost identical CountReadStreamRoeland Jago Douma2019-02-151-2/+2
|/ | | | Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* Fix: Check if `$this->params['user']` is an arrayWilliam Pain2019-02-051-1/+1
| | | | Signed-off-by: William Pain <pain.william@gmail.com>
* always use multipart uploader for s3 uploadsRobin Appelman2019-01-281-2/+5
| | | | | | the multipart uploader handles non seekable streams while `upload` does not Signed-off-by: Robin Appelman <robin@icewind.nl>
* Merge pull request #13032 from nextcloud/objectstore-write-existsMorris Jobke2019-01-145-5/+40
|\ | | | | upload new files in objectstore to a .part path first
| * upload new files in objectstore to a .part path firstRobin Appelman2018-12-121-5/+17
| | | | | | | | | | | | | | | | This prevent the object store and cache from getting out of sync when an objectstore silently fails or the php process get's killed during the upload without giving us the chance to cleanup Signed-off-by: Robin Appelman <robin@icewind.nl>
| * Add objectExists to objectstore interfaceRobin Appelman2018-12-124-0/+23
| | | | | | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* | Cache tokens when using swift's v2 authenticationRobin Appelman2019-01-132-17/+86
|/ | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* Add PHPDoc for thrown exceptionMorris Jobke2018-11-191-0/+1
| | | | Signed-off-by: Morris Jobke <hey@morrisjobke.de>
* forward object not found error in switch as dav 404Robin Appelman2018-11-192-6/+23
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* extend storage api to allow directly writing a stream to storageRobin Appelman2018-10-311-22/+46
| | | | | | | | | | | this removes the need for temporary storages with some external storage backends. The new method is added to a separate interface to maintain compatibility with storage backends implementing the storage interface directly (without inheriting common) Currently the interface is implemented for objectstorage based storages and local storage and used by webdav uploads Signed-off-by: Robin Appelman <robin@icewind.nl>
* Fix listing s3 objects when using google cloud aws compatibilityRobin Appelman2018-06-111-0/+5
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* add azure unit tests with azuriteRobin Appelman2018-06-041-1/+28
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* add azure object storage backendRobin Appelman2018-06-041-0/+91
| | | | | Signed-off-by: Robin Appelman <robin@icewind.nl> Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* generateTokenFromCache is only valid for V3Roeland Jago Douma2018-04-261-2/+2
| | | | Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* json_decode an associative array for the swift cached tokenRoeland Jago Douma2018-04-261-1/+1
| | | | Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* move log constants to ILoggerArthur Schiwon2018-04-261-1/+2
| | | | Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
* Merge pull request #9280 from nextcloud/bugfix/noid/swift-v3-scopeRoeland Jago Douma2018-04-241-0/+4
|\ | | | | Swift v3 requires setting a scope
| * Swift v3 requires setting a scopeRoeland Jago Douma2018-04-231-0/+4
| | | | | | | | | | | | | | | | | | Unscoped auth is not guaranteed to return a catalog. So require the scope to be set properly. See https://developer.openstack.org/api-ref/identity/v3/index.html#password-authentication-with-unscoped-authorization Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* | Fix undefined variable - found by phanMorris Jobke2018-04-231-1/+1
|/ | | | | | Added in https://github.com/nextcloud/server/pull/8314/files#diff-a55c10804586cd797b7f3f16556c1457R157 Signed-off-by: Morris Jobke <hey@morrisjobke.de>
* Add more logging for the object storage during creation of the bucketsMorris Jobke2018-04-051-3/+5
| | | | Signed-off-by: Morris Jobke <hey@morrisjobke.de>
* Merge pull request #8857 from nextcloud/swift-verify-cached-tokenMorris Jobke2018-03-192-12/+24
|\ | | | | verify cached swift token
| * verify cached swift tokenRobin Appelman2018-03-162-12/+24
| | | | | | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* | Fix bucket and container usageRoeland Jago Douma2018-03-142-2/+6
| | | | | | | | Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* | Properly cache swift v3 tokenRoeland Jago Douma2018-03-121-1/+6
|/ | | | | | | The V3 token has an export function. Without this the token is effectively never cached. Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* Merge pull request #8715 from nextcloud/objectstore-no-part-filesRoeland Jago Douma2018-03-081-0/+4
|\ | | | | disable part files for object stores
| * disable part files for object storesRobin Appelman2018-03-071-0/+4
| | | | | | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* | don't read existing file when overwriting using object storeRobin Appelman2018-03-071-7/+13
|/ | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* User proper username + passRoeland Jago Douma2018-02-261-2/+2
| | | | Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
* add support for v3 swift authRobin Appelman2018-02-261-7/+27
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* adjust swift external storage to new openstack sdkRobin Appelman2018-02-192-34/+51
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* adjust swift object storage to new openstack sdkRobin Appelman2018-02-192-212/+184
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>