deepr-utils 0.1.2

Utils Package for deepr SDK
Documentation
use crate::constants;
use anyhow::Result;
use directories::UserDirs;
use std::fs;
use std::path::{Path, PathBuf};

pub fn get_home_dir() -> PathBuf {
    let user_dirs = UserDirs::new().expect("Could not resolve user $HOME dir.");
    let home_dir = user_dirs.home_dir();
    home_dir.to_path_buf()
}

pub fn get_config_dir(home_dir: &Path) -> Result<PathBuf> {
    let config_dir = home_dir.join(constants::AWS_SDK_DEFAULT_CONFIG_PREFIX);
    if !config_dir.exists() {
        fs::create_dir_all(&config_dir)?;
    }
    Ok(config_dir)
}

pub fn get_credentials_dir(home_dir: &Path) -> Result<PathBuf> {
    let credentials_dir = home_dir.join(constants::AWS_SDK_DEFAULT_CREDENTIALS_PREFIX);
    if !credentials_dir.exists() {
        fs::create_dir_all(&credentials_dir)?;
    }
    Ok(credentials_dir)
}