bulletin_board_server/
lib.rs1mod board;
2mod bulletin;
3mod error;
4mod logging;
5mod server;
6
7pub use server::{BBServer, ServerOptions};
8
9use std::sync::LazyLock;
10
11static LISTEN_ADDR: LazyLock<String> =
12 LazyLock::new(|| std::env::var("BB_LISTEN_ADDR").unwrap_or("127.0.0.1:7578".to_string()));
13
14static TMP_DIR: LazyLock<String> =
15 LazyLock::new(|| std::env::var("BB_TMP_DIR").unwrap_or("./bb_tmp".to_string()));
16static ACV_DIR: LazyLock<String> =
17 LazyLock::new(|| std::env::var("BB_ACV_DIR").unwrap_or("./bb_acv".to_string()));
18static TOT_MEM_LIMIT: LazyLock<u64> = LazyLock::new(|| {
19 parse_size::parse_size(std::env::var("BB_TOT_MEM_LIMIT").unwrap_or("1GiB".to_string())).unwrap()
20});
21static MAX_RESULTS: LazyLock<usize> = LazyLock::new(|| {
22 std::env::var("BB_MAX_RESULTS")
23 .unwrap_or("1024".to_string())
24 .parse()
25 .unwrap()
26});
27static FILE_THRETHOLD: LazyLock<u64> = LazyLock::new(|| {
28 parse_size::parse_size(std::env::var("BB_FILE_THRETHOLD").unwrap_or("1MiB".to_string()))
29 .unwrap()
30});
31static LOG_FILE: LazyLock<String> =
32 LazyLock::new(|| std::env::var("BB_LOG_FILE").unwrap_or("./bulletin-board.log".to_string()));
33
34static DEBUG: LazyLock<bool> = LazyLock::new(|| std::env::var("BB_DEBUG").is_ok());
35
36static LOG_LEVEL: LazyLock<u8> = LazyLock::new(|| {
37 std::env::var("BB_LOG_LEVEL")
38 .unwrap_or("3".to_string())
39 .parse()
40 .unwrap()
41});