Move Config into its own module
This commit is contained in:
parent
9b4262b996
commit
7dcd078a2b
19
src/config.rs
Normal file
19
src/config.rs
Normal file
@ -0,0 +1,19 @@
|
||||
use serde::{
|
||||
Deserialize,
|
||||
Serialize,
|
||||
};
|
||||
use std::path::PathBuf;
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize)]
|
||||
#[serde(default, rename_all = "kebab-case")]
|
||||
pub struct Config {
|
||||
pub database_path: PathBuf,
|
||||
}
|
||||
|
||||
impl Default for Config {
|
||||
fn default() -> Self {
|
||||
Config {
|
||||
database_path: crate::DEFAULT_DATABASE_PATH.into(),
|
||||
}
|
||||
}
|
||||
}
|
24
src/main.rs
24
src/main.rs
@ -4,10 +4,6 @@ use std::{
|
||||
boxed::Box,
|
||||
error::Error,
|
||||
};
|
||||
use serde::{
|
||||
Deserialize,
|
||||
Serialize,
|
||||
};
|
||||
use sqlx::{
|
||||
prelude::*,
|
||||
sqlite::{
|
||||
@ -21,26 +17,16 @@ use tokio::{
|
||||
fs::File,
|
||||
io::AsyncReadExt,
|
||||
};
|
||||
use crate::cli::Options;
|
||||
use crate::{
|
||||
cli::Options,
|
||||
config::Config,
|
||||
};
|
||||
|
||||
mod cli;
|
||||
mod config;
|
||||
|
||||
const DEFAULT_DATABASE_PATH: &'static str = "/var/lib/noise-server/noise-server.sqlite";
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize)]
|
||||
#[serde(default, rename_all = "kebab-case")]
|
||||
struct Config {
|
||||
database_path: PathBuf,
|
||||
}
|
||||
|
||||
impl Default for Config {
|
||||
fn default() -> Self {
|
||||
Config {
|
||||
database_path: DEFAULT_DATABASE_PATH.into(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[tokio::main]
|
||||
async fn main() -> Result<(), Box<dyn Error>> {
|
||||
let clap_matches = Options::clap().get_matches();
|
||||
|
Loading…
Reference in New Issue
Block a user