Updated deps.

Health and root endpoint
This commit is contained in:
Martin Berg Alstad 2024-09-07 22:26:52 +02:00
parent 5d5e6393ac
commit 8e728cca58
4 changed files with 47 additions and 24 deletions

39
Cargo.lock generated
View File

@ -282,9 +282,9 @@ dependencies = [
[[package]] [[package]]
name = "axum-login" name = "axum-login"
version = "0.15.3" version = "0.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4012877d9672b7902aa6567960208756f68a09de81e988fa18fe369e92f90471" checksum = "5260ed0ecc8ace8e7e61a7406672faba598c8a86b8f4742fcdde0ddc979a318f"
dependencies = [ dependencies = [
"async-trait", "async-trait",
"axum", "axum",
@ -314,9 +314,9 @@ dependencies = [
[[package]] [[package]]
name = "axum-valid" name = "axum-valid"
version = "0.19.0" version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bf153a7451ae5606afd0262c06fc4d58517b70fdce82776e401281c76383170a" checksum = "a4e346f07620b4cf0a81c8fa3157b7d3034517c28e8b215c8da49ed75d7cd05c"
dependencies = [ dependencies = [
"axum", "axum",
"validator", "validator",
@ -769,9 +769,9 @@ dependencies = [
[[package]] [[package]]
name = "diesel_async_migrations" name = "diesel_async_migrations"
version = "0.14.0" version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b92dd60c54ac548b3a001a040e92abdca9b55c68136c8a641ef776dfeb133a52" checksum = "b99915cbb9455e8fd56f12edc58f92bbdf8161e4363cb2000cf4308aa6358ff4"
dependencies = [ dependencies = [
"diesel", "diesel",
"diesel-async", "diesel-async",
@ -1511,7 +1511,10 @@ version = "1.4.3"
dependencies = [ dependencies = [
"axum", "axum",
"chrono", "chrono",
"deadpool-diesel",
"derive_more", "derive_more",
"diesel",
"diesel-async",
"diesel-crud-derive", "diesel-crud-derive",
"diesel-crud-trait", "diesel-crud-trait",
"into-response-derive", "into-response-derive",
@ -2562,9 +2565,9 @@ checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394"
[[package]] [[package]]
name = "testcontainers" name = "testcontainers"
version = "0.21.1" version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5f7d80fe0008971413157e67062150cbf508b92f0eb525b9f49de1aec4267f24" checksum = "2ef8374cea2c164699681ecc39316c3e1d953831a7a5721e36c7736d974e15fa"
dependencies = [ dependencies = [
"async-trait", "async-trait",
"bollard", "bollard",
@ -2590,9 +2593,9 @@ dependencies = [
[[package]] [[package]]
name = "testcontainers-modules" name = "testcontainers-modules"
version = "0.9.0" version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "868e8e818fe37b8ed4c21ac72185206b48e8767b5ad3836d7ec0e5c9386e19a2" checksum = "359d9a225791e1b9f60aab01f9ae9471898b9b9904b5db192104a71e96785079"
dependencies = [ dependencies = [
"testcontainers", "testcontainers",
] ]
@ -2675,9 +2678,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
[[package]] [[package]]
name = "tokio" name = "tokio"
version = "1.39.3" version = "1.40.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9babc99b9923bfa4804bd74722ff02c0381021eafa4db9949217e3be8e84fff5" checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998"
dependencies = [ dependencies = [
"backtrace", "backtrace",
"bytes", "bytes",
@ -2867,9 +2870,9 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3"
[[package]] [[package]]
name = "tower-sessions" name = "tower-sessions"
version = "0.12.3" version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "50571505955aaa8b73f2f40489953d92b4d7ff9eb9b2a8b4e11fee0dcdb2760e" checksum = "65856c81ee244e0f8a55ab0f7b769b72fbde387c235f0a73cd97c579818d05eb"
dependencies = [ dependencies = [
"async-trait", "async-trait",
"http", "http",
@ -2885,9 +2888,9 @@ dependencies = [
[[package]] [[package]]
name = "tower-sessions-core" name = "tower-sessions-core"
version = "0.12.3" version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6293bf33f1977d5ef422c2e02f909eb2c3d7bf921d93557c40d4f1b130b84aa4" checksum = "fb6abbfcaf6436ec5a772cd9f965401da12db793e404ae6134eac066fa5a04f3"
dependencies = [ dependencies = [
"async-trait", "async-trait",
"axum-core", "axum-core",
@ -2906,9 +2909,9 @@ dependencies = [
[[package]] [[package]]
name = "tower-sessions-memory-store" name = "tower-sessions-memory-store"
version = "0.12.3" version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cec5f88eeef0f036e6900217034efbce733cbdf0528a85204eaaed90bc34c354" checksum = "7fad75660c8afbe74f4e7cbbe8e9090171a056b57370ea4d7d5e9eb3e4af3092"
dependencies = [ dependencies = [
"async-trait", "async-trait",
"time", "time",

View File

@ -7,11 +7,11 @@ edition = "2021"
# API # API
axum = { version = "0.7.5", features = ["macros"] } axum = { version = "0.7.5", features = ["macros"] }
# Async # Async
tokio = { version = "1.39.2", features = ["rt-multi-thread"] } tokio = { version = "1.40", features = ["rt-multi-thread"] }
futures = "0.3.30" futures = "0.3.30"
# Auth # Auth
axum-login = "0.15.3" axum-login = "0.16.0"
tower-sessions = { version = "0.12.3", features = ["axum-core"] } tower-sessions = { version = "0.13.0", features = ["axum-core"] }
# Cryptography # Cryptography
sha2 = "0.10.8" sha2 = "0.10.8"
digest = "0.10.7" digest = "0.10.7"
@ -39,16 +39,16 @@ bon = "2.0.0"
# Validation # Validation
validator = { version = "0.18.1", features = ["derive"] } validator = { version = "0.18.1", features = ["derive"] }
axum-valid = { version = "0.19.0", features = ["validator"] } axum-valid = { version = "0.20.0", features = ["validator"] }
lib = { path = "../lib", features = ["axum", "serde", "derive", "diesel", "time"] } lib = { path = "../lib", features = ["axum", "serde", "derive", "diesel", "time"] }
#lib = { git = "https://github.com/emberal/rust-lib", tag = "1.4.3", features = ["axum", "serde", "derive"] } #lib = { git = "https://github.com/emberal/rust-lib", tag = "1.4.3", features = ["axum", "serde", "derive"] }
[dev-dependencies] [dev-dependencies]
rstest = "0.22.0" rstest = "0.22.0"
testcontainers-modules = { version = "0.9.0", features = ["postgres"] } testcontainers-modules = { version = "0.10.0", features = ["postgres"] }
async-std = { version = "1.12.0", features = ["attributes"] } async-std = { version = "1.12.0", features = ["attributes"] }
tower = { version = "0.5.0", features = ["util"] } tower = { version = "0.5.0", features = ["util"] }
mime = "0.3.17" mime = "0.3.17"
diesel_async_migrations = "0.14.0" diesel_async_migrations = "0.15.0"
hyper = "1.4.1" hyper = "1.4.1"

View File

@ -39,6 +39,7 @@ where
let auth_layer = AuthManagerLayerBuilder::new(user_service.clone(), session_layer).build(); let auth_layer = AuthManagerLayerBuilder::new(user_service.clone(), session_layer).build();
AppBuilder::new() AppBuilder::new()
.routes([ .routes([
routes::router(),
routes::hotel::router() routes::hotel::router()
.with_state(pool.clone()) .with_state(pool.clone())
.login_required::<Pool>(), .login_required::<Pool>(),

View File

@ -1,6 +1,25 @@
use lib::{router, routes};
pub mod auth; pub mod auth;
pub mod hotel; pub mod hotel;
pub mod reservation; pub mod reservation;
pub mod room; pub mod room;
pub mod task; pub mod task;
pub mod user; pub mod user;
router! {
"/",
routes! {
get "/" => home,
get "/health" => health,
}
}
async fn home() -> &'static str {
"Hello, World!" // TODO inform the user about the API
}
/// Health check endpoint
async fn health() -> &'static str {
"OK"
}