kellnr_settings/
postgresql.rs1use provcfg::{ClapArgs, Configurable};
2use serde::{Deserialize, Serialize};
3
4fn default_pg_address() -> String {
5 "localhost".to_string()
6}
7
8fn default_pg_db() -> String {
9 "kellnr".to_string()
10}
11
12#[derive(Debug, Deserialize, Serialize, Eq, PartialEq, Clone, Configurable, ClapArgs)]
13#[serde(default)]
14#[configurable(clap_prefix = "postgresql")]
15pub struct Postgresql {
16 pub enabled: bool,
18
19 pub address: String,
21
22 pub port: u16,
24
25 pub db: String,
27
28 pub user: String,
30
31 #[serde(skip_serializing, default)]
33 #[configurable(secret)]
34 pub pwd: String,
35}
36
37impl Default for Postgresql {
38 fn default() -> Self {
39 Self {
40 enabled: false,
41 address: default_pg_address(),
42 port: 5432,
43 db: default_pg_db(),
44 user: String::new(),
45 pwd: String::new(),
46 }
47 }
48}