X-Git-Url: http://git.euphorik.ch/?a=blobdiff_plain;f=backend%2Fsrc%2Fmain.rs;h=c043f7a83a57f01c0d560de49a1c2ba27bea41fe;hb=dcf7523ccf6cae4e7d1d38fcbd85bc0b2d0e1703;hp=053642886ea143887b0e268df46f060069b8b38b;hpb=4971d7f0afb67499e0cbd8d53bf649dea2d74d6c;p=recipes.git diff --git a/backend/src/main.rs b/backend/src/main.rs index 0536428..c043f7a 100644 --- a/backend/src/main.rs +++ b/backend/src/main.rs @@ -2,17 +2,17 @@ use std::io::prelude::*; use std::{fs::File, env::args}; use actix_files as fs; -use actix_web::{web, middleware, App, HttpServer, HttpResponse, Result, web::Query, middleware::Logger}; +use actix_web::{get, web, Responder, middleware, App, HttpServer, HttpResponse, web::Query}; use askama::Template; use listenfd::ListenFd; use ron::de::from_reader; use serde::Deserialize; -use env_logger; use itertools::Itertools; mod consts; +mod db; #[derive(Template)] #[template(path = "main.html")] @@ -25,12 +25,12 @@ pub struct Request { m: Option } -fn main_page(query: Query) -> Result { +fn main_page(query: Query) -> HttpResponse { - let main_template = MainTemplate { test: &"test" }; + let main_template = MainTemplate { test: &"*** test 2 ***" }; let s = main_template.render().unwrap(); - Ok(HttpResponse::Ok().content_type("text/html").body(s)) + HttpResponse::Ok().content_type("text/html").body(s) } #[derive(Debug, Deserialize)] @@ -44,10 +44,11 @@ fn get_exe_name() -> String { first_arg[first_arg.rfind(sep).unwrap()+1..].to_string() } -fn main() -> std::io::Result<()> { +#[actix_rt::main] +async fn main() -> std::io::Result<()> { if process_args() { return Ok(()) } - println!("Starting RUP as web server..."); + println!("Starting Recipes as web server..."); let config: Config = { let f = File::open(consts::FILE_CONF).unwrap_or_else(|_| panic!("Failed to open configuration file {}", consts::FILE_CONF)); @@ -59,8 +60,9 @@ fn main() -> std::io::Result<()> { println!("Configuration: {:?}", config); + // let database_connection = db::create_or_update(); + std::env::set_var("RUST_LOG", "actix_web=info"); - env_logger::init(); let mut listenfd = ListenFd::from_env(); let mut server = @@ -68,8 +70,6 @@ fn main() -> std::io::Result<()> { || { App::new() .wrap(middleware::Compress::default()) - .wrap(Logger::default()) - .wrap(Logger::new("%a %{User-Agent}i")) .service(web::resource("/").to(main_page)) .service(fs::Files::new("/static", "static").show_files_listing()) } @@ -82,13 +82,13 @@ fn main() -> std::io::Result<()> { server.bind(&format!("0.0.0.0:{}", config.port)).unwrap() }; - server.run() + server.run().await } fn process_args() -> bool { fn print_usage() { println!("Usage:"); - println!(" {} [--help]", get_exe_name()); + println!(" {} [--help] [--test]", get_exe_name()); } let args: Vec = args().collect(); @@ -96,6 +96,10 @@ fn process_args() -> bool { if args.iter().any(|arg| arg == "--help") { print_usage(); return true + } else if args.iter().any(|arg| arg == "--test") { + let db_connection = db::Connection::new(); + db_connection.create_or_update(); + return true } false