a83a092c03
admin: uniformize layout api and improve code
2023-06-14 17:12:37 +02:00
7895f99d3a
admin and cli: hide secret keys unless asked
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-06-14 16:56:15 +02:00
4a82f6380e
admin api: move all endpoints to v1/ by default (v0/ still supported)
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-06-14 14:15:51 +02:00
28cc9f178a
admin api: make name optionnal for CreateKey
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-06-14 13:56:37 +02:00
35c108b85d
admin api: switch GetClusterHealth to camelcase ( fix #381 again)
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-06-14 13:53:19 +02:00
52376d47ca
admin api: change cluster status/layout to use lists and not maps ( fix #377 )
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-06-14 13:45:27 +02:00
5670367126
multipartupload in test: add forgotten timestamp
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-06-13 23:10:46 +02:00
cda957b4b1
update netapp's rmp-serde dependency to v1.1
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-06-13 17:34:49 +02:00
90b2d43eb4
Merge branch 'main' into next
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-06-13 17:14:11 +02:00
eb9cecf05c
Split garage/admin.rs into smaller files
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-06-13 16:46:28 +02:00
802ed75721
move admin.rs to admin/mod.rs, before splitting
2023-06-13 16:42:14 +02:00
bf19a44fd9
admin API: add missing camelCase conversions ( fix #381 )
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-06-13 16:15:50 +02:00
7126f3e1d1
garage key import: add checks and --yes
CLI flag ( fix #278 )
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-06-13 15:56:48 +02:00
942c1f1bfe
multipart uploads: save timestamp
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-06-13 10:48:22 +02:00
1ea4937c8b
fix timestamps wrapping around in garage block list-errors
( fix #584 )
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-06-12 20:07:33 +02:00
3d477906d4
properly delete multipart uploads after completion
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-06-09 17:13:27 +02:00
a6cc563bdd
UploadPart: automatic cleanup of version (and reference blocked) when interrupted
2023-06-09 16:23:37 +02:00
c14d3735e5
Add test for multipart uploads and fix part renumbering
2023-06-09 16:23:37 +02:00
53bf2f070c
undo sort_key() returning Cow
2023-06-09 16:23:37 +02:00
412ab77b08
comments and clippy lint fixes
2023-06-09 16:23:37 +02:00
511e07ecd4
fix mpu counter (add missing workers) and report info at appropriate places
2023-06-09 16:23:37 +02:00
4ea53dc759
Add multipart upload repair
2023-06-09 16:23:37 +02:00
058518c22b
refactor repair workers with a trait
2023-06-09 16:23:37 +02:00
8644376ac2
fix test; simplify code
2023-06-09 16:23:37 +02:00
7ad7dae5d4
fix s3 list test
2023-06-09 16:23:37 +02:00
75a0e01372
fix online repair
2023-06-09 16:23:37 +02:00
bb176ebcb8
cargo fmt
2023-06-09 16:23:37 +02:00
87be8eeb93
updaet block admin for new multipartupload models
2023-06-09 16:23:37 +02:00
82e75c0e29
Adapt S3 API code to use new multipart upload models
...
- Create and PutPart
- completemultipartupload
- upload part copy
- list_parts
2023-06-09 16:23:37 +02:00
38d6ac4295
New multipart upload table layout
2023-06-09 16:23:37 +02:00
6005491cd8
Use Cow<[u8]> for sort keys
2023-06-09 16:23:37 +02:00
e7e164a280
Make fsync an option for meta and data
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is passing
2023-06-09 16:23:21 +02:00
1e466b11eb
Revert integration tests to using Sled as LMDB causes failures
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is passing
2023-06-09 13:23:08 +02:00
Jonathan Davies
8a945ee996
payload.rs: Surround / in inverted commas.
continuous-integration/drone/pr Build is passing
2023-06-06 16:26:06 +01:00
Jonathan Davies
180992d0f1
payload.rs: Fixed typo in error message.
2023-06-06 16:25:29 +01:00
8a74e1c2bd
Split garage/admin.rs into smaller files
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-06-06 15:39:15 +02:00
Roberto Hidalgo
ef8a7add08
set default for [consul-services] api
2023-05-22 08:57:15 -06:00
Roberto Hidalgo
b770504126
simplify code according to feedback
2023-05-22 08:57:15 -06:00
Roberto Hidalgo
6b69404f1a
rename mode to consul_http_api
2023-05-22 08:57:15 -06:00
Roberto Hidalgo
011f473048
revert rpc/Cargo.toml
2023-05-22 08:57:15 -06:00
Roberto Hidalgo
fd7dbea5b8
follow feedback, fold into existing feature
2023-05-22 08:57:15 -06:00
Roberto Hidalgo
bd6485565e
allow additional ServiceMeta, docs
2023-05-22 08:57:15 -06:00
Roberto Hidalgo
4d6e6fc155
cargo fmt
2023-05-22 08:57:15 -06:00
Roberto Hidalgo
02ba9016ab
register consul services against local agent instead of catalog api
2023-05-22 08:57:15 -06:00
c3d3b837eb
bump k2v-client to v0.0.4
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-05-22 10:47:15 +02:00
130e01505b
Fix k2v_client with unicode in partition keys
2023-05-22 10:45:09 +02:00
e2ce5970c6
Add basic k2v_client integration tests
2023-05-22 10:45:06 +02:00
644e872264
Port k2v-client to aws-sigv4 since rusoto_signature is deprecated
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-05-19 12:08:29 +02:00
4420db7310
add tracing to k2v-client
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-05-18 11:18:21 +02:00
746b0090e4
k2v signature verification: double urlencoding (see comment in source code)
2023-05-18 11:18:06 +02:00
19639705e6
Mark sled as deprecated, make lmdb default, and improve sqlite and lmdb defaults
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-05-17 14:30:53 +02:00
217d429937
fix clippy lint in format-table crate
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
continuous-integration/drone/pr Build is passing
2023-05-17 13:06:37 +02:00
a1cec2cd60
Split format_table into separate crate and reduce k2v-client dependencies
continuous-integration/drone/push Build was killed
continuous-integration/drone/tag Build was killed
continuous-integration/drone/pr Build was killed
2023-05-17 13:01:37 +02:00
16f2a32bb7
cargo fmt
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-05-16 19:46:57 +02:00
472444ed8e
k2v-client 0.0.2
2023-05-16 19:46:57 +02:00
bb03805b58
k2v-cli: fix sort_key being partition_key and specify which key
2023-05-16 19:46:57 +02:00
e4f955d672
fix base64 uses
2023-05-16 19:46:56 +02:00
ea9b15f669
Merge pull request 'cargo: tokio-1.28 and hyper-0.14.26 update' ( #569 ) from jpds/garage:tokio-1.28 into main
...
continuous-integration/drone/push Build is passing
Reviewed-on: #569
2023-05-11 10:16:33 +00:00
Jonathan Davies
c783194e8b
*: apply clippy recommendations.
continuous-integration/drone/pr Build is passing
2023-05-09 20:49:34 +01:00
Jonathan Davies
0f0795103d
block/Cargo.toml: Bump tokio-util to 0.7.
2023-05-09 14:33:21 +01:00
Jonathan Davies
c9d26e8c50
k2v-client/Cargo.toml: Make tokio dep match other packages.
2023-05-09 14:33:00 +01:00
351d734e6c
Merge branch 'main' into next
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-05-09 12:40:08 +02:00
b925f53dc3
Merge pull request 'move git-version dependency to main crate to reduce rebuilds' ( #568 ) from move-git-version into main
...
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is passing
Reviewed-on: #568
2023-05-09 09:53:33 +00:00
2f495575d8
Merge pull request 'block/manager.rs: Prioritize raw blocks when no compression configured' ( #566 ) from jpds/garage:skip-compressed-blocks-scrub-no-compression into main
...
continuous-integration/drone/push Build is passing
Reviewed-on: #566
2023-05-09 09:39:48 +00:00
9e0a9c1c15
move git-version dependency to main crate to reduce rebuilds
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-05-09 11:35:32 +02:00
Jonathan Davies
9c788059e2
block/manager.rs: In is_block_compressed - check which compression_level
...
continuous-integration/drone/pr Build is passing
is configured on a node and check for raw block first if compression is
disabled (to help reduce syscalls during a scrub).
2023-05-09 10:28:19 +01:00
5684e1990c
Merge pull request 'Really allow to disable sled
feature' ( #563 ) from jirutka/garage:workspace-deps into main
...
continuous-integration/drone/push Build is passing
Reviewed-on: #563
2023-05-09 09:08:35 +00:00
14c50f2f84
Merge pull request 'Fix undefined macro warn! on 32-bit' ( #562 ) from jirutka/garage:fix-undefined-warn into main
...
continuous-integration/drone/push Build is passing
Reviewed-on: #562
2023-05-09 08:52:11 +00:00
d2deee0b8b
Declare garage crates using workspace.dependencies
...
This will allow to really disable "sled" feature without declaring
`default-features = false` in every Cargo.toml where garage_db and
garage_model is used.
See https://doc.rust-lang.org/cargo/reference/workspaces.html#the-dependencies-table
2023-05-09 08:46:15 +00:00
6d3ace1ea9
Fix undefined macro warn! on 32-bit
...
continuous-integration/drone/pr Build is passing
Compiling garage_db v0.8.2 (garage-0.8.2/src/db)
error: cannot find macro `warn` in this scope
--> src/db/lmdb_adapter.rs:352:2
|
352 | warn!("LMDB is not recommended on 32-bit systems, database size will be limited");
| ^^^^
|
= help: consider importing this macro:
tracing::warn
= note: `warn` is in scope, but it is an attribute: `#[warn]`
error: could not compile `garage_db` due to previous error
2023-05-07 17:01:44 +02:00
833cf082da
Remove unnecessary/unused "timeago" features
...
continuous-integration/drone/pr Build is passing
To decrease dependency bloat and binary size.
2023-05-07 01:03:54 +02:00
fa78d806e3
Merge branch 'main' into next
2023-04-25 12:34:26 +02:00
a16eb7e4b8
Merge pull request 'api/Cargo.toml: Bumped quick-xml to version 0.26.' ( #552 ) from jpds/garage:quick-xml-0.26 into main
...
continuous-integration/drone/push Build is passing
Reviewed-on: #552
2023-04-24 09:00:00 +00:00
Jonathan Davies
fb3bd11dce
block/repair.rs: Added log entries for scrub start/finish.
continuous-integration/drone/pr Build is passing
2023-04-23 22:22:26 +01:00
Jonathan Davies
c168383113
api/Cargo.toml: Bumped quick-xml to version 0.26.
continuous-integration/drone/pr Build is failing
2023-04-23 20:14:28 +01:00
000006d689
obsolete clippy lints
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
continuous-integration/drone/tag Build is passing
continuous-integration/drone Build was killed
2023-03-13 18:50:07 +01:00
0a1ddcf630
Prepare for v0.8.2
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-03-13 18:46:31 +01:00
d6ffa57f40
Merge pull request 'Increase Garage tests robustness' ( #526 ) from tests/increase-robustness into main
...
continuous-integration/drone/push Build is failing
Reviewed-on: #526
Reviewed-by: Alex <alex@adnab.me>
Reviewed-by: trinity-1686a <trinity.pointard@gmail.com>
2023-03-13 17:26:21 +00:00
f37ec584b6
Merge branch 'main' into rustversion-label
continuous-integration/drone/pr Build is passing
2023-03-13 16:14:13 +01:00
70b5424b99
use one key per context to isolate tests
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-03-13 15:06:05 +01:00
2687fb7fa8
do not assume Garage boots in 2sec during tests
2023-03-13 15:06:05 +01:00
teutat3s
8ad6efb338
Merge branch 'main' into pnet_datalink-0.33.0
continuous-integration/drone/pr Build is passing
2023-03-13 13:59:42 +01:00
Jonathan Davies
9ea154ae9c
admin/cluster.rs: Added rust_version.
continuous-integration/drone/pr Build is failing
2023-03-10 14:46:54 +00:00
Jonathan Davies
4421378023
garage/admin.rs: Display Rust version in stats output.
2023-03-10 14:46:54 +00:00
Jonathan Davies
25f2a46fc3
rpc/system_metrics.rs: Added rustversion label to garage_build_info metric.
2023-03-10 14:46:44 +00:00
Jonathan Davies
d218f475cb
block/manager.rs: Set defaults for scrub_persister.
continuous-integration/drone/pr Build is passing
2023-03-09 17:08:47 +00:00
Jonathan Davies
7b65dd24e2
block/repair.rs: Added a timestamp argument to
...
continuous-integration/drone/pr Build is passing
randomize_next_scrub_run_time().
2023-03-09 16:38:41 +00:00
Jonathan Davies
b70cc0a940
block/repair.rs: Added migration for ScrubWorkerPersisted's time_next_run_scrub.
...
Fixes : #520 .
2023-03-09 16:38:36 +00:00
2dc80abbb1
Merge pull request 'block/repair.rs: Added a random element of 10 days to SCRUB_INTERVAL' ( #516 ) from jpds/garage:scrub-randomize-window into main
...
continuous-integration/drone/push Build is passing
Reviewed-on: #516
2023-03-06 14:11:25 +00:00
Jonathan Davies
148b66b843
block/manager.rs: Display scrub-next-run.
continuous-integration/drone/pr Build is passing
2023-03-06 13:43:09 +00:00
Jonathan Davies
53d09eb00f
block/repair.rs: Added function and time_next_run_scrub with a random element of
...
10 days to SCRUB_INTERVAL to help balance scrub load across cluster.
2023-03-06 13:43:04 +00:00
00dcfc97a5
Merge pull request 'web_server.rs: Log X-Forwarded-For IP' ( #504 ) from jpds/garage:web_server-log-x-forwarded-for into main
...
continuous-integration/drone/push Build is passing
Reviewed-on: #504
2023-03-06 12:33:06 +00:00
Jonathan Davies
4e0fc3d6c9
web/web_server.rs: Handle X-Forwarded-For here too.
continuous-integration/drone/pr Build is passing
2023-03-06 11:43:54 +00:00
Jonathan Davies
e4e5196066
api/generic_server.rs: Use new handle_forwarded_for_headers() function.
2023-03-06 11:43:35 +00:00
b8123fb6cd
Clearer error message when LMDB has oom error ( fix #517 )
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-03-06 11:38:49 +01:00
Jonathan Davies
ff70e09aa0
util/forwarded_headers.rs: Generalized handle_forwarded_for_headers()
...
here.
2023-03-03 19:17:40 +00:00
teutat3s
f0717dd169
Bump pnet_datalink 0.28 -> 0.33
...
continuous-integration/drone/pr Build is failing
Motivation: building garage on illumos is only possible since
pnet_datalink version 0.30
Changelog: https://github.com/libpnet/libpnet/compare/v0.28.0...v0.33.0
2023-02-28 16:06:43 +01:00
8b4d0adc75
Merge pull request 'generic_server.rs: Added support for logging X-Forwarded-For header.' ( #500 ) from jpds/garage:generic_server-log-x-forwarded-for into main
...
continuous-integration/drone/push Build is passing
Reviewed-on: #500
2023-02-06 14:20:12 +00:00
d14678e0ac
Merge pull request 'Secrets can be passed directly in config, as file, or as env' ( #499 ) from config-files-env into main
...
continuous-integration/drone/push Build is failing
Reviewed-on: #499
2023-02-06 14:18:58 +00:00
80e2326998
fixes for pr 499
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-02-06 12:23:55 +01:00