Skip to content

Commit a3274dc

Browse files
committed
Merge #538: Move API healthcheck endpoint from /health_check to /api/health_check
985633e feat!: [#537] move API healthcheck endpoint (Jose Celano) Pull request description: Relates to: torrust/torrust-compose#2 From: `GET /health_check` To: `GET /api/health_check` To avoid collission with HTTP Tracker health check enpoint when the API and the HTTP Tracker are using the same domain+port. For example: - API: https://tracker.com:443/api/ - HTTP tracker: https://tracker.com:443/ Old health check endpoints: - API: https://tracker.com:443/health_check - HTTP tracker: https://tracker.com:443/health_check New API health check endpoint: - API: https://tracker.com:443/api/health_check - HTTP tracker: https://tracker.com:443/health_check ACKs for top commit: josecelano: ACK: 985633e Tree-SHA512: 9c7fde53268b0887e9ea282a554e2c2c6e6b548858f8254c35b095dc8657069a1e22651ebabd375ab4f8d0df1b30f7c5e282e9b96cfa2d4e38fe70eee975a414
2 parents e6aecf1 + 985633e commit a3274dc

File tree

6 files changed

+8
-6
lines changed

6 files changed

+8
-6
lines changed

src/bin/http_health_check.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ async fn main() {
1111
let args: Vec<String> = env::args().collect();
1212
if args.len() != 2 {
1313
eprintln!("Usage: cargo run --bin http_health_check <HEALTH_URL>");
14-
eprintln!("Example: cargo run --bin http_health_check http://127.0.0.1:1212/health_check");
14+
eprintln!("Example: cargo run --bin http_health_check http://127.0.0.1:1212/api/health_check");
1515
std::process::exit(1);
1616
}
1717

src/servers/apis/routes.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,6 @@ pub fn router(tracker: Arc<Tracker>) -> Router {
2929
tracker.config.clone(),
3030
v1::middlewares::auth::auth,
3131
))
32-
.route("/health_check", get(health_check_handler))
32+
.route(&format!("{api_url_prefix}/health_check"), get(health_check_handler))
3333
.layer(CompressionLayer::new())
3434
}

src/servers/apis/v1/context/health_check/mod.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,14 @@
88
//!
99
//! # Health Check
1010
//!
11-
//! `GET /health_check`
11+
//! `GET /api/health_check`
1212
//!
1313
//! Returns the API status.
1414
//!
1515
//! **Example request**
1616
//!
1717
//! ```bash
18-
//! curl "http://127.0.0.1:1212/health_check"
18+
//! curl "http://127.0.0.1:1212/api/health_check"
1919
//! ```
2020
//!
2121
//! **Example response** `200`

src/servers/apis/v1/routes.rs

+2
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,10 @@ use crate::core::Tracker;
99
/// Add the routes for the v1 API.
1010
pub fn add(prefix: &str, router: Router, tracker: Arc<Tracker>) -> Router {
1111
let v1_prefix = format!("{prefix}/v1");
12+
1213
let router = auth_key::routes::add(&v1_prefix, router, tracker.clone());
1314
let router = stats::routes::add(&v1_prefix, router, tracker.clone());
1415
let router = whitelist::routes::add(&v1_prefix, router, tracker.clone());
16+
1517
torrent::routes::add(&v1_prefix, router, tracker)
1618
}

src/servers/health_check_api/handlers.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ async fn api_health_check(config: &HttpApi) -> Option<Json<Report>> {
4545
let addr: SocketAddr = config.bind_address.parse().expect("invalid socket address for API");
4646

4747
if addr.port() != UNKNOWN_PORT {
48-
let health_check_url = format!("http://{addr}/health_check");
48+
let health_check_url = format!("http://{addr}/api/health_check");
4949

5050
if !get_req_is_ok(&health_check_url).await {
5151
return Some(responses::error(format!(

tests/servers/api/v1/contract/context/health_check.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use crate::servers::api::v1::client::get;
88
async fn health_check_endpoint_should_return_status_ok_if_api_is_running() {
99
let test_env = running_test_environment(configuration::ephemeral()).await;
1010

11-
let url = format!("http://{}/health_check", test_env.get_connection_info().bind_address);
11+
let url = format!("http://{}/api/health_check", test_env.get_connection_info().bind_address);
1212

1313
let response = get(&url, None).await;
1414

0 commit comments

Comments
 (0)