|
123456789101112131415161718 |
- use sqlx::PgPool;
- use sqlx::postgres::PgPoolOptions;
-
- use crate::config::AppConfig;
-
- pub async fn connect(config: &AppConfig) -> Result<PgPool, sqlx::Error> {
- PgPoolOptions::new()
- .max_connections(config.database.max_connections)
- .min_connections(config.database.min_connections)
- .acquire_timeout(config.acquire_timeout())
- .idle_timeout(config.idle_timeout())
- .connect(&config.database.url)
- .await
- }
-
- pub async fn migrate(pool: &PgPool) -> Result<(), sqlx::migrate::MigrateError> {
- sqlx::migrate!("./migrations").run(pool).await
- }
|