pub mod callers; pub mod config; pub mod hashing; pub mod repo; pub mod token_stuff; mod connection_settings { pub const MAXCONN: u32 = 5; } pub mod db { use sqlx::postgres::PgPoolOptions; use crate::connection_settings; pub async fn create_pool() -> Result { let database_url = icarus_envy::environment::get_db_url().await; println!("Database url: {database_url}"); PgPoolOptions::new() .max_connections(connection_settings::MAXCONN) .connect(&database_url) .await } pub async fn migrations(pool: &sqlx::PgPool) { // Run migrations using the sqlx::migrate! macro // Assumes your migrations are in a ./migrations folder relative to Cargo.toml sqlx::migrate!("./migrations") .run(pool) .await .expect("Failed to run migrations"); } }