image-gallery/src/config.rs

19 lines
432 B
Rust

use std::{path::Path, fs::File};
use anyhow::Result;
use serde::Deserialize;
#[derive(Clone, Default, Debug, PartialEq, Deserialize)]
pub struct Config {
pub title: String,
#[serde(alias = "top-message")]
pub top_message: Option<String>,
pub passwords: Vec<String>,
}
pub fn read_from_file(config_file: &Path) -> Result<Config> {
let file = File::open(config_file)?;
Ok(serde_yaml::from_reader(file)?)
}