blob: 03973ca100cf60d5dce26397fa3c427085e6102d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
use diesel::pg::PgConnection;
use diesel::prelude::*;
use eyre::{eyre, Result};
use crate::settings::Settings;
#[database("atuin")]
pub struct AtuinDbConn(diesel::PgConnection);
// TODO: connection pooling
pub fn establish_connection(settings: &Settings) -> Result<PgConnection> {
if settings.server.db_uri == "default_uri" {
Err(eyre!(
"Please configure your database! Set db_uri in config.toml"
))
} else {
let database_url = &settings.server.db_uri;
let conn = PgConnection::establish(database_url)?;
Ok(conn)
}
}
|