c94406f428
Improve how node roles are assigned in Garage
...
- change the terminology: the network configuration becomes the role
table, the configuration of a nodes becomes a node's role
- the modification of the role table takes place in two steps: first,
changes are staged in a CRDT data structure. Then, once the user is
happy with the changes, they can commit them all at once (or revert
them).
- update documentation
- fix tests
- implement smarter partition assignation algorithm
This patch breaks the format of the network configuration: when
migrating, the cluster will be in a state where no roles are assigned.
All roles must be re-assigned and commited at once. This migration
should not pose an issue.
2021-11-16 16:05:53 +01:00
53888995bd
update doc and comments
2021-11-16 15:41:41 +01:00
396fe4c702
clippy
2021-11-16 15:41:41 +01:00
02158ee666
fix issue where list on vhost-bucket would list bucket instead of bucket content
2021-11-16 15:41:41 +01:00
9c58ec28d3
add support for vhost-style s3 bucket
2021-11-16 15:41:41 +01:00
ada7899b24
Fix clippy lints ( fix #121 )
2021-10-26 10:20:05 +02:00
de4276202a
Improve CLI, adapt tests, update documentation
2021-10-25 14:21:48 +02:00
1b450c4b49
Improvements to CLI and various fixes for netapp version
...
Discovery via consul, persist peer list to file
2021-10-22 16:55:24 +02:00
4067797d01
First port of Garage to Netapp
2021-10-22 15:55:18 +02:00
f6060b92aa
Fix HTTP return code for DeleteObject ( fix #98 )
2021-10-11 14:24:49 +02:00
f3a097abdf
WIP: try to fix #93 , and improve S3 ListObjects (v1 and v2) API calls
2021-10-11 11:15:47 +02:00
b9127dd6f8
Prepare for v0.3.0 and add migration path from v0.2.1.x
2021-05-28 15:29:58 +02:00
5fdabf3e75
Add basic support for the "Versioning" command
2021-05-14 22:33:26 +02:00
6ccffc3162
Improved XML serialization
...
- Use quick_xml and serde for all XML response returned by the S3 API.
- Include tests for all structs used to generate XML
- Remove old manual XML escaping function which was unsafe
2021-05-06 22:37:15 +02:00
e4b9e4e24d
rename types to CamelCase
2021-05-03 22:15:09 +02:00
84856e84e5
fix clippy warnings on api
2021-05-03 22:11:41 +02:00
631c36b3ff
S3 API: support ListBuckets
2021-05-03 21:55:30 +02:00
ee2a3d363b
Remove STREAMING-AWS4-HMAC-SHA256-PAYLOAD (see #64 )
2021-05-03 17:30:40 +02:00
dcfc32cf85
Many S3 compatibility improvements:
...
- return XML errors
- implement AuthorizationHeaderMalformed error to redirect clients to
correct location (used by minio client)
- implement GetBucketLocation
- fix DeleteObjects XML parsing and response
2021-04-28 01:05:40 +02:00
642186c530
Fix #59 (& issue)
2021-04-27 23:10:43 +02:00
74373aebcf
make most requested changes
2021-04-27 16:47:08 +02:00
1e3df189d0
document api crate
2021-04-27 16:37:10 +02:00
f859d15062
update to v0.2.1
2021-03-19 13:39:18 +01:00
4c26a0b9c1
Update Cargo.toml files with AGPL license info
2021-03-18 21:59:17 +01:00
6edbc65847
Add trinity's comment in the code
2021-03-18 19:46:43 +01:00
bfa0ff8f82
Merge pull request 'add support for caching headers' ( #49 ) from trinity-1686a/garage:cache-headers into master
...
Reviewed-on: Deuxfleurs/garage#49
2021-03-18 19:45:02 +01:00
dead945c8f
Prepare for release 0.2
2021-03-18 19:33:15 +01:00
b4c903371c
add support for caching headers
2021-03-18 15:46:33 +01:00
f4346cc5f4
Update dependencies
2021-03-16 15:58:40 +01:00
0cd5b2ae19
WIP migrate to tokio 1
2021-03-15 22:36:41 +01:00
667e4e72a8
Small fixes
2021-03-15 19:51:16 +01:00
3bf2df622a
Time and metadata improvements
2021-03-15 16:21:41 +01:00
097c339d98
Fix race condition
2021-03-15 15:26:29 +01:00
bdcbdd1cd8
Fix list API bug
2021-03-15 14:46:37 +01:00
831eb35763
cargo fmt
2021-03-12 21:52:19 +01:00
c475471e7a
Implement table gc, currently for block_ref and version only
2021-03-12 19:57:37 +01:00
7fdaf7aef0
Fix merkle updater not being notified; improved logging
2021-03-12 14:37:46 +01:00
3214dd52dd
Very minor changes
2021-03-10 21:50:09 +01:00
af7600f989
Correctly implement CompleteMultipartUpload with etag check of parts
2021-03-10 17:01:05 +01:00
0fd7df8fa0
Switch to blake2 sum for identifying blocks by their data
2021-03-10 16:33:31 +01:00
f319a7d374
Refactor model stuff, including cleaner CRDTs
2021-03-10 16:21:56 +01:00
40763fd749
Cargo fmt
2021-02-23 18:46:25 +01:00
b1b640ae8b
rename hash() to sha256sum(), we might want to change it at some places
2021-02-21 15:24:30 +01:00
3bcbbe1e31
More precise logging (warn only when returning a 500)
2021-02-20 00:30:39 +01:00
10b983b8e7
Add verification of part numbers in CompleteMultipartUpload (WIP #30 )
2021-02-20 00:13:07 +01:00
1de96248e0
add application/xml header and missing xml escapes
2021-02-19 23:40:18 +01:00
5d1fa591d9
Add compatibility list
2021-02-19 19:10:23 +01:00
e64ecbdccd
S3 compatibility: return 404 instead of 400 on some multipart commands
2021-02-19 18:51:05 +01:00
55a2a636ca
Implement ListObjectsV2
2021-02-19 16:44:06 +01:00
02d512f3fd
Fix #28 , extra headers being ignored (because of profound stupidity)
2021-02-19 12:38:22 +01:00