mirror of
https://github.com/bartvdbraak/keyweave.git
synced 2025-04-28 07:11:21 +00:00
fix: debug secret values
This commit is contained in:
parent
88e8ea974a
commit
6539d6f8d3
1 changed files with 26 additions and 16 deletions
42
src/main.rs
42
src/main.rs
|
@ -39,25 +39,35 @@ async fn fetch_secrets_from_key_vault(
|
||||||
filter: Option<&str>,
|
filter: Option<&str>,
|
||||||
) -> Result<Vec<(String, String)>, Box<dyn std::error::Error>> {
|
) -> Result<Vec<(String, String)>, Box<dyn std::error::Error>> {
|
||||||
let credential = DefaultAzureCredential::default();
|
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_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)
|
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<()> {
|
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<dyn std::error::Error>> {
|
async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||||
let opts: Opts = Opts::parse();
|
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);
|
println!("Fetching secrets from Key Vault: {}", opts.vault_name);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue