diff options
Diffstat (limited to 'crates/auth-service/src/server.rs')
-rw-r--r-- | crates/auth-service/src/server.rs | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/crates/auth-service/src/server.rs b/crates/auth-service/src/server.rs new file mode 100644 index 0000000..7b66c42 --- /dev/null +++ b/crates/auth-service/src/server.rs @@ -0,0 +1,37 @@ +use axum::{Router, routing::get}; +use tower_http::trace::TraceLayer; + +use crate::{ + server::routes::{authorised::login_authorised, health_check}, + state::AppHandle, +}; + +pub mod csrf_token_validation; +pub mod grpc; +pub mod routes; + +const CSRF_TOKEN: &str = "csrf_token"; +const OAUTH_CSRF_COOKIE: &str = "SESSION"; + +pub fn router(state: AppHandle) -> Router { + Router::new() + .route("/auth/authorised", get(login_authorised)) + .route("/", get(health_check)) + .with_state(state.clone()) + .merge(routes::discord::discord_router(state)) + .layer(TraceLayer::new_for_http()) +} + +#[cfg(test)] +pub(crate) fn test_config() -> stack_up::Configuration { + use stack_up::Configuration; + + let config_path = "auth.toml"; + + let config = config::Config::builder() + .add_source(config::File::new(config_path, config::FileFormat::Toml)) + .build() + .unwrap(); + + config.try_deserialize::<Configuration>().unwrap() +} |