Commit Graph

559 Commits

Author SHA1 Message Date
Alex 398ddb1300
Version 0.5.1 for publication to crates.io
continuous-integration/drone/tag Build is passing Details
continuous-integration/drone Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-12-16 13:21:52 +01:00
trinity-1686a 945b75dbf1 update s3 compatibility list (#177)
continuous-integration/drone/push Build is passing Details
Co-authored-by: Trinity Pointard <trinity.pointard@gmail.com>
Reviewed-on: #177
Co-authored-by: trinity-1686a <trinity.pointard@gmail.com>
Co-committed-by: trinity-1686a <trinity.pointard@gmail.com>
2021-12-15 15:05:54 +01:00
trinity-1686a ca7b438f3f less strict ListBuckets (#178)
continuous-integration/drone/push Build is passing Details
fix #175

Co-authored-by: Trinity Pointard <trinity.pointard@gmail.com>
Reviewed-on: #178
Co-authored-by: trinity-1686a <trinity.pointard@gmail.com>
Co-committed-by: trinity-1686a <trinity.pointard@gmail.com>
2021-12-15 15:05:36 +01:00
trinity-1686a 1eb972b1ac Add compression using zstd (#173)
continuous-integration/drone/push Build is passing Details
fix #27

Co-authored-by: Trinity Pointard <trinity.pointard@gmail.com>
Reviewed-on: #173
Co-authored-by: trinity-1686a <trinity.pointard@gmail.com>
Co-committed-by: trinity-1686a <trinity.pointard@gmail.com>
2021-12-15 11:26:43 +01:00
trinity-1686a 60d4459926 BucketWebsite (#174)
continuous-integration/drone/push Build is passing Details
fix #77

this does not store anything but a on/off switch for website, and does not implement GetBucketWebsite as it would require storing more. GetBucketWebsite should be pretty easy to implement once data is stored though.

Co-authored-by: Trinity Pointard <trinity.pointard@gmail.com>
Reviewed-on: #174
Co-authored-by: trinity-1686a <trinity.pointard@gmail.com>
Co-committed-by: trinity-1686a <trinity.pointard@gmail.com>
2021-12-15 10:41:39 +01:00
Quentin 3b3a1f275f
Add a second plot
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-12-13 11:58:03 +01:00
Quentin dba9af2968
Update benchmark
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-12-09 18:42:45 +01:00
Quentin e9358054ac
Typos and dead links
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-12-08 14:40:14 +01:00
Quentin f9e5520ffb
Add a benchmark page with a first benchmark
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-12-08 11:30:07 +01:00
Alex 4b369347c0
S3 compatibility target
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/tag Build is passing Details
continuous-integration/drone Build encountered an error Details
2021-12-06 17:18:45 +01:00
Alex 224c89ad6e
Reorganize and improve documentation
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-12-06 16:33:01 +01:00
Quentin 7c2037ba87
WIP front page garage 2021-12-06 15:33:43 +01:00
trinity-1686a c4ac8835d3 add proper request router for s3 api (#163)
continuous-integration/drone/push Build is passing Details
fix #161

Current request router was organically grown, and is getting messier and messier with each addition.
This router cover exaustively existing API endpoints (with exceptions listed in [#161(comment)](#161 (comment)) either because new and old api endpoint can't feasabily be differentied, or it's more lambda than s3).

Co-authored-by: Trinity Pointard <trinity.pointard@gmail.com>
Reviewed-on: #163
Reviewed-by: Alex <alex@adnab.me>
Co-authored-by: trinity-1686a <trinity.pointard@gmail.com>
Co-committed-by: trinity-1686a <trinity.pointard@gmail.com>
2021-12-06 15:17:47 +01:00
Alex ccce75bc25
Remove TODO and genkeys.sh
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-12-06 13:15:50 +01:00
trinity-1686a 7f26ed55cd Improved handling of HTTP ranges
continuous-integration/drone/push Build is failing Details
- correct HTTP code when range syntax is invalid (fix #140)
- when multiple ranges are given, simply ignore and send whole file

Co-authored-by: Trinity Pointard <trinity.pointard@gmail.com>
Reviewed-on: #157
Reviewed-by: Alex <alex@adnab.me>
Co-authored-by: trinity-1686a <trinity.pointard@gmail.com>
Co-committed-by: trinity-1686a <trinity.pointard@gmail.com>
2021-11-29 11:52:42 +01:00
Quentin 8811bb08e6
In ListBuckets, hide entry if no perms
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-11-22 12:10:28 +01:00
Quentin 85b2e4ca29
Start socat only once
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/tag Build is passing Details
continuous-integration/drone Build is passing Details
Fixes #124
2021-11-17 10:59:32 +01:00
Alex c94406f428
Improve how node roles are assigned in Garage
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/tag Build is passing Details
continuous-integration/drone/push Build is passing Details
continuous-integration/drone Build is passing Details
- 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
Trinity Pointard 53888995bd update doc and comments
continuous-integration/drone/push Build is passing Details
2021-11-16 15:41:41 +01:00
Trinity Pointard f0893b904d update cargo.nix 2021-11-16 15:41:41 +01:00
Trinity Pointard 396fe4c702 clippy 2021-11-16 15:41:41 +01:00
Trinity Pointard 02158ee666 fix issue where list on vhost-bucket would list bucket instead of bucket content 2021-11-16 15:41:41 +01:00
Trinity Pointard 57df9c6e2d add s3_api.root_domain to doc book 2021-11-16 15:41:41 +01:00
Trinity Pointard 9c58ec28d3 add support for vhost-style s3 bucket 2021-11-16 15:41:41 +01:00
adrien cdeb5b4dbb added link to RFID Garage talk (#155)
continuous-integration/drone/push Build is passing Details
Co-authored-by: ADRN <adrien@luxeylab.net>
Reviewed-on: #155
Co-authored-by: adrien <adrien@luxeylab.net>
Co-committed-by: adrien <adrien@luxeylab.net>
2021-11-16 15:39:08 +01:00
Quentin 100aad8bf4
Add rclone mount doc
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
continuous-integration/drone Build is passing Details
2021-11-10 18:38:17 +01:00
Quentin 80a87929b0
Improve CLI documentation
continuous-integration/drone/push Build is passing Details
2021-11-10 18:18:34 +01:00
Quentin 76d21be1b9
Add skeleton for backups, fuse and code sections
continuous-integration/drone/push Build is passing Details
2021-11-10 18:05:07 +01:00
Quentin 1928f59d54
Add documentation for Gitea.
continuous-integration/drone/push Build is passing Details
2021-11-10 12:41:09 +01:00
Quentin 323514be15
Documentation for Nix binary cache 2021-11-10 10:02:22 +01:00
Quentin ad8d5139cf
hugo deploy does not build website, fix doc 2021-11-10 10:02:22 +01:00
Alex 08b1e8a7ea
Move design draft to separate file; write about GC in internals
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/tag Build is passing Details
continuous-integration/drone Build is passing Details
2021-11-09 12:25:33 +01:00
Alex ad7ab31411
Implement GC delay for table data
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2021-11-08 15:47:47 +01:00
Alex 74a7a550eb
Safety: never voluntarily delete block in 10min interval after RC reaches zero 2021-11-08 15:47:47 +01:00
Alex cc255d46cd
Refactor and comment table GC logic 2021-11-08 15:47:44 +01:00
Quentin 8e25a37f0e
Add documentation for nginx
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-11-08 12:20:40 +01:00
Quentin e342db19aa
Add documentation about Gateways 2021-11-08 12:20:40 +01:00
Quentin f3405b6378
Doc about exposing your website 2021-11-08 12:20:40 +01:00
Quentin 860ccf2811
Harden Garage's systemd service 2021-11-08 12:20:40 +01:00
Quentin 9df7559446
Documentation for hugo, jekyll and publii 2021-11-08 12:20:40 +01:00
Quentin a97467075d
Add documentation for synapse-s3-storage-provider 2021-11-08 12:20:40 +01:00
Trinity Pointard 9d7535c3f5 allow missing bootstrap_peers in garage.toml
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-11-05 16:36:25 +01:00
Trinity Pointard da6efb4b23 fix missing bootstrap_peers in doc
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-11-05 11:21:50 +01:00
Alex e8811f7c9d
Request strategy: don't launch all 3 requests if not needed
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/tag Build is passing Details
continuous-integration/drone Build is passing Details
2021-11-04 16:19:27 +01:00
Alex 2090a6187f
Add tranquilizer mechanism to improve on token bucket mechanism
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-11-04 13:26:59 +01:00
Alex 6f13d083ab
Add semaphore to limit RAM used by buffered outgoing requests
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
continuous-integration/drone Build is passing Details
2021-11-03 18:02:57 +01:00
Alex 8c4f418fe8
Fix peer list persistence: do not forget previous peers
continuous-integration/drone/pr Build was killed Details
continuous-integration/drone Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-11-03 17:34:44 +01:00
Jill bef6d627b0 Add environment variables equivalents for some CLI options.
continuous-integration/drone/push Build is passing Details
2021-11-03 16:00:57 +01:00
Quentin e93d7fb228
Add Peertube + improve CLI instructions
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2021-11-03 14:39:14 +01:00
Quentin eaf54efb25
Add doc for Nextcloud 2021-11-03 14:07:55 +01:00