use stack_auth::{AuthStrategy, AutoStrategy};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
tracing_subscriber::fmt::init();
let strategy = AutoStrategy::detect()?;
match &strategy {
AutoStrategy::AccessKey(_) => println!("Using access key authentication"),
AutoStrategy::OAuth(_) => println!("Using OAuth authentication"),
}
let token = (&strategy).get_token().await?;
println!("Subject: {}", token.subject()?);
println!("Workspace: {}", token.workspace_id()?);
println!("Issuer: {}", token.issuer()?);
Ok(())
}