tourism 0.1.1

Tourism service library and CLI by aham.ro
use sqlx::{migrate::Migrator, PgPool};
use std::path::{Path, PathBuf};


pub async fn migrate(
    path: Option<PathBuf>,
) -> Result<(), Box<dyn std::error::Error>> {
    dotenvy::dotenv().ok();

    let path = path.unwrap_or_else(|| PathBuf::from("./misc/migrations"));

    tracing::info!(target: "migration", "Running from: {:?}", path);

    let pool = PgPool::connect(&std::env::var("DATABASE_URL")?).await?;
    let migrator = Migrator::new(Path::new(&path)).await?;
    migrator.run(&pool).await?;

    Ok(())
}