29 lines
749 B
Rust
29 lines
749 B
Rust
mod dns;
|
|
mod web;
|
|
|
|
use microtld_backend::DnsProvider;
|
|
use crate::web::service::WebService;
|
|
|
|
#[tokio::main]
|
|
async fn main() -> anyhow::Result<()> {
|
|
let mut backend = dns::init_dns_backend()?;
|
|
let provider = backend.get_provider_wrapped().as_provider();
|
|
|
|
{ //Scope for client initialization
|
|
let mut provider = provider.write().await;
|
|
provider.init_client()?;
|
|
}
|
|
|
|
let db_url = std::env::var("DATABASE_URL").expect("DATABASE_URL must be set");
|
|
let listen_url = std::env::var("LISTEN_URL").expect("LISTEN_URL must be set");
|
|
|
|
let web_service = WebService::new(
|
|
db_url,
|
|
listen_url.clone(),
|
|
backend,
|
|
).await?;
|
|
|
|
println!("Listening on {}", listen_url);
|
|
web_service.run().await
|
|
}
|