diff options
| author | rtkay123 <dev@kanjala.com> | 2026-02-09 17:54:46 +0200 |
|---|---|---|
| committer | rtkay123 <dev@kanjala.com> | 2026-02-09 17:54:46 +0200 |
| commit | a9630ecdc459068ca51ee2d7be3837d609840842 (patch) | |
| tree | 3bf6d1da4aefbaa351a36a0c63228bcdcf6b4917 /lib/shared-svc/src/database/mod.rs | |
| parent | d2339ca8869af12c0fd8cf6fc87986f06b487de9 (diff) | |
| download | sellershut-a9630ecdc459068ca51ee2d7be3837d609840842.tar.bz2 sellershut-a9630ecdc459068ca51ee2d7be3837d609840842.zip | |
feat: connect to database
Diffstat (limited to 'lib/shared-svc/src/database/mod.rs')
| -rw-r--r-- | lib/shared-svc/src/database/mod.rs | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/shared-svc/src/database/mod.rs b/lib/shared-svc/src/database/mod.rs new file mode 100644 index 0000000..bbc1ba3 --- /dev/null +++ b/lib/shared-svc/src/database/mod.rs @@ -0,0 +1,16 @@ +use sqlx::PgPool; +use tracing::{debug, error}; +use url::Url; + +use crate::ServiceError; + +pub async fn connect(url: &Url, pool_size: u32) -> Result<PgPool, ServiceError> { + let host = url.host_str(); + debug!(host = host, "connecting to database"); + + Ok(sqlx::postgres::PgPoolOptions::new() + .max_connections(pool_size) + .connect(url.as_str()) + .await + .inspect_err(|e| error!("{e}"))?) +} |
