build: upgraded to the most recent Azure SDK version
This commit is contained in:
Generated
+562
-469
File diff suppressed because it is too large
Load Diff
+4
-3
@@ -32,7 +32,7 @@ clap = { version = "4.5.47", features = [
|
||||
"wrap_help",
|
||||
] }
|
||||
clap_complete = { version = "4.5.57", features = ["unstable-dynamic"] }
|
||||
confy = { version = "1.0.0", default-features = false, features = [
|
||||
confy = { version = "2.0.0", default-features = false, features = [
|
||||
"yaml_conf",
|
||||
] }
|
||||
crossterm = "0.29.0"
|
||||
@@ -62,8 +62,9 @@ gcloud-sdk = { version = "0.28.1", features = [
|
||||
"google-cloud-secretmanager-v1",
|
||||
] }
|
||||
crc32c = "0.6.8"
|
||||
azure_identity = "0.27.0"
|
||||
azure_security_keyvault_secrets = "0.6.0"
|
||||
azure_core = "0.31.0"
|
||||
azure_identity = "0.31.0"
|
||||
azure_security_keyvault_secrets = "0.10.0"
|
||||
aws-lc-sys = { version = "0.37.0", features = ["bindgen"] }
|
||||
which = "8.0.0"
|
||||
once_cell = "1.21.3"
|
||||
|
||||
@@ -1,11 +1,13 @@
|
||||
use crate::providers::SecretProvider;
|
||||
use anyhow::{Context, Result};
|
||||
use azure_identity::DefaultAzureCredential;
|
||||
use azure_core::credentials::TokenCredential;
|
||||
use azure_identity::DeveloperToolsCredential;
|
||||
use azure_security_keyvault_secrets::models::SetSecretParameters;
|
||||
use azure_security_keyvault_secrets::{ResourceExt, SecretClient};
|
||||
use futures::TryStreamExt;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use serde_with::skip_serializing_none;
|
||||
use std::sync::Arc;
|
||||
use validator::Validate;
|
||||
|
||||
#[skip_serializing_none]
|
||||
@@ -40,12 +42,8 @@ impl SecretProvider for AzureKeyVaultProvider {
|
||||
}
|
||||
|
||||
async fn get_secret(&self, key: &str) -> Result<String> {
|
||||
let body = self
|
||||
.get_client()?
|
||||
.get_secret(key, "", None)
|
||||
.await?
|
||||
.into_body()
|
||||
.await?;
|
||||
let response = self.get_client()?.get_secret(key, None).await?;
|
||||
let body = response.into_model()?;
|
||||
|
||||
body.value
|
||||
.with_context(|| format!("Secret '{}' not found", key))
|
||||
@@ -60,8 +58,7 @@ impl SecretProvider for AzureKeyVaultProvider {
|
||||
self.get_client()?
|
||||
.set_secret(key, params.try_into()?, None)
|
||||
.await?
|
||||
.into_body()
|
||||
.await?;
|
||||
.into_model()?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
@@ -77,10 +74,7 @@ impl SecretProvider for AzureKeyVaultProvider {
|
||||
}
|
||||
|
||||
async fn list_secrets(&self) -> Result<Vec<String>> {
|
||||
let mut pager = self
|
||||
.get_client()?
|
||||
.list_secret_properties(None)?
|
||||
.into_stream();
|
||||
let mut pager = self.get_client()?.list_secret_properties(None)?;
|
||||
let mut secrets = Vec::new();
|
||||
while let Some(props) = pager.try_next().await? {
|
||||
let name = props.resource_id()?.name;
|
||||
@@ -93,7 +87,7 @@ impl SecretProvider for AzureKeyVaultProvider {
|
||||
|
||||
impl AzureKeyVaultProvider {
|
||||
fn get_client(&self) -> Result<SecretClient> {
|
||||
let credential = DefaultAzureCredential::new()?;
|
||||
let credential: Arc<dyn TokenCredential> = DeveloperToolsCredential::new(None)?;
|
||||
let client = SecretClient::new(
|
||||
format!(
|
||||
"https://{}.vault.azure.net",
|
||||
|
||||
Reference in New Issue
Block a user