riplog-view/backend/main.rs

43 lines
1.1 KiB
Rust
Raw Normal View History

2020-01-24 15:16:42 +00:00
mod database;
mod graphql;
use clap::{App, Arg};
use database::scan_dbs;
use graphql::server;
fn main() -> std::io::Result<()> {
let cmd = App::new("Riplog")
.version("1.0")
.arg(
Arg::with_name("basedir")
.required(true)
.short("d")
.help("Base directory containing ripcord db files")
.default_value(".")
.index(1),
)
.arg(
Arg::with_name("bind")
.required(true)
.short("b")
.help("Address to bind to")
2020-01-24 15:51:05 +00:00
.default_value("127.0.0.1"),
)
.arg(
Arg::with_name("port")
.required(true)
.short("p")
.help("Port to listen on")
.default_value("8080"),
2020-01-24 15:16:42 +00:00
)
.get_matches();
let basedir = cmd.value_of("basedir").unwrap();
2020-01-24 15:51:05 +00:00
let addr = cmd.value_of("bind").unwrap();
let port = cmd.value_of("port").unwrap().parse().unwrap();
2020-01-24 15:16:42 +00:00
let logs = scan_dbs(basedir);
println!("Loaded data for {} workspaces", logs.len());
2020-01-24 15:51:05 +00:00
server(addr, port, logs);
2020-01-24 15:16:42 +00:00
Ok(())
}