#[tracing::instrument]
pub async fn init_if_required(
dir: &std::path::Path,
) -> eyre::Result<std::path::PathBuf> {
use eyre::WrapErr;
if !dir.exists() {
tokio::fs::create_dir_all(&dir)
.await
.wrap_err_with(|| format!("failed to create dot_fastn directory: {dir:?}"))?;
}
Ok(dir.to_path_buf())
}