feat(tvix/store): add bigtable pathinfoservice backend

Put behind the "cloud" backend, like in the `tvix-castore` crate.

Change-Id: Ib38d198baf11ab2a4b6dc405121676147c424611
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11362
Autosubmit: flokli <flokli@flokli.de>
Reviewed-by: Connor Brewster <cbrewster@hey.com>
Tested-by: BuildkiteCI
This commit is contained in:
Florian Klink 2024-04-05 16:54:50 +03:00 committed by clbot
parent d6cadee941
commit fbf31f45ef
8 changed files with 499 additions and 7 deletions

View file

@ -20,6 +20,9 @@ prost = "0.12.1"
opentelemetry = { version = "0.21.0", optional = true}
opentelemetry-otlp = { version = "0.14.0", optional = true }
opentelemetry_sdk = { version = "0.21.0", features = ["rt-tokio"], optional = true}
serde = { version = "1.0.197", features = [ "derive" ] }
serde_with = "3.7.0"
serde_qs = "0.12.0"
sha2 = "0.10.6"
sled = { version = "0.34.7" }
thiserror = "1.0.38"
@ -43,11 +46,18 @@ xz2 = "0.1.7"
optional = true
version = "0.11.0"
[dependencies.bigtable_rs]
optional = true
# https://github.com/liufuyang/bigtable_rs/pull/72
git = "https://github.com/flokli/bigtable_rs"
rev = "0af404741dfc40eb9fa99cf4d4140a09c5c20df7"
[build-dependencies]
prost-build = "0.12.1"
tonic-build = "0.11.0"
[dev-dependencies]
async-process = "2.1.0"
rstest = "0.18.2"
rstest_reuse = "0.6.0"
test-case = "3.3.1"
@ -56,7 +66,10 @@ tokio-retry = "0.3.0"
[features]
default = ["cloud", "fuse", "otlp", "tonic-reflection"]
cloud = ["tvix-castore/cloud"]
cloud = [
"dep:bigtable_rs",
"tvix-castore/cloud"
]
fuse = ["tvix-castore/fuse"]
otlp = ["dep:opentelemetry", "dep:opentelemetry-otlp", "dep:opentelemetry_sdk"]
tonic-reflection = ["dep:tonic-reflection", "tvix-castore/tonic-reflection"]