1use postgres::Client;
2
3use crate::schema;
4
5mod queries;
6mod resolution;
7
8pub use queries::*;
9pub use resolution::*;
10
11pub fn connect_readwrite(database_url: &str) -> anyhow::Result<Client> {
17 let mut client = gobby_core::postgres::connect_readwrite(database_url)?;
18 schema::validate_runtime_schema(&mut client)?;
19 Ok(client)
20}
21
22pub fn connect_readonly(database_url: &str) -> anyhow::Result<Client> {
28 let mut client = gobby_core::postgres::connect_readonly(database_url)?;
29 schema::validate_runtime_schema(&mut client)?;
30 Ok(client)
31}
32
33pub fn read_config_value(conn: &mut Client, key: &str) -> anyhow::Result<Option<String>> {
34 gobby_core::postgres::read_config_value(conn, key)
35}