From c9579cb9ca2a6a165d10f128e0af1dfd372e0c03 Mon Sep 17 00:00:00 2001 From: Ellie Huxtable Date: Sun, 21 Mar 2021 20:04:39 +0000 Subject: Implement server (#23) * Add initial database and server setup * Set up all routes, auth, etc * Implement sessions, password auth, hashing with argon2, and history storage --- src/remote/database.rs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 src/remote/database.rs (limited to 'src/remote/database.rs') diff --git a/src/remote/database.rs b/src/remote/database.rs new file mode 100644 index 00000000..4f386def --- /dev/null +++ b/src/remote/database.rs @@ -0,0 +1,14 @@ +use diesel::pg::PgConnection; +use diesel::prelude::*; + +use crate::settings::Settings; + +#[database("atuin")] +pub struct AtuinDbConn(diesel::PgConnection); + +// TODO: connection pooling +pub fn establish_connection(settings: &Settings) -> PgConnection { + let database_url = &settings.remote.db.url; + PgConnection::establish(database_url) + .unwrap_or_else(|_| panic!("Error connecting to {}", database_url)) +} -- cgit v1.3.1