aboutsummaryrefslogtreecommitdiff
path: root/src/garage/cli/structs.rs
Commit message (Collapse)AuthorAgeFilesLines
* Ability to dynamically set resync tranquilityAlex Auvolat2022-09-021-0/+16
|
* Configure structopt to report the right versionv0.7.2_ci-test-2bug/reported-versionQuentin Dufour2022-08-111-50/+51
| | | | | | | | | | By default, structopt reports the value provided by the env var CARGO_PKG_VERSION, feeded by Cargo when reading Cargo.toml. However for Garage we use a versioning based on git, so we often report a version that is behind the real version. In this commit, we create garage_util::version::garage() that reports the right version and configure all structopt subcommands to call this function instead of using the env var.
* Background task manager (#332)Alex2022-07-081-2/+53
| | | | | | | | | | | | | | | | | | | | | - [x] New background worker trait - [x] Adapt all current workers to use new API - [x] Command to list currently running workers, and whether they are active, idle, or dead - [x] Error reporting - Optimizations - [x] Merkle updater: several items per iteration - [ ] Use `tokio::task::spawn_blocking` where appropriate so that CPU-intensive tasks don't block other things going on - scrub: - [x] have only one worker with a channel to start/pause/cancel - [x] automatic scrub - [x] ability to view and change tranquility from CLI - [x] persistence of a few info - [ ] Testing Co-authored-by: Alex Auvolat <alex@adnab.me> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/332 Co-authored-by: Alex <alex@adnab.me> Co-committed-by: Alex <alex@adnab.me>
* improve internal item counter mechanisms and implement bucket quotas (#326)Alex2022-06-151-1/+46
| | | | | | | | | | | | | | | | - [x] Refactoring of internal counting API - [x] Repair procedure for counters (it's an offline procedure!!!) - [x] New counter for objects in buckets - [x] Add quotas to buckets struct - [x] Add CLI to manage bucket quotas - [x] Add admin API to manage bucket quotas - [x] Apply quotas by adding checks on put operations - [x] Proof-read Co-authored-by: Alex Auvolat <alex@adnab.me> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/326 Co-authored-by: Alex <alex@adnab.me> Co-committed-by: Alex <alex@adnab.me>
* Allow `garage layout assign` to assign to several nodes at onceAlex Auvolat2022-03-241-2/+3
|
* Allow setting index document and error document on the CLIAlex Auvolat2022-01-131-0/+8
|
* Implement key allow|deny --create-bucketAlex Auvolat2022-01-051-0/+18
|
* New buckets for 0.6.0: migration code and build filesAlex Auvolat2022-01-041-0/+22
|
* Model changesAlex Auvolat2022-01-041-0/+5
|
* Implement bucket alias and bucket unaliasAlex Auvolat2022-01-041-0/+31
|
* Improve how node roles are assigned in Garagev0.5-beta1Alex Auvolat2021-11-161-24/+54
| | | | | | | | | | | | | | | | | - 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 zeroAlex Auvolat2021-11-081-2/+1
|
* Add tranquilizer mechanism to improve on token bucket mechanismtranquilityAlex Auvolat2021-11-041-3/+3
|
* Refactoring on repair commandscli-verify-integrityAlex Auvolat2021-10-271-3/+3
|
* add cli parameter to verify local bloc integrityTrinity Pointard2021-10-271-0/+7
| | | | | reuse code for listing local blocks add disk i/o speed limit on integrity check
* Improve CLI, adapt tests, update documentationAlex Auvolat2021-10-251-0/+296