Mountain/RPC/CocoonService/Secret/
StoreSecret.rs1use tonic::{Response, Status};
4use CommonLibrary::Secret::SecretProvider::SecretProvider;
5use ::Vine::Generated::{Empty, StoreSecretRequest};
6
7use crate::{RPC::CocoonService::CocoonServiceImpl, dev_log};
8
9pub async fn Fn(Service:&CocoonServiceImpl, Request:StoreSecretRequest) -> Result<Response<Empty>, Status> {
10 dev_log!("cocoon", "[CocoonService] store_secret: key={}", Request.key);
11
12 match Service
13 .environment
14 .StoreSecret(String::new(), Request.key.clone(), Request.value)
15 .await
16 {
17 Ok(()) => Ok(Response::new(Empty {})),
18
19 Err(Error) => {
20 dev_log!(
21 "cocoon",
22 "warn: [CocoonService] store_secret failed key={}: {}",
23 Request.key,
24 Error
25 );
26
27 Err(Status::internal(format!("store_secret: {}", Error)))
28 },
29 }
30}