You've already forked AstralRinth
forked from didirus/AstralRinth
Use new MaxMind env vars on Labrinth (#4573)
* Bring in modrinth-maxmind * integrate modrinth-maxmind into labrinth * Fix CI
This commit is contained in:
23
packages/modrinth-util/src/lib.rs
Normal file
23
packages/modrinth-util/src/lib.rs
Normal file
@@ -0,0 +1,23 @@
|
||||
#![doc = include_str!("../README.md")]
|
||||
|
||||
mod error;
|
||||
pub use error::*;
|
||||
|
||||
use eyre::{Result, eyre};
|
||||
|
||||
/// Fetches an environment variable, possibly loading it using [`dotenvy`].
|
||||
///
|
||||
/// # Errors
|
||||
///
|
||||
/// Errors if the environment variable is missing or empty, providing a
|
||||
/// pretty-printed error including the environment variable name.
|
||||
#[track_caller]
|
||||
pub fn env_var(key: &str) -> Result<String> {
|
||||
let value = dotenvy::var(key)
|
||||
.wrap_err_with(|| eyre!("missing environment variable `{key}`"))?;
|
||||
if value.is_empty() {
|
||||
Err(eyre!("environment variable `{key}` is empty"))
|
||||
} else {
|
||||
Ok(value)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user