2020-10-31 19:53:03 +00:00
|
|
|
use anyhow::*;
|
|
|
|
use futures::{future::BoxFuture, FutureExt};
|
2020-11-14 02:56:50 +00:00
|
|
|
use log::LevelFilter;
|
2020-10-31 19:53:03 +00:00
|
|
|
use northstar::{Server, Request, Response, GEMINI_PORT};
|
|
|
|
|
|
|
|
#[tokio::main]
|
|
|
|
async fn main() -> Result<()> {
|
2020-11-14 02:56:50 +00:00
|
|
|
env_logger::builder()
|
|
|
|
.filter_module("northstar", LevelFilter::Debug)
|
|
|
|
.init();
|
|
|
|
|
2020-10-31 19:53:03 +00:00
|
|
|
Server::bind(("localhost", GEMINI_PORT))
|
|
|
|
.serve(handle_request)
|
|
|
|
.await
|
|
|
|
}
|
|
|
|
|
|
|
|
fn handle_request(request: Request) -> BoxFuture<'static, Result<Response>> {
|
|
|
|
async move {
|
|
|
|
let path = request.path_segments();
|
|
|
|
let response = northstar::util::serve_dir("public", &path).await?;
|
|
|
|
|
|
|
|
Ok(response)
|
|
|
|
}
|
|
|
|
.boxed()
|
|
|
|
}
|