use std::str::FromStr; #[cfg(feature = "rest")] use rot::rest; #[cfg(feature = "rowing-tera")] use rot::tera; use sqlx::{pool::PoolOptions, sqlite::SqliteConnectOptions, ConnectOptions}; #[macro_use] extern crate rocket; #[launch] async fn rocket() -> _ { use sqlx::SqlitePool; env_logger::init(); let mut connection_options = SqliteConnectOptions::from_str("sqlite://db.sqlite").unwrap(); connection_options.log_statements(log::LevelFilter::Debug); let db: SqlitePool = PoolOptions::new() .connect_with(connection_options) .await .unwrap(); let rocket = rocket::build().manage(db); #[cfg(feature = "rowing-tera")] let rocket = tera::config(rocket); #[cfg(feature = "rest")] let rocket = rest::config(rocket); rocket }