[WIP] A simple wake-on-lan service
at main 27 lines 624 B view raw
1use std::sync::Arc; 2 3use axum::{ 4 Router, 5 middleware::{self}, 6 routing::{get, post}, 7}; 8use tower_http::services::ServeFile; 9 10use crate::config::Config; 11 12include!(concat!(env!("OUT_DIR"), "/mod.rs")); 13mod config; 14mod log; 15mod ping; 16mod wake; 17 18pub fn router(conf: Config) -> Router { 19 Router::new() 20 .route("/wake", post(wake::main)) 21 .route("/config", get(config::main)) 22 .route("/ping", get(ping::main)) 23 .nest_service("/favicon.ico", ServeFile::new(&conf.info.icon)) 24 .with_state(Arc::new(conf)) 25 .merge(dist::main()) 26 .layer(middleware::from_fn(log::main)) 27}