diff --git a/src/main.rs b/src/main.rs index 87b167b..43b9f4c 100644 --- a/src/main.rs +++ b/src/main.rs @@ -39,25 +39,35 @@ async fn fetch_secrets_from_key_vault( filter: Option<&str>, ) -> Result, Box> { let credential = DefaultAzureCredential::default(); - let client = KeyvaultClient::new(&vault_url, std::sync::Arc::new(credential))?; + let mut client = KeyvaultClient::new( + &vault_url, + std::sync::Arc::new(credential), + ).unwrap().secret_client(); + + let secrets = client.list_secrets().into_stream().next().await; + dbg!(&secrets); let mut secret_values = Vec::new(); - let mut secret_pages = client.secret_client().list_secrets().into_stream(); - - while let Some(page) = secret_pages.next().await { - let page = page?; - for secret in &page.value { - if let Some(filter) = filter { - if !secret.id.contains(filter) { - continue; - } - } - let secret_bundle = client.secret_client().get(&secret.id).await?; - secret_values.push((secret.id.clone(), secret_bundle.value.clone())); - } - } Ok(secret_values) + + // let mut secret_values = Vec::new(); + // let mut secret_pages = client.secret_client().list_secrets().into_stream(); + + // while let Some(page) = secret_pages.next().await { + // let page = page?; + // for secret in &page.value { + // if let Some(filter) = filter { + // if !secret.id.contains(filter) { + // continue; + // } + // } + // let secret_bundle = client.secret_client().get(&secret.id).await?; + // secret_values.push((secret.id.clone(), secret_bundle.value.clone())); + // } + // } + + // Ok(secret_values) } fn create_env_file(secrets: Vec<(String, String)>, output_file: &str) -> std::io::Result<()> { @@ -72,7 +82,7 @@ fn create_env_file(secrets: Vec<(String, String)>, output_file: &str) -> std::io async fn main() -> Result<(), Box> { let opts: Opts = Opts::parse(); - let vault_url = format!("https://{}.vault.azure.net/", opts.vault_name); + let vault_url = format!("https://{}.vault.azure.net", opts.vault_name); println!("Fetching secrets from Key Vault: {}", opts.vault_name);