Skip to main content

pr_bro/credentials/
mod.rs

1pub mod prompt;
2
3/// Environment variable name for providing a GitHub token
4pub const ENV_TOKEN_VAR: &str = "PR_BRO_GH_TOKEN";
5
6// Re-export prompt functions for convenience
7pub use prompt::{prompt_for_token, reprompt_for_token, setup_token_if_missing};
8
9/// Check for a GitHub token in the PR_BRO_GH_TOKEN environment variable.
10/// Returns Some(token) if the env var is set and non-empty, None otherwise.
11pub fn get_token_from_env() -> Option<String> {
12    match std::env::var(ENV_TOKEN_VAR) {
13        Ok(val) => {
14            let trimmed = val.trim().to_string();
15            if trimmed.is_empty() {
16                None
17            } else {
18                Some(trimmed)
19            }
20        }
21        Err(_) => None,
22    }
23}