feat(tvix/store): Add a signing PathInfoService
- Add a new PathInfoService implementation that wraps transparently around another except that it dynamically signs all the incoming path-infos with the provided signer. - Add a ServiceBuilder for this PathInfoService that provides a SigningPathInfoService with a keyfile signer Change-Id: I845ddfdf01d14c503c796b2b80c720dab98be091 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12032 Reviewed-by: flokli <flokli@flokli.de> Autosubmit: sinavir <tvix@sinavir.fr> Tested-by: BuildkiteCI
This commit is contained in:
parent
e4378f0143
commit
9f36632509
6 changed files with 225 additions and 0 deletions
|
|
@ -14,6 +14,8 @@ use crate::proto::PathInfo;
|
|||
use crate::tests::fixtures::DUMMY_PATH_DIGEST;
|
||||
use tvix_castore::proto as castorepb;
|
||||
|
||||
use crate::pathinfoservice::test_signing_service;
|
||||
|
||||
mod utils;
|
||||
pub use self::utils::make_grpc_path_info_service_client;
|
||||
|
||||
|
|
@ -29,6 +31,7 @@ use self::utils::make_bigtable_path_info_service;
|
|||
})]
|
||||
#[case::sled(SledPathInfoService::new_temporary().unwrap())]
|
||||
#[case::redb(RedbPathInfoService::new_temporary().unwrap())]
|
||||
#[case::signing(test_signing_service())]
|
||||
#[cfg_attr(all(feature = "cloud",feature="integration"), case::bigtable(make_bigtable_path_info_service().await))]
|
||||
pub fn path_info_services(#[case] svc: impl PathInfoService) {}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue