Add server host/port config
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
|
use std::net::{IpAddr, Ipv4Addr, SocketAddr};
|
||||||
use std::path::PathBuf;
|
use std::path::PathBuf;
|
||||||
|
|
||||||
use serde::Deserialize;
|
use serde::Deserialize;
|
||||||
@@ -146,6 +147,14 @@ impl KeyValStoreConfig {
|
|||||||
#[derive(Debug, Clone, Deserialize)]
|
#[derive(Debug, Clone, Deserialize)]
|
||||||
pub struct ServerConfig {
|
pub struct ServerConfig {
|
||||||
pub public_path: PathBuf,
|
pub public_path: PathBuf,
|
||||||
|
pub host: IpAddr,
|
||||||
|
pub port: u16,
|
||||||
|
}
|
||||||
|
|
||||||
|
impl ServerConfig {
|
||||||
|
pub fn serve_addr(&self) -> SocketAddr {
|
||||||
|
SocketAddr::new(self.host, self.port)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone, Deserialize)]
|
#[derive(Debug, Clone, Deserialize)]
|
||||||
@@ -164,7 +173,16 @@ pub fn load_config() -> Result<Config, config::ConfigError> {
|
|||||||
let pkg_name = env!("CARGO_PKG_NAME");
|
let pkg_name = env!("CARGO_PKG_NAME");
|
||||||
|
|
||||||
config::Config::builder()
|
config::Config::builder()
|
||||||
.set_default("server.port", 8080)?
|
.set_default(
|
||||||
|
"server.port",
|
||||||
|
dioxus::cli_config::server_port().unwrap_or(8080),
|
||||||
|
)?
|
||||||
|
.set_default(
|
||||||
|
"server.host",
|
||||||
|
dioxus::cli_config::server_ip()
|
||||||
|
.unwrap_or(IpAddr::V4(Ipv4Addr::UNSPECIFIED))
|
||||||
|
.to_string(),
|
||||||
|
)?
|
||||||
.set_default("auth.open_signup", false)?
|
.set_default("auth.open_signup", false)?
|
||||||
.set_default("auth.cookies_secure", DEFAULT_COOKIES_SECURE)?
|
.set_default("auth.cookies_secure", DEFAULT_COOKIES_SECURE)?
|
||||||
.set_default("server.public_path", default_public_dir())?
|
.set_default("server.public_path", default_public_dir())?
|
||||||
|
|||||||
Reference in New Issue
Block a user