Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Functional test for ListMultipartUploads | Quentin Dufour | 2022-03-07 | 2 | -7/+199 |
| | |||||
* | Functional tests for bucket endpoints | Quentin Dufour | 2022-03-07 | 1 | -0/+77 |
| | |||||
* | Functional tests for object operations | Quentin Dufour | 2022-03-07 | 6 | -1/+274 |
| | |||||
* | Move ListObjects tests to Rust | Quentin Dufour | 2022-03-07 | 2 | -0/+433 |
| | |||||
* | garage(tests): Remove RNG stuff | Jill | 2022-02-11 | 3 | -16/+1 |
| | |||||
* | garage(tests): Remove superfluous test | Jill | 2022-02-10 | 1 | -30/+0 |
| | |||||
* | garage(tests): Add random suffix to created buckets. | Jill | 2022-02-10 | 4 | -9/+31 |
| | |||||
* | garage(tests): Add some unsafe-usage doc and tweaks | Jill | 2022-02-10 | 1 | -5/+8 |
| | |||||
* | Add integration tests to Drone | Quentin Dufour | 2022-02-10 | 1 | -1/+7 |
| | |||||
* | tests: Fix garage integration test | Jill | 2022-02-10 | 2 | -7/+3 |
| | |||||
* | tests: Add garage integration tests (base) | Jill | 2022-02-10 | 9 | -0/+428 |
| | |||||
* | Hide deleted key in bucket info (fix #211) | Alex Auvolat | 2022-02-02 | 1 | -0/+3 |
| | |||||
* | Allow setting index document and error document on the CLI | Alex Auvolat | 2022-01-13 | 2 | -2/+10 |
| | |||||
* | Implement ListMultipartUploads (#171) | Quentin | 2022-01-12 | 1 | -1/+2 |
| | | | | | | | | | | | | | | | | | | | | | | | Implement ListMultipartUploads, also refactor ListObjects and ListObjectsV2. It took me some times as I wanted to propose the following things: - Using an iterator instead of the loop+goto pattern. I find it easier to read and it should enable some optimizations. For example, when consuming keys of a common prefix, we do many [redundant checks](https://git.deuxfleurs.fr/Deuxfleurs/garage/src/branch/main/src/api/s3_list.rs#L125-L156) while the only thing to do is to [check if the following key is still part of the common prefix](https://git.deuxfleurs.fr/Deuxfleurs/garage/src/branch/feature/s3-multipart-compat/src/api/s3_list.rs#L476). - Try to name things (see ExtractionResult and RangeBegin enums) and to separate concerns (see ListQuery and Accumulator) - An IO closure to make unit tests possibles. - Unit tests, to track regressions and document how to interact with the code - Integration tests with `s3api`. In the future, I would like to move them in Rust with the aws rust SDK. Merging of the logic of ListMultipartUploads and ListObjects was not a goal but a consequence of the previous modifications. Some points that we might want to discuss: - ListObjectsV1, when using pagination and delimiters, has a weird behavior (it lists multiple times the same prefix) with `aws s3api` due to the fact that it can not use our optimization to skip the whole prefix. It is independant from my refactor and can be tested with the commented `s3api` tests in `test-smoke.sh`. It probably has the same weird behavior on the official AWS S3 implementation. - Considering ListMultipartUploads, I had to "abuse" upload id marker to support prefix skipping. I send an `upload-id-marker` with the hardcoded value `include` to emulate your "including" token. - Some ways to test ListMultipartUploads with existing software (my tests are limited to s3api for now). Co-authored-by: Quentin Dufour <quentin@deuxfleurs.fr> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/171 Co-authored-by: Quentin <quentin@dufour.io> Co-committed-by: Quentin <quentin@dufour.io> | ||||
* | Fix trivial bug in CLI | Alex Auvolat | 2022-01-10 | 1 | -2/+6 |
| | |||||
* | Small CLI changes | Alex Auvolat | 2022-01-05 | 1 | -5/+8 |
| | |||||
* | Implement CreateBucket | Alex Auvolat | 2022-01-05 | 1 | -8/+2 |
| | |||||
* | Implement key allow|deny --create-bucket | Alex Auvolat | 2022-01-05 | 2 | -0/+48 |
| | |||||
* | Small changes in key model and refactoringnew-buckets | Alex Auvolat | 2022-01-04 | 2 | -20/+32 |
| | |||||
* | New buckets for 0.6.0: make bucket id a SK and not a HK, CLI updates | Alex Auvolat | 2022-01-04 | 4 | -22/+51 |
| | |||||
* | New buckets for 0.6.0: small changes | Alex Auvolat | 2022-01-04 | 3 | -9/+15 |
| | | | | | | | | | | | | - Fix bucket delete - fix merge of bucket creation date - Replace deletable with option in aliases Rationale: if two aliases point to conflicting bucket, resolving by making an arbitrary choice risks making data accessible when it shouldn't be. We'd rather resolve to deleting the alias until someone puts it back. | ||||
* | Refactor logic for setting/unsetting aliases | Alex Auvolat | 2022-01-04 | 1 | -353/+129 |
| | |||||
* | Remove website redirects | Alex Auvolat | 2022-01-04 | 1 | -1/+1 |
| | |||||
* | Some movement of helper code and refactoring of error handling | Alex Auvolat | 2022-01-04 | 3 | -37/+49 |
| | |||||
* | New buckets for 0.6.0: fix model and migration | Alex Auvolat | 2022-01-04 | 1 | -2/+4 |
| | |||||
* | New buckets for 0.6.0: small fixes, including: | Alex Auvolat | 2022-01-04 | 4 | -55/+105 |
| | | | | | | | | - ensure bucket names are correct aws s3 names - when making aliases, ensure timestamps of links in both ways are the same - fix small remarks by trinity - don't have a separate website_access field | ||||
* | More complete output to bucket info and key info | Alex Auvolat | 2022-01-04 | 3 | -35/+147 |
| | |||||
* | New buckets for 0.6.0: migration code and build files | Alex Auvolat | 2022-01-04 | 3 | -0/+44 |
| | |||||
* | Model changes | Alex Auvolat | 2022-01-04 | 4 | -26/+40 |
| | |||||
* | Implement bucket alias and bucket unalias | Alex Auvolat | 2022-01-04 | 4 | -3/+231 |
| | |||||
* | New model for buckets | Alex Auvolat | 2022-01-04 | 5 | -233/+390 |
| | |||||
* | Make table name a const in trait | Alex Auvolat | 2021-12-15 | 1 | -1/+1 |
| | |||||
* | Improve how node roles are assigned in Garagev0.5-beta1 | Alex Auvolat | 2021-11-16 | 7 | -192/+465 |
| | | | | | | | | | | | | | | | | | - 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. | ||||
* | Safety: never voluntarily delete block in 10min interval after RC reaches zero | Alex Auvolat | 2021-11-08 | 2 | -3/+2 |
| | |||||
* | Add tranquilizer mechanism to improve on token bucket mechanismtranquility | Alex Auvolat | 2021-11-04 | 2 | -5/+5 |
| | |||||
* | Add environment variables equivalents for some CLI options. | Jill | 2021-11-03 | 1 | -3/+8 |
| | |||||
* | Refactoring on repair commandscli-verify-integrity | Alex Auvolat | 2021-10-27 | 2 | -52/+34 |
| | |||||
* | add cli parameter to verify local bloc integrity | Trinity Pointard | 2021-10-27 | 2 | -0/+15 |
| | | | | | reuse code for listing local blocks add disk i/o speed limit on integrity check | ||||
* | CLI: default rpc_hostv0.4-rc1 | Alex Auvolat | 2021-10-26 | 2 | -8/+25 |
| | |||||
* | Use published netapp crate instead of git repo | Alex Auvolat | 2021-10-26 | 1 | -1/+2 |
| | |||||
* | Fix clippy lints (fix #121) | Alex Auvolat | 2021-10-26 | 1 | -1/+1 |
| | |||||
* | Improve CLI, adapt tests, update documentation | Alex Auvolat | 2021-10-25 | 9 | -685/+800 |
| | |||||
* | Improvements to CLI and various fixes for netapp version | Alex Auvolat | 2021-10-22 | 4 | -136/+156 |
| | | | | Discovery via consul, persist peer list to file | ||||
* | First port of Garage to Netapp | Alex Auvolat | 2021-10-22 | 5 | -218/+206 |
| | |||||
* | Build Garage with Nixfeature/static | Quentin Dufour | 2021-10-19 | 1 | -2/+2 |
| | |||||
* | Fix git_version!() when not in git repo (fix #100) | Alex Auvolat | 2021-10-11 | 1 | -1/+5 |
| | |||||
* | try parsing rpc-host command-line parameter | Trinity Pointard | 2021-06-01 | 1 | -1/+10 |
| | |||||
* | format garage status output better | Trinity Pointard | 2021-06-01 | 1 | -22/+59 |
| | |||||
* | make most changes suggested during install-party | Trinity Pointard | 2021-05-29 | 1 | -1/+1 |
| | |||||
* | Prepare for v0.3.0 and add migration path from v0.2.1.xv0.3.0 | Alex Auvolat | 2021-05-28 | 2 | -13/+9 |
| |