fmt: format

This commit is contained in:
GW_MC
2026-07-18 04:54:29 +00:00
parent 6f560c981b
commit 2c20d08127
20 changed files with 88 additions and 81 deletions

View File

@@ -107,7 +107,9 @@ impl OnConfigUpdateHandler for NginxMasterMessageHandlerImpl {
// apply reload on the root config // apply reload on the root config
self.command_handler.reload(Some(&root_config_path)).await?; self.command_handler.reload(Some(&root_config_path)).await?;
// persist deployment path so Reload/Test commands survive agent restarts // persist deployment path so Reload/Test commands survive agent restarts
self.fs_handler.save_last_deployment(&root_config_path).await?; self.fs_handler
.save_last_deployment(&root_config_path)
.await?;
info!("Persisted last deployment path: {}", root_config_path); info!("Persisted last deployment path: {}", root_config_path);
// Reply the master to confirm the config update is successful // Reply the master to confirm the config update is successful
self.master_handler self.master_handler

View File

@@ -54,7 +54,9 @@ mod tests {
proxy_setting_service: Arc::new(proxy_setting::MockProxySettingService::new()), proxy_setting_service: Arc::new(proxy_setting::MockProxySettingService::new()),
rewrite_rule_service: Arc::new(rewrite_rule::MockRewriteRuleService::new()), rewrite_rule_service: Arc::new(rewrite_rule::MockRewriteRuleService::new()),
ssl_certificate_service: Arc::new(ssl_certificate::MockSslCertificateService::new()), ssl_certificate_service: Arc::new(ssl_certificate::MockSslCertificateService::new()),
config_inheritance_service: Arc::new(config_inheritance::MockConfigInheritanceService::new()), config_inheritance_service: Arc::new(
config_inheritance::MockConfigInheritanceService::new(),
),
}); });
get_router().await.with_state(state) get_router().await.with_state(state)
} }

View File

@@ -9,7 +9,7 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::access_rule::{ use crate::service::proxy::access_rule::{
AccessRuleService, CreateAccessRuleParams, UpdateAccessRuleParams, AccessRuleService, CreateAccessRuleParams, UpdateAccessRuleParams,
}; };
@@ -151,10 +151,7 @@ pub(super) fn routes() -> ApiRouter {
"/locations/{location_id}/access-rules", "/locations/{location_id}/access-rules",
axum::routing::get(list_access_rules_by_location), axum::routing::get(list_access_rules_by_location),
) )
.route( .route("/access-rules", axum::routing::post(create_access_rule))
"/access-rules",
axum::routing::post(create_access_rule),
)
.route( .route(
"/access-rules/{id}", "/access-rules/{id}",
axum::routing::get(get_access_rule) axum::routing::get(get_access_rule)

View File

@@ -9,7 +9,7 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::{ProxyServiceTrait, types::AgentConfigBinding}; use crate::service::proxy::{ProxyServiceTrait, types::AgentConfigBinding};
use super::configs::ProxyConfigResponse; use super::configs::ProxyConfigResponse;
@@ -56,7 +56,10 @@ async fn bind_agent(
Json(body): Json<BindAgentRequest>, Json(body): Json<BindAgentRequest>,
) -> Result<impl IntoResponse, AppError> { ) -> Result<impl IntoResponse, AppError> {
let binding = svc.bind_agent(agent_id, body.config_id).await?; let binding = svc.bind_agent(agent_id, body.config_id).await?;
Ok((StatusCode::CREATED, Json(AgentConfigResponse::from(binding)))) Ok((
StatusCode::CREATED,
Json(AgentConfigResponse::from(binding)),
))
} }
async fn unbind_agent( async fn unbind_agent(
@@ -72,8 +75,7 @@ async fn unbind_agent(
} }
pub(super) fn routes() -> ApiRouter { pub(super) fn routes() -> ApiRouter {
ApiRouter::new() ApiRouter::new().route(
.route(
"/agents/{agent_id}/config", "/agents/{agent_id}/config",
axum::routing::get(get_active_agent_config) axum::routing::get(get_active_agent_config)
.post(bind_agent) .post(bind_agent)

View File

@@ -9,7 +9,7 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::cache_zone::{ use crate::service::proxy::cache_zone::{
CacheZoneService, CreateCacheZoneParams, UpdateCacheZoneParams, CacheZoneService, CreateCacheZoneParams, UpdateCacheZoneParams,
}; };

View File

@@ -9,7 +9,7 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::config_inheritance::{ use crate::service::proxy::config_inheritance::{
AddInheritanceParams, ConfigInheritanceRecord, ConfigInheritanceService, AddInheritanceParams, ConfigInheritanceRecord, ConfigInheritanceService,
}; };
@@ -100,8 +100,5 @@ pub(super) fn routes() -> ApiRouter {
"/configs/{id}/parents/{parent_id}", "/configs/{id}/parents/{parent_id}",
axum::routing::delete(remove_parent), axum::routing::delete(remove_parent),
) )
.route( .route("/configs/{id}/children", axum::routing::get(list_children))
"/configs/{id}/children",
axum::routing::get(list_children),
)
} }

View File

@@ -9,7 +9,7 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::{ use crate::service::proxy::{
ProxyServiceTrait, ProxyServiceTrait,
types::{CreateProxyConfigParams, ProxyConfigSummary, UpdateProxyConfigParams}, types::{CreateProxyConfigParams, ProxyConfigSummary, UpdateProxyConfigParams},
@@ -136,7 +136,10 @@ async fn render_config(
pub(super) fn routes() -> ApiRouter { pub(super) fn routes() -> ApiRouter {
ApiRouter::new() ApiRouter::new()
.route("/configs", axum::routing::get(list_configs).post(create_config)) .route(
"/configs",
axum::routing::get(list_configs).post(create_config),
)
.route( .route(
"/configs/{id}", "/configs/{id}",
axum::routing::get(get_config) axum::routing::get(get_config)

View File

@@ -9,7 +9,7 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::limit_rule::{ use crate::service::proxy::limit_rule::{
CreateLimitRuleParams, LimitRuleService, UpdateLimitRuleParams, CreateLimitRuleParams, LimitRuleService, UpdateLimitRuleParams,
}; };
@@ -131,10 +131,7 @@ pub(super) fn routes() -> ApiRouter {
"/locations/{location_id}/limit-rules", "/locations/{location_id}/limit-rules",
axum::routing::get(list_limit_rules_by_location), axum::routing::get(list_limit_rules_by_location),
) )
.route( .route("/limit-rules", axum::routing::post(create_limit_rule))
"/limit-rules",
axum::routing::post(create_limit_rule),
)
.route( .route(
"/limit-rules/{id}", "/limit-rules/{id}",
axum::routing::get(get_limit_rule) axum::routing::get(get_limit_rule)

View File

@@ -9,7 +9,7 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::limit_zone::{ use crate::service::proxy::limit_zone::{
CreateLimitZoneParams, LimitZoneService, UpdateLimitZoneParams, CreateLimitZoneParams, LimitZoneService, UpdateLimitZoneParams,
}; };

View File

@@ -9,7 +9,7 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::location_block::{ use crate::service::proxy::location_block::{
CreateLocationBlockParams, LocationBlockService, UpdateLocationBlockParams, CreateLocationBlockParams, LocationBlockService, UpdateLocationBlockParams,
}; };
@@ -95,7 +95,10 @@ async fn create_location(
let mut params = CreateLocationBlockParams::from(body); let mut params = CreateLocationBlockParams::from(body);
params.server_id = server_id; params.server_id = server_id;
let location = svc.create(params).await?; let location = svc.create(params).await?;
Ok((StatusCode::CREATED, Json(LocationBlockResponse::from(location)))) Ok((
StatusCode::CREATED,
Json(LocationBlockResponse::from(location)),
))
} }
async fn get_location( async fn get_location(

View File

@@ -9,7 +9,7 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::log_setting::{ use crate::service::proxy::log_setting::{
CreateLogSettingParams, LogSettingService, UpdateLogSettingParams, CreateLogSettingParams, LogSettingService, UpdateLogSettingParams,
}; };

View File

@@ -9,7 +9,7 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::proxy_setting::{ use crate::service::proxy::proxy_setting::{
CreateProxySettingParams, ProxySettingService, UpdateProxySettingParams, CreateProxySettingParams, ProxySettingService, UpdateProxySettingParams,
}; };
@@ -107,7 +107,10 @@ async fn create_proxy_setting(
let mut params = CreateProxySettingParams::from(body); let mut params = CreateProxySettingParams::from(body);
params.location_id = location_id; params.location_id = location_id;
let setting = svc.create(params).await?; let setting = svc.create(params).await?;
Ok((StatusCode::CREATED, Json(ProxySettingResponse::from(setting)))) Ok((
StatusCode::CREATED,
Json(ProxySettingResponse::from(setting)),
))
} }
async fn get_proxy_setting( async fn get_proxy_setting(

View File

@@ -9,7 +9,7 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::rewrite_rule::{ use crate::service::proxy::rewrite_rule::{
CreateRewriteRuleParams, RewriteRuleService, UpdateRewriteRuleParams, CreateRewriteRuleParams, RewriteRuleService, UpdateRewriteRuleParams,
}; };

View File

@@ -9,7 +9,7 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::server_block::{ use crate::service::proxy::server_block::{
CreateServerBlockParams, ServerBlockService, UpdateServerBlockParams, CreateServerBlockParams, ServerBlockService, UpdateServerBlockParams,
}; };

View File

@@ -9,7 +9,7 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::ssl_certificate::{ use crate::service::proxy::ssl_certificate::{
CreateSslCertificateParams, SslCertificateService, UpdateSslCertificateParams, CreateSslCertificateParams, SslCertificateService, UpdateSslCertificateParams,
}; };
@@ -86,7 +86,10 @@ async fn create_ssl_certificate(
Json(body): Json<CreateSslCertificateRequest>, Json(body): Json<CreateSslCertificateRequest>,
) -> Result<impl IntoResponse, AppError> { ) -> Result<impl IntoResponse, AppError> {
let cert = svc.create(body.into()).await?; let cert = svc.create(body.into()).await?;
Ok((StatusCode::CREATED, Json(SslCertificateResponse::from(cert)))) Ok((
StatusCode::CREATED,
Json(SslCertificateResponse::from(cert)),
))
} }
async fn get_ssl_certificate( async fn get_ssl_certificate(

View File

@@ -5,18 +5,12 @@ use axum_test::TestServer;
use crate::routes::api::{ApiState, LocalApiState}; use crate::routes::api::{ApiState, LocalApiState};
use crate::service::proxy::*; use crate::service::proxy::*;
use crate::service::proxy::{ use crate::service::proxy::{
access_rule::MockAccessRuleService, access_rule::MockAccessRuleService, cache_zone::MockCacheZoneService,
cache_zone::MockCacheZoneService, config_inheritance::MockConfigInheritanceService, limit_rule::MockLimitRuleService,
config_inheritance::MockConfigInheritanceService, limit_zone::MockLimitZoneService, location_block::MockLocationBlockService,
limit_rule::MockLimitRuleService, log_setting::MockLogSettingService, proxy_setting::MockProxySettingService,
limit_zone::MockLimitZoneService, rewrite_rule::MockRewriteRuleService, server_block::MockServerBlockService,
location_block::MockLocationBlockService, ssl_certificate::MockSslCertificateService, upstream::MockUpstreamService,
log_setting::MockLogSettingService,
proxy_setting::MockProxySettingService,
rewrite_rule::MockRewriteRuleService,
server_block::MockServerBlockService,
ssl_certificate::MockSslCertificateService,
upstream::MockUpstreamService,
}; };
pub(crate) struct TestProxyApiBuilder { pub(crate) struct TestProxyApiBuilder {
@@ -121,31 +115,41 @@ impl TestProxyApiBuilder {
pub async fn build(self) -> TestServer { pub async fn build(self) -> TestServer {
let state = ApiState { let state = ApiState {
proxy_service: Arc::new(self.proxy_service.unwrap_or_else(MockProxyServiceTrait::new)), proxy_service: Arc::new(
self.proxy_service
.unwrap_or_else(MockProxyServiceTrait::new),
),
server_block_service: Arc::new( server_block_service: Arc::new(
self.server_block_service.unwrap_or_else(MockServerBlockService::new), self.server_block_service
.unwrap_or_else(MockServerBlockService::new),
), ),
upstream_service: Arc::new( upstream_service: Arc::new(
self.upstream_service.unwrap_or_else(MockUpstreamService::new), self.upstream_service
.unwrap_or_else(MockUpstreamService::new),
), ),
location_block_service: Arc::new( location_block_service: Arc::new(
self.location_block_service self.location_block_service
.unwrap_or_else(MockLocationBlockService::new), .unwrap_or_else(MockLocationBlockService::new),
), ),
access_rule_service: Arc::new( access_rule_service: Arc::new(
self.access_rule_service.unwrap_or_else(MockAccessRuleService::new), self.access_rule_service
.unwrap_or_else(MockAccessRuleService::new),
), ),
cache_zone_service: Arc::new( cache_zone_service: Arc::new(
self.cache_zone_service.unwrap_or_else(MockCacheZoneService::new), self.cache_zone_service
.unwrap_or_else(MockCacheZoneService::new),
), ),
limit_rule_service: Arc::new( limit_rule_service: Arc::new(
self.limit_rule_service.unwrap_or_else(MockLimitRuleService::new), self.limit_rule_service
.unwrap_or_else(MockLimitRuleService::new),
), ),
limit_zone_service: Arc::new( limit_zone_service: Arc::new(
self.limit_zone_service.unwrap_or_else(MockLimitZoneService::new), self.limit_zone_service
.unwrap_or_else(MockLimitZoneService::new),
), ),
log_setting_service: Arc::new( log_setting_service: Arc::new(
self.log_setting_service.unwrap_or_else(MockLogSettingService::new), self.log_setting_service
.unwrap_or_else(MockLogSettingService::new),
), ),
proxy_setting_service: Arc::new( proxy_setting_service: Arc::new(
self.proxy_setting_service self.proxy_setting_service

View File

@@ -9,10 +9,10 @@ use axum::{
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use uuid::Uuid; use uuid::Uuid;
use crate::routes::api::{AppError, ApiRouter}; use crate::routes::api::{ApiRouter, AppError};
use crate::service::proxy::types::UpstreamConfig; use crate::service::proxy::types::UpstreamConfig;
use crate::service::proxy::upstream::{ use crate::service::proxy::upstream::{
CreateUpstreamParams, UpstreamService, UpdateUpstreamParams, CreateUpstreamParams, UpdateUpstreamParams, UpstreamService,
}; };
#[derive(Serialize)] #[derive(Serialize)]

View File

@@ -36,7 +36,9 @@ mod tests {
proxy_setting_service: Arc::new(proxy_setting::MockProxySettingService::new()), proxy_setting_service: Arc::new(proxy_setting::MockProxySettingService::new()),
rewrite_rule_service: Arc::new(rewrite_rule::MockRewriteRuleService::new()), rewrite_rule_service: Arc::new(rewrite_rule::MockRewriteRuleService::new()),
ssl_certificate_service: Arc::new(ssl_certificate::MockSslCertificateService::new()), ssl_certificate_service: Arc::new(ssl_certificate::MockSslCertificateService::new()),
config_inheritance_service: Arc::new(config_inheritance::MockConfigInheritanceService::new()), config_inheritance_service: Arc::new(
config_inheritance::MockConfigInheritanceService::new(),
),
}); });
let router = get_root_router(state).await; let router = get_root_router(state).await;
let server = TestServer::new(router); let server = TestServer::new(router);
@@ -61,7 +63,9 @@ mod tests {
proxy_setting_service: Arc::new(proxy_setting::MockProxySettingService::new()), proxy_setting_service: Arc::new(proxy_setting::MockProxySettingService::new()),
rewrite_rule_service: Arc::new(rewrite_rule::MockRewriteRuleService::new()), rewrite_rule_service: Arc::new(rewrite_rule::MockRewriteRuleService::new()),
ssl_certificate_service: Arc::new(ssl_certificate::MockSslCertificateService::new()), ssl_certificate_service: Arc::new(ssl_certificate::MockSslCertificateService::new()),
config_inheritance_service: Arc::new(config_inheritance::MockConfigInheritanceService::new()), config_inheritance_service: Arc::new(
config_inheritance::MockConfigInheritanceService::new(),
),
}); });
let router = get_root_router(state).await; let router = get_root_router(state).await;
let server = TestServer::new(router); let server = TestServer::new(router);

View File

@@ -60,22 +60,18 @@ pub async fn start_master_server(
db_connection.clone(), db_connection.clone(),
)), )),
server_block_service: Arc::new( server_block_service: Arc::new(
crate::service::proxy::server_block::ServerBlockServiceImpl::new( crate::service::proxy::server_block::ServerBlockServiceImpl::new(db_connection.clone()),
),
upstream_service: Arc::new(crate::service::proxy::upstream::UpstreamServiceImpl::new(
db_connection.clone(), db_connection.clone(),
), )),
),
upstream_service: Arc::new(
crate::service::proxy::upstream::UpstreamServiceImpl::new(db_connection.clone()),
),
location_block_service: Arc::new( location_block_service: Arc::new(
crate::service::proxy::location_block::LocationBlockServiceImpl::new( crate::service::proxy::location_block::LocationBlockServiceImpl::new(
db_connection.clone(), db_connection.clone(),
), ),
), ),
access_rule_service: Arc::new( access_rule_service: Arc::new(
crate::service::proxy::access_rule::AccessRuleServiceImpl::new( crate::service::proxy::access_rule::AccessRuleServiceImpl::new(db_connection.clone()),
db_connection.clone(),
),
), ),
cache_zone_service: Arc::new( cache_zone_service: Arc::new(
crate::service::proxy::cache_zone::CacheZoneServiceImpl::new(db_connection.clone()), crate::service::proxy::cache_zone::CacheZoneServiceImpl::new(db_connection.clone()),
@@ -87,9 +83,7 @@ pub async fn start_master_server(
crate::service::proxy::limit_zone::LimitZoneServiceImpl::new(db_connection.clone()), crate::service::proxy::limit_zone::LimitZoneServiceImpl::new(db_connection.clone()),
), ),
log_setting_service: Arc::new( log_setting_service: Arc::new(
crate::service::proxy::log_setting::LogSettingServiceImpl::new( crate::service::proxy::log_setting::LogSettingServiceImpl::new(db_connection.clone()),
db_connection.clone(),
),
), ),
proxy_setting_service: Arc::new( proxy_setting_service: Arc::new(
crate::service::proxy::proxy_setting::ProxySettingServiceImpl::new( crate::service::proxy::proxy_setting::ProxySettingServiceImpl::new(
@@ -97,9 +91,7 @@ pub async fn start_master_server(
), ),
), ),
rewrite_rule_service: Arc::new( rewrite_rule_service: Arc::new(
crate::service::proxy::rewrite_rule::RewriteRuleServiceImpl::new( crate::service::proxy::rewrite_rule::RewriteRuleServiceImpl::new(db_connection.clone()),
db_connection.clone(),
),
), ),
ssl_certificate_service: Arc::new( ssl_certificate_service: Arc::new(
crate::service::proxy::ssl_certificate::SslCertificateServiceImpl::new( crate::service::proxy::ssl_certificate::SslCertificateServiceImpl::new(

View File

@@ -1,9 +1,7 @@
use sea_orm::{ActiveModelTrait, ActiveValue::Set, DatabaseConnection, EntityTrait, prelude::*}; use sea_orm::{ActiveModelTrait, ActiveValue::Set, DatabaseConnection, EntityTrait, prelude::*};
use uuid::Uuid; use uuid::Uuid;
use crate::service::proxy::types::{ use crate::service::proxy::types::{ProxyServiceError, ProxyServiceResult, UpstreamConfig};
ProxyServiceError, ProxyServiceResult, UpstreamConfig,
};
pub struct CreateUpstreamParams { pub struct CreateUpstreamParams {
pub config_id: Uuid, pub config_id: Uuid,