feat: add health check endpoint and update Docker Compose healthcheck configuration
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
use axum::{middleware, routing::{delete, get, post, put}, Router};
|
||||
use axum::{http::StatusCode, middleware, routing::{delete, get, post, put}, Router};
|
||||
use sqlx::PgPool;
|
||||
use std::sync::Arc;
|
||||
use tower_http::{cors::CorsLayer, trace::TraceLayer};
|
||||
@@ -34,6 +34,10 @@ pub struct AppState {
|
||||
pub config: Config,
|
||||
}
|
||||
|
||||
async fn health_handler() -> StatusCode {
|
||||
StatusCode::OK
|
||||
}
|
||||
|
||||
/// Constrói o router Axum com todas as rotas e middlewares.
|
||||
pub fn build(db: PgPool, config: Config) -> Router {
|
||||
let db = Arc::new(db);
|
||||
@@ -112,6 +116,7 @@ pub fn build(db: PgPool, config: Config) -> Router {
|
||||
.route_layer(middleware::from_fn_with_state(state.clone(), auth_middleware));
|
||||
|
||||
Router::new()
|
||||
.route("/health", get(health_handler))
|
||||
.nest("/api/v1", public_routes.merge(protected_routes))
|
||||
.with_state(state)
|
||||
.layer(TraceLayer::new_for_http())
|
||||
|
||||
Reference in New Issue
Block a user