From bc1deea38e2a55d5b7b563d56a2148e307b17185 Mon Sep 17 00:00:00 2001 From: Joschua Kesper <jokesper@proton.me> Date: Fri, 30 Aug 2024 22:00:17 +0200 Subject: [PATCH] Added `--local` option for easier testing --- src/main.rs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/main.rs b/src/main.rs index 11f059a..4818cba 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,6 +1,6 @@ mod markov; -use std::{fs, path::Path}; +use std::{fs, path::Path, net::Ipv4Addr}; use anyhow::Result; use clap::{arg, Parser}; @@ -58,19 +58,24 @@ impl Api { struct Args { #[arg(short, long)] file: String, + + #[arg(short, long)] + local: bool, } #[tokio::main(flavor = "current_thread")] async fn main() -> Result<()> { - let service = OpenApiService::new(Api::from_file(Args::parse().file)?, "mew", "1.0") + let args = Args::parse(); + let service = OpenApiService::new(Api::from_file(args.file)?, "mew", "1.0") .server("http://czi.wtf"); let app = Route::new() .nest("/", service.clone()) .nest("/docs", service.clone().swagger_ui()); - println!("starting server on http://0.0.0.0:6969"); - Server::new(TcpListener::bind("0.0.0.0:6969")) + let bind_ip = if args.local { Ipv4Addr::new(127,0,0,1) } else { Ipv4Addr::new(0,0,0,0)}; + println!("starting server on http://{}:6969", bind_ip); + Server::new(TcpListener::bind((bind_ip, 6969))) .run(app) .await?; -- GitLab