diff options
author | Shav Kinderlehrer <[email protected]> | 2024-04-07 13:35:59 -0400 |
---|---|---|
committer | Shav Kinderlehrer <[email protected]> | 2024-04-07 13:35:59 -0400 |
commit | 0820a05293b9d09335e13054121028c9764285de (patch) | |
tree | eba29ecb978005b5730865dabb27073cf52135c7 /src/main.rs | |
parent | 407dbdb386315efb2c1af4825659a5429924d0ce (diff) | |
download | chela-0820a05293b9d09335e13054121028c9764285de.tar.gz chela-0820a05293b9d09335e13054121028c9764285de.zip |
Add main page redirect
Diffstat (limited to 'src/main.rs')
-rw-r--r-- | src/main.rs | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/main.rs b/src/main.rs index 22750a6..ac16eb4 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,5 +1,7 @@ use std::net::SocketAddr; +use url::Url; + use axum::routing::{get, post}; use axum::Router; @@ -20,6 +22,7 @@ pub struct ServerState { pub db_pool: Pool<Postgres>, pub host: String, pub sqids: Sqids, + pub main_page_redirect: Option<Url>, } #[derive(Debug, Clone, sqlx::FromRow, PartialEq, Eq)] @@ -40,9 +43,7 @@ async fn main() -> eyre::Result<()> { color_eyre::install()?; let db_pool = init_db().await?; - let host = std::env::var("CHELA_HOST").unwrap_or("localhost".to_string()); - let sqids = Sqids::builder() .alphabet( "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" @@ -51,10 +52,12 @@ async fn main() -> eyre::Result<()> { ) .blocklist(["create".to_string()].into()) .build()?; + let main_page_redirect = std::env::var("CHELA_MAIN_PAGE_REDIRECT").unwrap_or_default(); let server_state = ServerState { db_pool, host, sqids, + main_page_redirect: Url::parse(&main_page_redirect).ok(), }; let address = std::env::var("CHELA_LISTEN_ADDRESS").unwrap_or("0.0.0.0".to_string()); @@ -74,7 +77,11 @@ async fn main() -> eyre::Result<()> { async fn init_db() -> eyre::Result<Pool<Postgres>> { let db_pool = PgPoolOptions::new() .max_connections(15) - .connect(std::env::var("DATABASE_URL")?.as_str()) + .connect( + std::env::var("DATABASE_URL") + .expect("DATABASE_URL must be set") + .as_str(), + ) .await?; log!("Successfully connected to database"); |