Files
thoughts/thoughts-backend/api/src/routers/root.rs
Gabriel Kaszewski 29afc2e92e
Some checks failed
Build and Deploy Thoughts / build-and-deploy-local (push) Failing after 3m4s
fix: update Dockerfiles to install necessary packages without recommendations
2025-09-09 04:03:14 +02:00

37 lines
877 B
Rust

use axum::{extract::State, http::StatusCode, routing::get, Router};
use sea_orm::{ConnectionTrait, Statement};
use app::state::AppState;
use crate::error::ApiError;
#[utoipa::path(
get,
path = "",
responses(
(status = 200, description = "Hello world", body = String)
)
)]
async fn root_get(state: State<AppState>) -> Result<String, ApiError> {
let result = state
.conn
.query_one(Statement::from_string(
state.conn.get_database_backend(),
"SELECT 'Hello, World from DB!'",
))
.await
.map_err(ApiError::from)?;
result.unwrap().try_get_by(0).map_err(|e| e.into())
}
async fn health_check() -> StatusCode {
StatusCode::OK
}
pub fn create_root_router() -> Router<AppState> {
Router::new()
.route("/", get(root_get))
.route("/health", get(health_check))
}