From 53d601e6ecc7c5320c1bf10c3af92d20fbcdb678 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=89=E6=AD=A3=E8=B6=85?= Date: Fri, 13 Feb 2026 18:34:02 +0800 Subject: [PATCH] refactor(admin): move kms dynamic route registration (#1798) --- rustfs/src/admin/handlers/kms.rs | 36 +-------------------- rustfs/src/admin/handlers/kms_dynamic.rs | 40 ++++++++++++++++++++++-- 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/rustfs/src/admin/handlers/kms.rs b/rustfs/src/admin/handlers/kms.rs index 4f40c5e64..c1feb419a 100644 --- a/rustfs/src/admin/handlers/kms.rs +++ b/rustfs/src/admin/handlers/kms.rs @@ -112,7 +112,7 @@ fn extract_query_params(uri: &hyper::Uri) -> HashMap { pub fn register_kms_route(r: &mut S3Router) -> std::io::Result<()> { register_kms_management_route(r)?; - register_kms_dynamic_route(r)?; + kms_dynamic::register_kms_dynamic_route(r)?; register_kms_key_route(r)?; Ok(()) @@ -164,40 +164,6 @@ fn register_kms_management_route(r: &mut S3Router) -> std::io::R Ok(()) } -fn register_kms_dynamic_route(r: &mut S3Router) -> std::io::Result<()> { - r.insert( - Method::POST, - format!("{}{}", ADMIN_PREFIX, "/v3/kms/configure").as_str(), - AdminOperation(&kms_dynamic::ConfigureKmsHandler {}), - )?; - - r.insert( - Method::POST, - format!("{}{}", ADMIN_PREFIX, "/v3/kms/start").as_str(), - AdminOperation(&kms_dynamic::StartKmsHandler {}), - )?; - - r.insert( - Method::POST, - format!("{}{}", ADMIN_PREFIX, "/v3/kms/stop").as_str(), - AdminOperation(&kms_dynamic::StopKmsHandler {}), - )?; - - r.insert( - Method::GET, - format!("{}{}", ADMIN_PREFIX, "/v3/kms/service-status").as_str(), - AdminOperation(&kms_dynamic::GetKmsStatusHandler {}), - )?; - - r.insert( - Method::POST, - format!("{}{}", ADMIN_PREFIX, "/v3/kms/reconfigure").as_str(), - AdminOperation(&kms_dynamic::ReconfigureKmsHandler {}), - )?; - - Ok(()) -} - fn register_kms_key_route(r: &mut S3Router) -> std::io::Result<()> { r.insert( Method::POST, diff --git a/rustfs/src/admin/handlers/kms_dynamic.rs b/rustfs/src/admin/handlers/kms_dynamic.rs index 712dbc708..d8860769e 100644 --- a/rustfs/src/admin/handlers/kms_dynamic.rs +++ b/rustfs/src/admin/handlers/kms_dynamic.rs @@ -15,10 +15,10 @@ //! KMS dynamic configuration admin API handlers use crate::admin::auth::validate_admin_request; -use crate::admin::router::Operation; +use crate::admin::router::{AdminOperation, Operation, S3Router}; use crate::auth::{check_key_valid, get_session_token}; -use crate::server::RemoteAddr; -use hyper::StatusCode; +use crate::server::{ADMIN_PREFIX, RemoteAddr}; +use hyper::{Method, StatusCode}; use matchit::Params; use rustfs_config::MAX_ADMIN_REQUEST_BODY_SIZE; use rustfs_ecstore::config::com::{read_config, save_config}; @@ -80,6 +80,40 @@ pub async fn load_kms_config() -> Option { } } +pub fn register_kms_dynamic_route(r: &mut S3Router) -> std::io::Result<()> { + r.insert( + Method::POST, + format!("{}{}", ADMIN_PREFIX, "/v3/kms/configure").as_str(), + AdminOperation(&ConfigureKmsHandler {}), + )?; + + r.insert( + Method::POST, + format!("{}{}", ADMIN_PREFIX, "/v3/kms/start").as_str(), + AdminOperation(&StartKmsHandler {}), + )?; + + r.insert( + Method::POST, + format!("{}{}", ADMIN_PREFIX, "/v3/kms/stop").as_str(), + AdminOperation(&StopKmsHandler {}), + )?; + + r.insert( + Method::GET, + format!("{}{}", ADMIN_PREFIX, "/v3/kms/service-status").as_str(), + AdminOperation(&GetKmsStatusHandler {}), + )?; + + r.insert( + Method::POST, + format!("{}{}", ADMIN_PREFIX, "/v3/kms/reconfigure").as_str(), + AdminOperation(&ReconfigureKmsHandler {}), + )?; + + Ok(()) +} + /// Configure KMS service handler pub struct ConfigureKmsHandler;