349 Commits

Author SHA1 Message Date
shabbyrobe
9edd53f949 Implement pagination tests, fix maxkeys == 0 bug 2019-03-11 12:26:35 +11:00
shabbyrobe
82efafcc22 Add pagination test 2019-03-11 12:26:16 +11:00
shabbyrobe
5026bba46d Fix Marker implementation 2019-03-11 12:26:16 +11:00
shabbyrobe
ab9271766f Fix errors in list objects v2 implementation, implement pagination in mem backend 2019-03-11 12:26:15 +11:00
shabbyrobe
e56e7375ef Carved out GoFakeS3 infrastructure and messaging for pagination 2019-03-11 12:25:36 +11:00
Johannes Boyne
cfb2b0f81d Merge pull request #28 from shabbyrobe/feature/versions
Versioned object support
2019-03-10 19:50:48 +01:00
shabbyrobe
a33f5a94d7 Apparently the "tools" build tag is the way to go with modules now 2019-03-10 21:35:34 +11:00
shabbyrobe
ce6a3e0847 A vain attempt to clean up go.mod; go just fills it full of garbage again with no adequate explanation 2019-03-10 21:16:51 +11:00
shabbyrobe
0e3525d1a4 Migrate Makefile scripts into makefile.go 2019-03-10 21:07:02 +11:00
shabbyrobe
bfefb9981d Update circle to use Go 1.11 2019-03-08 22:39:00 +11:00
shabbyrobe
f17c41986d Trying to get Circle going with new coverage 2019-03-08 19:09:30 +11:00
shabbyrobe
3e8d9c13d8 Remove magefile, replace with simpler driver, update circleci codecov 2019-03-08 19:03:47 +11:00
shabbyrobe
e21b02c37a Add test for versioning without a versioned backend 2019-03-07 22:45:57 +11:00
shabbyrobe
8be6e555f9 Improve comments on versioned backend 2019-03-07 22:45:35 +11:00
shabbyrobe
c1d27fad50 PR updates: comments, versioning get/put works even without versioned backend in most cases 2019-03-07 22:45:35 +11:00
shabbyrobe
2778b05cf8 Appease the codecov gods 2019-03-07 22:45:35 +11:00
shabbyrobe
2958a646dd Ensure list versions works with unversioned bucket 2019-03-07 22:45:35 +11:00
shabbyrobe
f3bd9083e0 Use temp files in cover script, reduce visual noise in test 2019-03-07 22:45:35 +11:00
shabbyrobe
878fe99943 Add some explanatory comments to coverage script 2019-03-07 22:45:35 +11:00
shabbyrobe
3b2be96a55 Add script to calculate true code coverage across package test runs and for all child packages 2019-03-07 22:45:35 +11:00
shabbyrobe
c443005ddf Add version delete marker test 2019-03-07 22:45:35 +11:00
shabbyrobe
5225075d5e Remove unused validation method 2019-03-07 22:45:35 +11:00
shabbyrobe
3395545f25 Implement more version tests, backend for prefix and page changed to pointers
Change to pointers is to better accomodate actually calling the backend
yourself, which is frightfully unpleasant with value types if you don't
need to pass anything. This isn't much better as it means you're passing
'double nils' sometimes, i.e. ListBucketVersions(..., nil, nil), so I
expect to revisit this.
2019-03-07 22:45:35 +11:00
shabbyrobe
254406c0f0 Add put/get versions test 2019-03-07 22:45:35 +11:00
shabbyrobe
f8c451e53d Start adding versioning tests 2019-03-07 22:45:35 +11:00
shabbyrobe
c62daca606 Ensure version listing works when versioning never enabled 2019-03-07 22:45:35 +11:00
shabbyrobe
3d987c0ea1 Fix missing error checks from bad merge 2019-03-07 22:45:35 +11:00
shabbyrobe
f8ab1365f2 Fix broken test 2019-03-07 22:45:35 +11:00
shabbyrobe
55db25f893 Invalid digest check 2019-03-07 22:45:35 +11:00
shabbyrobe
2d9d3ec4cb Fix incorrect assumptions about version pagination 2019-03-07 22:45:35 +11:00
shabbyrobe
a5aa1a1b99 Document assumptions about version deletion 2019-03-07 22:45:35 +11:00
shabbyrobe
32d6a6b6f5 Delete methods return 204 status, not 200 2019-03-07 22:45:35 +11:00
shabbyrobe
0c9daa3549 Assumption test experiment, fix broken test cases 2019-03-07 22:45:35 +11:00
shabbyrobe
4f308524fb Correctly report version ID header 2019-03-07 22:45:35 +11:00
shabbyrobe
8f5a691b94 s3mem: use RWMutex 2019-03-07 22:45:35 +11:00
shabbyrobe
e66c5c5305 Debug server in main 2019-03-07 22:45:35 +11:00
shabbyrobe
30f0097c34 Internal s3io package, reduce some garbage with Prefix 2019-03-07 22:45:35 +11:00
shabbyrobe
9fa59f6e95 First implementation of list versions for memory backend 2019-03-07 22:45:35 +11:00
shabbyrobe
65a9162b84 Skiplist for everything! 2019-03-07 22:45:35 +11:00
shabbyrobe
b159cf8bce Implement memory backend versioned bucket functions 2019-03-07 22:45:35 +11:00
shabbyrobe
d3b727dd8a Add warning about production workloads 2019-03-07 22:45:35 +11:00
shabbyrobe
249528d206 Rename DeleteResult to MultiDeleteResult for clarity 2019-03-07 22:45:35 +11:00
shabbyrobe
f5faf45f7e go mod tidy 2019-03-07 22:45:35 +11:00
shabbyrobe
ea7c0be062 Delete object version endpoint 2019-03-07 22:45:35 +11:00
shabbyrobe
796336f303 Specify versioning messages, API for backend 2019-03-07 22:45:35 +11:00
Johannes Boyne
b60435e097 Merge pull request #23 from shabbyrobe/feature/bucket-rewriting-switch
Bucket rewriting switch
2019-03-06 16:07:33 +01:00
shabbyrobe
ab792092d7 Fix rebase error 2019-03-04 14:23:56 +11:00
shabbyrobe
5c596e7612 Bucket name rewriting 2019-03-04 14:20:39 +11:00
Johannes Boyne
072fc9a473 Merge pull request #27 from shabbyrobe/fix/create-etag
Calculate correct ETag on CreateObject
2019-02-25 08:45:41 +01:00
shabbyrobe
33044af0d3 Calculate correct ETag on CreateObject 2019-02-18 00:14:58 +11:00