From b8b94dfd772bb92b67c3af0cb3a6432119bb5e92 Mon Sep 17 00:00:00 2001 From: Fu Diwei Date: Tue, 27 May 2025 17:28:06 +0800 Subject: [PATCH 1/8] feat: support configuring huaweicloud enterprise project id --- internal/deployer/providers.go | 42 ++++++++++--------- internal/domain/access.go | 5 ++- .../huaweicloud-cdn/huaweicloud_cdn.go | 11 +++-- .../huaweicloud-elb/huaweicloud_elb.go | 12 ++++-- .../huaweicloud-scm/huaweicloud_scm.go | 7 +++- .../huaweicloud-waf/huaweicloud_waf.go | 35 ++++++++++------ .../huaweicloud-elb/huaweicloud_elb.go | 11 +++-- .../huaweicloud-scm/huaweicloud_scm.go | 18 ++++---- .../huaweicloud-waf/huaweicloud_waf.go | 11 +++-- internal/pkg/utils/type/cast.go | 17 ++++++++ .../access/AccessFormHuaweiCloudConfig.tsx | 20 +++++++-- ui/src/domain/access.ts | 1 + ui/src/i18n/locales/en/nls.access.json | 3 ++ ui/src/i18n/locales/zh/nls.access.json | 3 ++ 14 files changed, 137 insertions(+), 59 deletions(-) diff --git a/internal/deployer/providers.go b/internal/deployer/providers.go index 7f9bae91..1760ee24 100644 --- a/internal/deployer/providers.go +++ b/internal/deployer/providers.go @@ -676,40 +676,44 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer switch options.Provider { case domain.DeploymentProviderTypeHuaweiCloudCDN: deployer, err := pHuaweiCloudCDN.NewDeployer(&pHuaweiCloudCDN.DeployerConfig{ - AccessKeyId: access.AccessKeyId, - SecretAccessKey: access.SecretAccessKey, - Region: maputil.GetString(options.ProviderServiceConfig, "region"), - Domain: maputil.GetString(options.ProviderServiceConfig, "domain"), + AccessKeyId: access.AccessKeyId, + SecretAccessKey: access.SecretAccessKey, + EnterpriseProjectId: access.EnterpriseProjectId, + Region: maputil.GetString(options.ProviderServiceConfig, "region"), + Domain: maputil.GetString(options.ProviderServiceConfig, "domain"), }) return deployer, err case domain.DeploymentProviderTypeHuaweiCloudELB: deployer, err := pHuaweiCloudELB.NewDeployer(&pHuaweiCloudELB.DeployerConfig{ - AccessKeyId: access.AccessKeyId, - SecretAccessKey: access.SecretAccessKey, - Region: maputil.GetString(options.ProviderServiceConfig, "region"), - ResourceType: pHuaweiCloudELB.ResourceType(maputil.GetString(options.ProviderServiceConfig, "resourceType")), - CertificateId: maputil.GetString(options.ProviderServiceConfig, "certificateId"), - LoadbalancerId: maputil.GetString(options.ProviderServiceConfig, "loadbalancerId"), - ListenerId: maputil.GetString(options.ProviderServiceConfig, "listenerId"), + AccessKeyId: access.AccessKeyId, + SecretAccessKey: access.SecretAccessKey, + EnterpriseProjectId: access.EnterpriseProjectId, + Region: maputil.GetString(options.ProviderServiceConfig, "region"), + ResourceType: pHuaweiCloudELB.ResourceType(maputil.GetString(options.ProviderServiceConfig, "resourceType")), + CertificateId: maputil.GetString(options.ProviderServiceConfig, "certificateId"), + LoadbalancerId: maputil.GetString(options.ProviderServiceConfig, "loadbalancerId"), + ListenerId: maputil.GetString(options.ProviderServiceConfig, "listenerId"), }) return deployer, err case domain.DeploymentProviderTypeHuaweiCloudSCM: deployer, err := pHuaweiCloudSCM.NewDeployer(&pHuaweiCloudSCM.DeployerConfig{ - AccessKeyId: access.AccessKeyId, - SecretAccessKey: access.SecretAccessKey, + AccessKeyId: access.AccessKeyId, + SecretAccessKey: access.SecretAccessKey, + EnterpriseProjectId: access.EnterpriseProjectId, }) return deployer, err case domain.DeploymentProviderTypeHuaweiCloudWAF: deployer, err := pHuaweiCloudWAF.NewDeployer(&pHuaweiCloudWAF.DeployerConfig{ - AccessKeyId: access.AccessKeyId, - SecretAccessKey: access.SecretAccessKey, - Region: maputil.GetString(options.ProviderServiceConfig, "region"), - ResourceType: pHuaweiCloudWAF.ResourceType(maputil.GetString(options.ProviderServiceConfig, "resourceType")), - CertificateId: maputil.GetString(options.ProviderServiceConfig, "certificateId"), - Domain: maputil.GetString(options.ProviderServiceConfig, "domain"), + AccessKeyId: access.AccessKeyId, + SecretAccessKey: access.SecretAccessKey, + EnterpriseProjectId: access.EnterpriseProjectId, + Region: maputil.GetString(options.ProviderServiceConfig, "region"), + ResourceType: pHuaweiCloudWAF.ResourceType(maputil.GetString(options.ProviderServiceConfig, "resourceType")), + CertificateId: maputil.GetString(options.ProviderServiceConfig, "certificateId"), + Domain: maputil.GetString(options.ProviderServiceConfig, "domain"), }) return deployer, err diff --git a/internal/domain/access.go b/internal/domain/access.go index e31bb1a0..d77de3fe 100644 --- a/internal/domain/access.go +++ b/internal/domain/access.go @@ -199,8 +199,9 @@ type AccessConfigForHetzner struct { } type AccessConfigForHuaweiCloud struct { - AccessKeyId string `json:"accessKeyId"` - SecretAccessKey string `json:"secretAccessKey"` + AccessKeyId string `json:"accessKeyId"` + SecretAccessKey string `json:"secretAccessKey"` + EnterpriseProjectId string `json:"enterpriseProjectId,omitempty"` } type AccessConfigForJDCloud struct { diff --git a/internal/pkg/core/deployer/providers/huaweicloud-cdn/huaweicloud_cdn.go b/internal/pkg/core/deployer/providers/huaweicloud-cdn/huaweicloud_cdn.go index d33dafff..3a8122ca 100644 --- a/internal/pkg/core/deployer/providers/huaweicloud-cdn/huaweicloud_cdn.go +++ b/internal/pkg/core/deployer/providers/huaweicloud-cdn/huaweicloud_cdn.go @@ -21,6 +21,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 华为云 SecretAccessKey。 SecretAccessKey string `json:"secretAccessKey"` + // 华为云企业项目 ID。 + EnterpriseProjectId string `json:"enterpriseProjectId,omitempty"` // 华为云区域。 Region string `json:"region"` // 加速域名(不支持泛域名)。 @@ -51,8 +53,9 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { } uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ - AccessKeyId: config.AccessKeyId, - SecretAccessKey: config.SecretAccessKey, + AccessKeyId: config.AccessKeyId, + SecretAccessKey: config.SecretAccessKey, + EnterpriseProjectId: config.EnterpriseProjectId, }) if err != nil { return nil, fmt.Errorf("failed to create ssl uploader: %w", err) @@ -88,7 +91,8 @@ func (d *DeployerProvider) Deploy(ctx context.Context, certPEM string, privkeyPE // 查询加速域名配置 // REF: https://support.huaweicloud.com/api-cdn/ShowDomainFullConfig.html showDomainFullConfigReq := &hccdnmodel.ShowDomainFullConfigRequest{ - DomainName: d.config.Domain, + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(d.config.EnterpriseProjectId), + DomainName: d.config.Domain, } showDomainFullConfigResp, err := d.sdkClient.ShowDomainFullConfig(showDomainFullConfigReq) d.logger.Debug("sdk request 'cdn.ShowDomainFullConfig'", slog.Any("request", showDomainFullConfigReq), slog.Any("response", showDomainFullConfigResp)) @@ -107,6 +111,7 @@ func (d *DeployerProvider) Deploy(ctx context.Context, certPEM string, privkeyPE updateDomainMultiCertificatesReqBodyContent.CertName = typeutil.ToPtr(upres.CertName) updateDomainMultiCertificatesReqBodyContent = assign(updateDomainMultiCertificatesReqBodyContent, showDomainFullConfigResp.Configs) updateDomainMultiCertificatesReq := &hccdnmodel.UpdateDomainMultiCertificatesRequest{ + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(d.config.EnterpriseProjectId), Body: &hccdnmodel.UpdateDomainMultiCertificatesRequestBody{ Https: updateDomainMultiCertificatesReqBodyContent, }, diff --git a/internal/pkg/core/deployer/providers/huaweicloud-elb/huaweicloud_elb.go b/internal/pkg/core/deployer/providers/huaweicloud-elb/huaweicloud_elb.go index 23ec4a92..92c62c9a 100644 --- a/internal/pkg/core/deployer/providers/huaweicloud-elb/huaweicloud_elb.go +++ b/internal/pkg/core/deployer/providers/huaweicloud-elb/huaweicloud_elb.go @@ -27,6 +27,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 华为云 SecretAccessKey。 SecretAccessKey string `json:"secretAccessKey"` + // 华为云企业项目 ID。 + EnterpriseProjectId string `json:"enterpriseProjectId,omitempty"` // 华为云区域。 Region string `json:"region"` // 部署资源类型。 @@ -62,9 +64,10 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { } uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ - AccessKeyId: config.AccessKeyId, - SecretAccessKey: config.SecretAccessKey, - Region: config.Region, + AccessKeyId: config.AccessKeyId, + SecretAccessKey: config.SecretAccessKey, + EnterpriseProjectId: config.EnterpriseProjectId, + Region: config.Region, }) if err != nil { return nil, fmt.Errorf("failed to create ssl uploader: %w", err) @@ -172,6 +175,9 @@ func (d *DeployerProvider) deployToLoadbalancer(ctx context.Context, certPEM str Protocol: &[]string{"HTTPS", "TERMINATED_HTTPS"}, LoadbalancerId: &[]string{showLoadBalancerResp.Loadbalancer.Id}, } + if d.config.EnterpriseProjectId != "" { + listListenersReq.EnterpriseProjectId = typeutil.ToPtr([]string{d.config.EnterpriseProjectId}) + } listListenersResp, err := d.sdkClient.ListListeners(listListenersReq) d.logger.Debug("sdk request 'elb.ListListeners'", slog.Any("request", listListenersReq), slog.Any("response", listListenersResp)) if err != nil { diff --git a/internal/pkg/core/deployer/providers/huaweicloud-scm/huaweicloud_scm.go b/internal/pkg/core/deployer/providers/huaweicloud-scm/huaweicloud_scm.go index c8c208ad..c1afb5d8 100644 --- a/internal/pkg/core/deployer/providers/huaweicloud-scm/huaweicloud_scm.go +++ b/internal/pkg/core/deployer/providers/huaweicloud-scm/huaweicloud_scm.go @@ -15,6 +15,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 华为云 SecretAccessKey。 SecretAccessKey string `json:"secretAccessKey"` + // 华为云企业项目 ID。 + EnterpriseProjectId string `json:"enterpriseProjectId,omitempty"` } type DeployerProvider struct { @@ -31,8 +33,9 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { } uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ - AccessKeyId: config.AccessKeyId, - SecretAccessKey: config.SecretAccessKey, + AccessKeyId: config.AccessKeyId, + SecretAccessKey: config.SecretAccessKey, + EnterpriseProjectId: config.EnterpriseProjectId, }) if err != nil { return nil, fmt.Errorf("failed to create ssl uploader: %w", err) diff --git a/internal/pkg/core/deployer/providers/huaweicloud-waf/huaweicloud_waf.go b/internal/pkg/core/deployer/providers/huaweicloud-waf/huaweicloud_waf.go index 8fe96ee0..04c1c30e 100644 --- a/internal/pkg/core/deployer/providers/huaweicloud-waf/huaweicloud_waf.go +++ b/internal/pkg/core/deployer/providers/huaweicloud-waf/huaweicloud_waf.go @@ -27,6 +27,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 华为云 SecretAccessKey。 SecretAccessKey string `json:"secretAccessKey"` + // 华为云企业项目 ID。 + EnterpriseProjectId string `json:"enterpriseProjectId,omitempty"` // 华为云区域。 Region string `json:"region"` // 部署资源类型。 @@ -59,9 +61,10 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { } uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ - AccessKeyId: config.AccessKeyId, - SecretAccessKey: config.SecretAccessKey, - Region: config.Region, + AccessKeyId: config.AccessKeyId, + SecretAccessKey: config.SecretAccessKey, + EnterpriseProjectId: config.EnterpriseProjectId, + Region: config.Region, }) if err != nil { return nil, fmt.Errorf("failed to create ssl uploader: %w", err) @@ -126,7 +129,8 @@ func (d *DeployerProvider) deployToCertificate(ctx context.Context, certPEM stri // 查询证书 // REF: https://support.huaweicloud.com/api-waf/ShowCertificate.html showCertificateReq := &hcwafmodel.ShowCertificateRequest{ - CertificateId: d.config.CertificateId, + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(d.config.EnterpriseProjectId), + CertificateId: d.config.CertificateId, } showCertificateResp, err := d.sdkClient.ShowCertificate(showCertificateReq) d.logger.Debug("sdk request 'waf.ShowCertificate'", slog.Any("request", showCertificateReq), slog.Any("response", showCertificateResp)) @@ -137,7 +141,8 @@ func (d *DeployerProvider) deployToCertificate(ctx context.Context, certPEM stri // 更新证书 // REF: https://support.huaweicloud.com/api-waf/UpdateCertificate.html updateCertificateReq := &hcwafmodel.UpdateCertificateRequest{ - CertificateId: d.config.CertificateId, + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(d.config.EnterpriseProjectId), + CertificateId: d.config.CertificateId, Body: &hcwafmodel.UpdateCertificateRequestBody{ Name: *showCertificateResp.Name, Content: typeutil.ToPtr(certPEM), @@ -179,9 +184,10 @@ func (d *DeployerProvider) deployToCloudServer(ctx context.Context, certPEM stri } listHostReq := &hcwafmodel.ListHostRequest{ - Hostname: typeutil.ToPtr(strings.TrimPrefix(d.config.Domain, "*")), - Page: typeutil.ToPtr(listHostPage), - Pagesize: typeutil.ToPtr(listHostPageSize), + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(d.config.EnterpriseProjectId), + Hostname: typeutil.ToPtr(strings.TrimPrefix(d.config.Domain, "*")), + Page: typeutil.ToPtr(listHostPage), + Pagesize: typeutil.ToPtr(listHostPageSize), } listHostResp, err := d.sdkClient.ListHost(listHostReq) d.logger.Debug("sdk request 'waf.ListHost'", slog.Any("request", listHostReq), slog.Any("response", listHostResp)) @@ -211,7 +217,8 @@ func (d *DeployerProvider) deployToCloudServer(ctx context.Context, certPEM stri // 更新云模式防护域名的配置 // REF: https://support.huaweicloud.com/api-waf/UpdateHost.html updateHostReq := &hcwafmodel.UpdateHostRequest{ - InstanceId: hostId, + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(d.config.EnterpriseProjectId), + InstanceId: hostId, Body: &hcwafmodel.UpdateHostRequestBody{ Certificateid: typeutil.ToPtr(upres.CertId), Certificatename: typeutil.ToPtr(upres.CertName), @@ -252,9 +259,10 @@ func (d *DeployerProvider) deployToPremiumHost(ctx context.Context, certPEM stri } listPremiumHostReq := &hcwafmodel.ListPremiumHostRequest{ - Hostname: typeutil.ToPtr(strings.TrimPrefix(d.config.Domain, "*")), - Page: typeutil.ToPtr(fmt.Sprintf("%d", listPremiumHostPage)), - Pagesize: typeutil.ToPtr(fmt.Sprintf("%d", listPremiumHostPageSize)), + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(d.config.EnterpriseProjectId), + Hostname: typeutil.ToPtr(strings.TrimPrefix(d.config.Domain, "*")), + Page: typeutil.ToPtr(fmt.Sprintf("%d", listPremiumHostPage)), + Pagesize: typeutil.ToPtr(fmt.Sprintf("%d", listPremiumHostPageSize)), } listPremiumHostResp, err := d.sdkClient.ListPremiumHost(listPremiumHostReq) d.logger.Debug("sdk request 'waf.ListPremiumHost'", slog.Any("request", listPremiumHostReq), slog.Any("response", listPremiumHostResp)) @@ -284,7 +292,8 @@ func (d *DeployerProvider) deployToPremiumHost(ctx context.Context, certPEM stri // 修改独享模式域名配置 // REF: https://support.huaweicloud.com/api-waf/UpdatePremiumHost.html updatePremiumHostReq := &hcwafmodel.UpdatePremiumHostRequest{ - HostId: hostId, + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(d.config.EnterpriseProjectId), + HostId: hostId, Body: &hcwafmodel.UpdatePremiumHostRequestBody{ Certificateid: typeutil.ToPtr(upres.CertId), Certificatename: typeutil.ToPtr(upres.CertName), diff --git a/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go b/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go index 9369144e..b205e97e 100644 --- a/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go +++ b/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go @@ -26,6 +26,8 @@ type UploaderConfig struct { AccessKeyId string `json:"accessKeyId"` // 华为云 SecretAccessKey。 SecretAccessKey string `json:"secretAccessKey"` + // 华为云企业项目 ID。 + EnterpriseProjectId string `json:"enterpriseProjectId,omitempty"` // 华为云区域。 Region string `json:"region"` } @@ -141,10 +143,11 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE createCertificateReq := &hcelbmodel.CreateCertificateRequest{ Body: &hcelbmodel.CreateCertificateRequestBody{ Certificate: &hcelbmodel.CreateCertificateOption{ - ProjectId: typeutil.ToPtr(projectId), - Name: typeutil.ToPtr(certName), - Certificate: typeutil.ToPtr(certPEM), - PrivateKey: typeutil.ToPtr(privkeyPEM), + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(u.config.EnterpriseProjectId), + ProjectId: typeutil.ToPtr(projectId), + Name: typeutil.ToPtr(certName), + Certificate: typeutil.ToPtr(certPEM), + PrivateKey: typeutil.ToPtr(privkeyPEM), }, }, } diff --git a/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go b/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go index f8435733..9f47442e 100644 --- a/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go +++ b/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go @@ -21,6 +21,8 @@ type UploaderConfig struct { AccessKeyId string `json:"accessKeyId"` // 华为云 SecretAccessKey。 SecretAccessKey string `json:"secretAccessKey"` + // 华为云企业项目 ID。 + EnterpriseProjectId string `json:"enterpriseProjectId,omitempty"` // 华为云区域。 Region string `json:"region"` } @@ -79,10 +81,11 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE } listCertificatesReq := &hcscmmodel.ListCertificatesRequest{ - Limit: typeutil.ToPtr(listCertificatesLimit), - Offset: typeutil.ToPtr(listCertificatesOffset), - SortDir: typeutil.ToPtr("DESC"), - SortKey: typeutil.ToPtr("certExpiredTime"), + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(u.config.EnterpriseProjectId), + Limit: typeutil.ToPtr(listCertificatesLimit), + Offset: typeutil.ToPtr(listCertificatesOffset), + SortDir: typeutil.ToPtr("DESC"), + SortKey: typeutil.ToPtr("certExpiredTime"), } listCertificatesResp, err := u.sdkClient.ListCertificates(listCertificatesReq) u.logger.Debug("sdk request 'scm.ListCertificates'", slog.Any("request", listCertificatesReq), slog.Any("response", listCertificatesResp)) @@ -142,9 +145,10 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE // REF: https://support.huaweicloud.com/api-ccm/ImportCertificate.html importCertificateReq := &hcscmmodel.ImportCertificateRequest{ Body: &hcscmmodel.ImportCertificateRequestBody{ - Name: certName, - Certificate: certPEM, - PrivateKey: privkeyPEM, + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(u.config.EnterpriseProjectId), + Name: certName, + Certificate: certPEM, + PrivateKey: privkeyPEM, }, } importCertificateResp, err := u.sdkClient.ImportCertificate(importCertificateReq) diff --git a/internal/pkg/core/uploader/providers/huaweicloud-waf/huaweicloud_waf.go b/internal/pkg/core/uploader/providers/huaweicloud-waf/huaweicloud_waf.go index d0c61775..a1cbe1df 100644 --- a/internal/pkg/core/uploader/providers/huaweicloud-waf/huaweicloud_waf.go +++ b/internal/pkg/core/uploader/providers/huaweicloud-waf/huaweicloud_waf.go @@ -26,6 +26,8 @@ type UploaderConfig struct { AccessKeyId string `json:"accessKeyId"` // 华为云 SecretAccessKey。 SecretAccessKey string `json:"secretAccessKey"` + // 华为云企业项目 ID。 + EnterpriseProjectId string `json:"enterpriseProjectId,omitempty"` // 华为云区域。 Region string `json:"region"` } @@ -84,8 +86,9 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE } listCertificatesReq := &hcwafmodel.ListCertificatesRequest{ - Page: typeutil.ToPtr(listCertificatesPage), - Pagesize: typeutil.ToPtr(listCertificatesPageSize), + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(u.config.EnterpriseProjectId), + Page: typeutil.ToPtr(listCertificatesPage), + Pagesize: typeutil.ToPtr(listCertificatesPageSize), } listCertificatesResp, err := u.sdkClient.ListCertificates(listCertificatesReq) u.logger.Debug("sdk request 'waf.ShowCertificate'", slog.Any("request", listCertificatesReq), slog.Any("response", listCertificatesResp)) @@ -96,7 +99,8 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE if listCertificatesResp.Items != nil { for _, certItem := range *listCertificatesResp.Items { showCertificateReq := &hcwafmodel.ShowCertificateRequest{ - CertificateId: certItem.Id, + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(u.config.EnterpriseProjectId), + CertificateId: certItem.Id, } showCertificateResp, err := u.sdkClient.ShowCertificate(showCertificateReq) u.logger.Debug("sdk request 'waf.ShowCertificate'", slog.Any("request", showCertificateReq), slog.Any("response", showCertificateResp)) @@ -141,6 +145,7 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE // 创建证书 // REF: https://support.huaweicloud.com/api-waf/CreateCertificate.html createCertificateReq := &hcwafmodel.CreateCertificateRequest{ + EnterpriseProjectId: typeutil.ToPtrOrZeroNil(u.config.EnterpriseProjectId), Body: &hcwafmodel.CreateCertificateRequestBody{ Name: certName, Content: certPEM, diff --git a/internal/pkg/utils/type/cast.go b/internal/pkg/utils/type/cast.go index 684e262e..1acd4765 100644 --- a/internal/pkg/utils/type/cast.go +++ b/internal/pkg/utils/type/cast.go @@ -1,5 +1,7 @@ package typeutil +import "reflect" + // 将对象转换为指针。 // // 入参: @@ -11,6 +13,21 @@ func ToPtr[T any](v T) (p *T) { return &v } +// 将非零值的对象转换为指针。 +// 与 [ToPtr] 不同的是,如果对象的值为零值,则返回 nil。 +// +// 入参: +// - 待转换的对象。 +// +// 出参: +// - 返回对象的指针。 +func ToPtrOrZeroNil[T any](v T) (p *T) { + if !reflect.ValueOf(v).IsZero() { + return &v + } + return nil +} + // 将指针转换为对象。 // // 入参: diff --git a/ui/src/components/access/AccessFormHuaweiCloudConfig.tsx b/ui/src/components/access/AccessFormHuaweiCloudConfig.tsx index f1d56ff0..c460f473 100644 --- a/ui/src/components/access/AccessFormHuaweiCloudConfig.tsx +++ b/ui/src/components/access/AccessFormHuaweiCloudConfig.tsx @@ -28,14 +28,19 @@ const AccessFormHuaweiCloudConfig = ({ form: formInst, formName, disabled, initi const formSchema = z.object({ accessKeyId: z .string() + .trim() .min(1, t("access.form.huaweicloud_access_key_id.placeholder")) - .max(64, t("common.errmsg.string_max", { max: 64 })) - .trim(), + .max(64, t("common.errmsg.string_max", { max: 64 })), secretAccessKey: z .string() + .trim() .min(1, t("access.form.huaweicloud_secret_access_key.placeholder")) + .max(64, t("common.errmsg.string_max", { max: 64 })), + enterpriseProjectId: z + .string() + .trim() .max(64, t("common.errmsg.string_max", { max: 64 })) - .trim(), + .nullish(), }); const formRule = createSchemaFieldRule(formSchema); @@ -69,6 +74,15 @@ const AccessFormHuaweiCloudConfig = ({ form: formInst, formName, disabled, initi > + + } + > + + ); }; diff --git a/ui/src/domain/access.ts b/ui/src/domain/access.ts index 69979aac..51398e7f 100644 --- a/ui/src/domain/access.ts +++ b/ui/src/domain/access.ts @@ -264,6 +264,7 @@ export type AccessConfigForHetzner = { export type AccessConfigForHuaweiCloud = { accessKeyId: string; secretAccessKey: string; + enterpriseProjectId?: string; }; export type AccessConfigForJDCloud = { diff --git a/ui/src/i18n/locales/en/nls.access.json b/ui/src/i18n/locales/en/nls.access.json index bf453f1d..13c9c5eb 100644 --- a/ui/src/i18n/locales/en/nls.access.json +++ b/ui/src/i18n/locales/en/nls.access.json @@ -252,6 +252,9 @@ "access.form.huaweicloud_secret_access_key.label": "Huawei Cloud SecretAccessKey", "access.form.huaweicloud_secret_access_key.placeholder": "Please enter Huawei Cloud SecretAccessKey", "access.form.huaweicloud_secret_access_key.tooltip": "For more information, see https://support.huaweicloud.com/intl/en-us/usermanual-ca/ca_01_0003.html", + "access.form.huaweicloud_enterprise_project_id.label": "Huawei Cloud enterprise project ID (Optional)", + "access.form.huaweicloud_enterprise_project_id.placeholder": "Please enter Huawei Cloud enterprise project ID", + "access.form.huaweicloud_enterprise_project_id.tooltip": "For more information, see https://support.huaweicloud.com/intl/en-us/usermanual-em/em_03_0000.html", "access.form.jdcloud_access_key_id.label": "JD Cloud AccessKeyId", "access.form.jdcloud_access_key_id.placeholder": "Please enter JD Cloud AccessKeyId", "access.form.jdcloud_access_key_id.tooltip": "For more information, see https://docs.jdcloud.com/en/account-management/accesskey-management", diff --git a/ui/src/i18n/locales/zh/nls.access.json b/ui/src/i18n/locales/zh/nls.access.json index fb51668f..43305dda 100644 --- a/ui/src/i18n/locales/zh/nls.access.json +++ b/ui/src/i18n/locales/zh/nls.access.json @@ -252,6 +252,9 @@ "access.form.huaweicloud_secret_access_key.label": "华为云 SecretAccessKey", "access.form.huaweicloud_secret_access_key.placeholder": "请输入华为云 SecretAccessKey", "access.form.huaweicloud_secret_access_key.tooltip": "这是什么?请参阅 https://support.huaweicloud.com/usermanual-ca/ca_01_0003.html", + "access.form.huaweicloud_enterprise_project_id.label": "华为云企业项目 ID(可选)", + "access.form.huaweicloud_enterprise_project_id.placeholder": "请输入华为云企业项目 ID", + "access.form.huaweicloud_enterprise_project_id.tooltip": "这是什么?请参阅 https://support.huaweicloud.com/usermanual-em/zh-cn_topic_0126101490.html", "access.form.jdcloud_access_key_id.label": "京东云 AccessKeyId", "access.form.jdcloud_access_key_id.placeholder": "请输入京东云 AccessKeyId", "access.form.jdcloud_access_key_id.tooltip": "这是什么?请参阅 https://docs.jdcloud.com/cn/account-management/accesskey-management", From df1f216b5bb8308f571782d1acba65a2c71617da Mon Sep 17 00:00:00 2001 From: Fu Diwei Date: Tue, 27 May 2025 21:04:25 +0800 Subject: [PATCH 2/8] feat: support configuring aliyun resource group id --- internal/deployer/providers.go | 14 ++++++ internal/domain/access.go | 1 + .../providers/aliyun-alb/aliyun_alb.go | 9 ++-- .../providers/aliyun-apigw/aliyun_apigw.go | 21 +++++---- .../aliyun-cas-deploy/aliyun_cas_deploy.go | 43 +++++++++++++------ .../providers/aliyun-cas/aliyun_cas.go | 3 ++ .../providers/aliyun-cdn/aliyun_cdn.go | 2 + .../providers/aliyun-clb/aliyun_clb.go | 9 ++-- .../providers/aliyun-dcdn/aliyun_dcdn.go | 2 + .../providers/aliyun-ddos/aliyun_ddos.go | 9 ++-- .../providers/aliyun-esa/aliyun_esa.go | 9 ++-- .../deployer/providers/aliyun-fc/aliyun_fc.go | 7 ++- .../deployer/providers/aliyun-ga/aliyun_ga.go | 7 ++- .../providers/aliyun-live/aliyun_live.go | 4 +- .../providers/aliyun-nlb/aliyun_nlb.go | 14 +++--- .../providers/aliyun-oss/aliyun_oss.go | 2 + .../providers/aliyun-vod/aliyun_vod.go | 6 ++- .../providers/aliyun-waf/aliyun_waf.go | 27 +++++++----- .../providers/aliyun-cas/aliyun_cas.go | 23 +++++----- .../providers/aliyun-slb/aliyun_slb.go | 9 +++- internal/pkg/utils/type/cast.go | 7 +-- .../access/AccessFormAliyunConfig.tsx | 27 ++++++++++-- .../access/AccessFormHuaweiCloudConfig.tsx | 6 +-- ui/src/domain/access.ts | 1 + ui/src/i18n/locales/en/nls.access.json | 3 ++ ui/src/i18n/locales/zh/nls.access.json | 3 ++ 26 files changed, 186 insertions(+), 82 deletions(-) diff --git a/internal/deployer/providers.go b/internal/deployer/providers.go index 1760ee24..e67c29e0 100644 --- a/internal/deployer/providers.go +++ b/internal/deployer/providers.go @@ -157,6 +157,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunALB.NewDeployer(&pAliyunALB.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, Region: maputil.GetString(options.ProviderServiceConfig, "region"), ResourceType: pAliyunALB.ResourceType(maputil.GetString(options.ProviderServiceConfig, "resourceType")), LoadbalancerId: maputil.GetString(options.ProviderServiceConfig, "loadbalancerId"), @@ -169,6 +170,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunAPIGW.NewDeployer(&pAliyunAPIGW.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, Region: maputil.GetString(options.ProviderServiceConfig, "region"), ServiceType: pAliyunAPIGW.ServiceType(maputil.GetString(options.ProviderServiceConfig, "serviceType")), GatewayId: maputil.GetString(options.ProviderServiceConfig, "gatewayId"), @@ -181,6 +183,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunCAS.NewDeployer(&pAliyunCAS.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, Region: maputil.GetString(options.ProviderServiceConfig, "region"), }) return deployer, err @@ -189,6 +192,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunCASDeploy.NewDeployer(&pAliyunCASDeploy.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, Region: maputil.GetString(options.ProviderServiceConfig, "region"), ResourceIds: sliceutil.Filter(strings.Split(maputil.GetString(options.ProviderServiceConfig, "resourceIds"), ";"), func(s string) bool { return s != "" }), ContactIds: sliceutil.Filter(strings.Split(maputil.GetString(options.ProviderServiceConfig, "contactIds"), ";"), func(s string) bool { return s != "" }), @@ -199,6 +203,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunCDN.NewDeployer(&pAliyunCDN.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, Domain: maputil.GetString(options.ProviderServiceConfig, "domain"), }) return deployer, err @@ -207,6 +212,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunCLB.NewDeployer(&pAliyunCLB.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, Region: maputil.GetString(options.ProviderServiceConfig, "region"), ResourceType: pAliyunCLB.ResourceType(maputil.GetString(options.ProviderServiceConfig, "resourceType")), LoadbalancerId: maputil.GetString(options.ProviderServiceConfig, "loadbalancerId"), @@ -219,6 +225,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunDCDN.NewDeployer(&pAliyunDCDN.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, Domain: maputil.GetString(options.ProviderServiceConfig, "domain"), }) return deployer, err @@ -227,6 +234,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunDDoS.NewDeployer(&pAliyunDDoS.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, Region: maputil.GetString(options.ProviderServiceConfig, "region"), Domain: maputil.GetString(options.ProviderServiceConfig, "domain"), }) @@ -245,6 +253,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunFC.NewDeployer(&pAliyunFC.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, Region: maputil.GetString(options.ProviderServiceConfig, "region"), ServiceVersion: maputil.GetOrDefaultString(options.ProviderServiceConfig, "serviceVersion", "3.0"), Domain: maputil.GetString(options.ProviderServiceConfig, "domain"), @@ -255,6 +264,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunGA.NewDeployer(&pAliyunGA.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, ResourceType: pAliyunGA.ResourceType(maputil.GetString(options.ProviderServiceConfig, "resourceType")), AcceleratorId: maputil.GetString(options.ProviderServiceConfig, "acceleratorId"), ListenerId: maputil.GetString(options.ProviderServiceConfig, "listenerId"), @@ -275,6 +285,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunNLB.NewDeployer(&pAliyunNLB.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, Region: maputil.GetString(options.ProviderServiceConfig, "region"), ResourceType: pAliyunNLB.ResourceType(maputil.GetString(options.ProviderServiceConfig, "resourceType")), LoadbalancerId: maputil.GetString(options.ProviderServiceConfig, "loadbalancerId"), @@ -286,6 +297,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunOSS.NewDeployer(&pAliyunOSS.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, Region: maputil.GetString(options.ProviderServiceConfig, "region"), Bucket: maputil.GetString(options.ProviderServiceConfig, "bucket"), Domain: maputil.GetString(options.ProviderServiceConfig, "domain"), @@ -296,6 +308,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunVOD.NewDeployer(&pAliyunVOD.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, Region: maputil.GetString(options.ProviderServiceConfig, "region"), Domain: maputil.GetString(options.ProviderServiceConfig, "domain"), }) @@ -305,6 +318,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer deployer, err := pAliyunWAF.NewDeployer(&pAliyunWAF.DeployerConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, + ResourceGroupId: access.ResourceGroupId, Region: maputil.GetString(options.ProviderServiceConfig, "region"), ServiceVersion: maputil.GetOrDefaultString(options.ProviderServiceConfig, "serviceVersion", "3.0"), InstanceId: maputil.GetString(options.ProviderServiceConfig, "instanceId"), diff --git a/internal/domain/access.go b/internal/domain/access.go index d77de3fe..5c96420e 100644 --- a/internal/domain/access.go +++ b/internal/domain/access.go @@ -38,6 +38,7 @@ type AccessConfigForACMEHttpReq struct { type AccessConfigForAliyun struct { AccessKeyId string `json:"accessKeyId"` AccessKeySecret string `json:"accessKeySecret"` + ResourceGroupId string `json:"resourceGroupId,omitempty"` } type AccessConfigForAWS struct { diff --git a/internal/pkg/core/deployer/providers/aliyun-alb/aliyun_alb.go b/internal/pkg/core/deployer/providers/aliyun-alb/aliyun_alb.go index 35b4997c..fec66c0e 100644 --- a/internal/pkg/core/deployer/providers/aliyun-alb/aliyun_alb.go +++ b/internal/pkg/core/deployer/providers/aliyun-alb/aliyun_alb.go @@ -25,6 +25,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` // 部署资源类型。 @@ -64,7 +66,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { return nil, fmt.Errorf("failed to create sdk clients: %w", err) } - uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.Region) + uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.ResourceGroupId, config.Region) if err != nil { return nil, fmt.Errorf("failed to create ssl uploader: %w", err) } @@ -423,7 +425,7 @@ func createSdkClients(accessKeyId, accessKeySecret, region string) (*wSdkClients // 接入点一览 https://api.aliyun.com/product/Alb var albEndpoint string switch region { - case "cn-hangzhou-finance": + case "", "cn-hangzhou-finance": albEndpoint = "alb.cn-hangzhou.aliyuncs.com" default: albEndpoint = fmt.Sprintf("alb.%s.aliyuncs.com", region) @@ -463,7 +465,7 @@ func createSdkClients(accessKeyId, accessKeySecret, region string) (*wSdkClients }, nil } -func createSslUploader(accessKeyId, accessKeySecret, region string) (uploader.Uploader, error) { +func createSslUploader(accessKeyId, accessKeySecret, resourceGroupId, region string) (uploader.Uploader, error) { casRegion := region if casRegion != "" { // 阿里云 CAS 服务接入点是独立于 ALB 服务的 @@ -479,6 +481,7 @@ func createSslUploader(accessKeyId, accessKeySecret, region string) (uploader.Up uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, + ResourceGroupId: resourceGroupId, Region: casRegion, }) return uploader, err diff --git a/internal/pkg/core/deployer/providers/aliyun-apigw/aliyun_apigw.go b/internal/pkg/core/deployer/providers/aliyun-apigw/aliyun_apigw.go index d74c7c27..f215e701 100644 --- a/internal/pkg/core/deployer/providers/aliyun-apigw/aliyun_apigw.go +++ b/internal/pkg/core/deployer/providers/aliyun-apigw/aliyun_apigw.go @@ -16,6 +16,7 @@ import ( "github.com/usual2970/certimate/internal/pkg/core/deployer" "github.com/usual2970/certimate/internal/pkg/core/uploader" uploadersp "github.com/usual2970/certimate/internal/pkg/core/uploader/providers/aliyun-cas" + typeutil "github.com/usual2970/certimate/internal/pkg/utils/type" ) type DeployerConfig struct { @@ -23,6 +24,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` // 服务类型。 @@ -61,7 +64,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { return nil, fmt.Errorf("failed to create sdk clients: %w", err) } - uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.Region) + uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.ResourceGroupId, config.Region) if err != nil { return nil, fmt.Errorf("failed to create ssl uploader: %w", err) } @@ -149,10 +152,11 @@ func (d *DeployerProvider) deployToCloudNative(ctx context.Context, certPEM stri } listDomainsReq := &aliapig.ListDomainsRequest{ - GatewayId: tea.String(d.config.GatewayId), - NameLike: tea.String(d.config.Domain), - PageNumber: tea.Int32(listDomainsPageNumber), - PageSize: tea.Int32(listDomainsPageSize), + ResourceGroupId: typeutil.ToPtrOrZeroNil(d.config.ResourceGroupId), + GatewayId: tea.String(d.config.GatewayId), + NameLike: tea.String(d.config.Domain), + PageNumber: tea.Int32(listDomainsPageNumber), + PageSize: tea.Int32(listDomainsPageSize), } listDomainsResp, err := d.sdkClients.CloudNativeAPIGateway.ListDomains(listDomainsReq) d.logger.Debug("sdk request 'apig.ListDomains'", slog.Any("request", listDomainsReq), slog.Any("response", listDomainsResp)) @@ -223,7 +227,7 @@ func (d *DeployerProvider) deployToCloudNative(ctx context.Context, certPEM stri func createSdkClients(accessKeyId, accessKeySecret, region string) (*wSdkClients, error) { // 接入点一览 https://api.aliyun.com/product/APIG - cloudNativeAPIGEndpoint := fmt.Sprintf("apig.%s.aliyuncs.com", region) + cloudNativeAPIGEndpoint := strings.ReplaceAll(fmt.Sprintf("apig.%s.aliyuncs.com", region), "..", ".") cloudNativeAPIGConfig := &aliopen.Config{ AccessKeyId: tea.String(accessKeyId), AccessKeySecret: tea.String(accessKeySecret), @@ -235,7 +239,7 @@ func createSdkClients(accessKeyId, accessKeySecret, region string) (*wSdkClients } // 接入点一览 https://api.aliyun.com/product/CloudAPI - traditionalAPIGEndpoint := fmt.Sprintf("apigateway.%s.aliyuncs.com", region) + traditionalAPIGEndpoint := strings.ReplaceAll(fmt.Sprintf("apigateway.%s.aliyuncs.com", region), "..", ".") traditionalAPIGConfig := &aliopen.Config{ AccessKeyId: tea.String(accessKeyId), AccessKeySecret: tea.String(accessKeySecret), @@ -252,7 +256,7 @@ func createSdkClients(accessKeyId, accessKeySecret, region string) (*wSdkClients }, nil } -func createSslUploader(accessKeyId, accessKeySecret, region string) (uploader.Uploader, error) { +func createSslUploader(accessKeyId, accessKeySecret, resourceGroupId, region string) (uploader.Uploader, error) { casRegion := region if casRegion != "" { // 阿里云 CAS 服务接入点是独立于 APIGateway 服务的 @@ -268,6 +272,7 @@ func createSslUploader(accessKeyId, accessKeySecret, region string) (uploader.Up uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, + ResourceGroupId: resourceGroupId, Region: casRegion, }) return uploader, err diff --git a/internal/pkg/core/deployer/providers/aliyun-cas-deploy/aliyun_cas_deploy.go b/internal/pkg/core/deployer/providers/aliyun-cas-deploy/aliyun_cas_deploy.go index 077dea5c..569edaf3 100644 --- a/internal/pkg/core/deployer/providers/aliyun-cas-deploy/aliyun_cas_deploy.go +++ b/internal/pkg/core/deployer/providers/aliyun-cas-deploy/aliyun_cas_deploy.go @@ -22,6 +22,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` // 阿里云云产品资源 ID 数组。 @@ -50,11 +52,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { return nil, fmt.Errorf("failed to create sdk client: %w", err) } - uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ - AccessKeyId: config.AccessKeyId, - AccessKeySecret: config.AccessKeySecret, - Region: config.Region, - }) + uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.ResourceGroupId, config.Region) if err != nil { return nil, fmt.Errorf("failed to create ssl uploader: %w", err) } @@ -94,9 +92,10 @@ func (d *DeployerProvider) Deploy(ctx context.Context, certPEM string, privkeyPE if len(contactIds) == 0 { // 获取联系人列表 // REF: https://help.aliyun.com/zh/ssl-certificate/developer-reference/api-cas-2020-04-07-listcontact - listContactReq := &alicas.ListContactRequest{} - listContactReq.ShowSize = tea.Int32(1) - listContactReq.CurrentPage = tea.Int32(1) + listContactReq := &alicas.ListContactRequest{ + ShowSize: tea.Int32(1), + CurrentPage: tea.Int32(1), + } listContactResp, err := d.sdkClient.ListContact(listContactReq) d.logger.Debug("sdk request 'cas.ListContact'", slog.Any("request", listContactReq), slog.Any("response", listContactResp)) if err != nil { @@ -157,14 +156,10 @@ func (d *DeployerProvider) Deploy(ctx context.Context, certPEM string, privkeyPE } func createSdkClient(accessKeyId, accessKeySecret, region string) (*alicas.Client, error) { - if region == "" { - region = "cn-hangzhou" // CAS 服务默认区域:华东一杭州 - } - // 接入点一览 https://api.aliyun.com/product/cas var endpoint string switch region { - case "cn-hangzhou": + case "", "cn-hangzhou": endpoint = "cas.aliyuncs.com" default: endpoint = fmt.Sprintf("cas.%s.aliyuncs.com", region) @@ -183,3 +178,25 @@ func createSdkClient(accessKeyId, accessKeySecret, region string) (*alicas.Clien return client, nil } + +func createSslUploader(accessKeyId, accessKeySecret, resourceGroupId, region string) (uploader.Uploader, error) { + casRegion := region + if casRegion != "" { + // 阿里云 CAS 服务接入点是独立于其他服务的 + // 国内版固定接入点:华东一杭州 + // 国际版固定接入点:亚太东南一新加坡 + if !strings.HasPrefix(casRegion, "cn-") { + casRegion = "ap-southeast-1" + } else { + casRegion = "cn-hangzhou" + } + } + + uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ + AccessKeyId: accessKeyId, + AccessKeySecret: accessKeySecret, + ResourceGroupId: resourceGroupId, + Region: casRegion, + }) + return uploader, err +} diff --git a/internal/pkg/core/deployer/providers/aliyun-cas/aliyun_cas.go b/internal/pkg/core/deployer/providers/aliyun-cas/aliyun_cas.go index 56681e57..73d2d77b 100644 --- a/internal/pkg/core/deployer/providers/aliyun-cas/aliyun_cas.go +++ b/internal/pkg/core/deployer/providers/aliyun-cas/aliyun_cas.go @@ -15,6 +15,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` } @@ -35,6 +37,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ AccessKeyId: config.AccessKeyId, AccessKeySecret: config.AccessKeySecret, + ResourceGroupId: config.ResourceGroupId, Region: config.Region, }) if err != nil { diff --git a/internal/pkg/core/deployer/providers/aliyun-cdn/aliyun_cdn.go b/internal/pkg/core/deployer/providers/aliyun-cdn/aliyun_cdn.go index ce5f9fd8..5fa6eedf 100644 --- a/internal/pkg/core/deployer/providers/aliyun-cdn/aliyun_cdn.go +++ b/internal/pkg/core/deployer/providers/aliyun-cdn/aliyun_cdn.go @@ -19,6 +19,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 加速域名(支持泛域名)。 Domain string `json:"domain"` } diff --git a/internal/pkg/core/deployer/providers/aliyun-clb/aliyun_clb.go b/internal/pkg/core/deployer/providers/aliyun-clb/aliyun_clb.go index 34c3a49e..ec35a190 100644 --- a/internal/pkg/core/deployer/providers/aliyun-clb/aliyun_clb.go +++ b/internal/pkg/core/deployer/providers/aliyun-clb/aliyun_clb.go @@ -20,6 +20,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` // 部署资源类型。 @@ -54,7 +56,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { return nil, fmt.Errorf("failed to create sdk client: %w", err) } - uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.Region) + uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.ResourceGroupId, config.Region) if err != nil { return nil, fmt.Errorf("failed to create ssl uploader: %w", err) } @@ -283,7 +285,7 @@ func createSdkClient(accessKeyId, accessKeySecret, region string) (*alislb.Clien // 接入点一览 https://api.aliyun.com/product/Slb var endpoint string switch region { - case + case "", "cn-hangzhou", "cn-hangzhou-finance", "cn-shanghai-finance-1", @@ -307,10 +309,11 @@ func createSdkClient(accessKeyId, accessKeySecret, region string) (*alislb.Clien return client, nil } -func createSslUploader(accessKeyId, accessKeySecret, region string) (uploader.Uploader, error) { +func createSslUploader(accessKeyId, accessKeySecret, resourceGroupId, region string) (uploader.Uploader, error) { uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, + ResourceGroupId: resourceGroupId, Region: region, }) return uploader, err diff --git a/internal/pkg/core/deployer/providers/aliyun-dcdn/aliyun_dcdn.go b/internal/pkg/core/deployer/providers/aliyun-dcdn/aliyun_dcdn.go index 4eb411fd..f27f4ab9 100644 --- a/internal/pkg/core/deployer/providers/aliyun-dcdn/aliyun_dcdn.go +++ b/internal/pkg/core/deployer/providers/aliyun-dcdn/aliyun_dcdn.go @@ -19,6 +19,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 加速域名(支持泛域名)。 Domain string `json:"domain"` } diff --git a/internal/pkg/core/deployer/providers/aliyun-ddos/aliyun_ddos.go b/internal/pkg/core/deployer/providers/aliyun-ddos/aliyun_ddos.go index d1cb5b61..83d5d602 100644 --- a/internal/pkg/core/deployer/providers/aliyun-ddos/aliyun_ddos.go +++ b/internal/pkg/core/deployer/providers/aliyun-ddos/aliyun_ddos.go @@ -22,6 +22,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` // 网站域名(支持泛域名)。 @@ -47,7 +49,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { return nil, fmt.Errorf("failed to create sdk client: %w", err) } - uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.Region) + uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.ResourceGroupId, config.Region) if err != nil { return nil, fmt.Errorf("failed to create ssl uploader: %w", err) } @@ -104,7 +106,7 @@ func createSdkClient(accessKeyId, accessKeySecret, region string) (*aliddos.Clie config := &aliopen.Config{ AccessKeyId: tea.String(accessKeyId), AccessKeySecret: tea.String(accessKeySecret), - Endpoint: tea.String(fmt.Sprintf("ddoscoo.%s.aliyuncs.com", region)), + Endpoint: tea.String(strings.ReplaceAll(fmt.Sprintf("ddoscoo.%s.aliyuncs.com", region), "..", ".")), } client, err := aliddos.NewClient(config) @@ -115,7 +117,7 @@ func createSdkClient(accessKeyId, accessKeySecret, region string) (*aliddos.Clie return client, nil } -func createSslUploader(accessKeyId, accessKeySecret, region string) (uploader.Uploader, error) { +func createSslUploader(accessKeyId, accessKeySecret, resourceGroupId, region string) (uploader.Uploader, error) { casRegion := region if casRegion != "" { // 阿里云 CAS 服务接入点是独立于 Anti-DDoS 服务的 @@ -131,6 +133,7 @@ func createSslUploader(accessKeyId, accessKeySecret, region string) (uploader.Up uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, + ResourceGroupId: resourceGroupId, Region: casRegion, }) return uploader, err diff --git a/internal/pkg/core/deployer/providers/aliyun-esa/aliyun_esa.go b/internal/pkg/core/deployer/providers/aliyun-esa/aliyun_esa.go index 1f29756f..74d8344b 100644 --- a/internal/pkg/core/deployer/providers/aliyun-esa/aliyun_esa.go +++ b/internal/pkg/core/deployer/providers/aliyun-esa/aliyun_esa.go @@ -22,6 +22,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` // 阿里云 ESA 站点 ID。 @@ -47,7 +49,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { return nil, fmt.Errorf("failed to create sdk client: %w", err) } - uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.Region) + uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.ResourceGroupId, config.Region) if err != nil { return nil, fmt.Errorf("failed to create ssl uploader: %w", err) } @@ -105,7 +107,7 @@ func createSdkClient(accessKeyId, accessKeySecret, region string) (*aliesa.Clien config := &aliopen.Config{ AccessKeyId: tea.String(accessKeyId), AccessKeySecret: tea.String(accessKeySecret), - Endpoint: tea.String(fmt.Sprintf("esa.%s.aliyuncs.com", region)), + Endpoint: tea.String(strings.ReplaceAll(fmt.Sprintf("esa.%s.aliyuncs.com", region), "..", ".")), } client, err := aliesa.NewClient(config) @@ -116,7 +118,7 @@ func createSdkClient(accessKeyId, accessKeySecret, region string) (*aliesa.Clien return client, nil } -func createSslUploader(accessKeyId, accessKeySecret, region string) (uploader.Uploader, error) { +func createSslUploader(accessKeyId, accessKeySecret, resourceGroupId, region string) (uploader.Uploader, error) { casRegion := region if casRegion != "" { // 阿里云 CAS 服务接入点是独立于 ESA 服务的 @@ -132,6 +134,7 @@ func createSslUploader(accessKeyId, accessKeySecret, region string) (uploader.Up uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, + ResourceGroupId: resourceGroupId, Region: casRegion, }) return uploader, err diff --git a/internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go b/internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go index 426aa3a6..c1e8c5a0 100644 --- a/internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go +++ b/internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go @@ -4,6 +4,7 @@ import ( "context" "fmt" "log/slog" + "strings" "time" aliopen "github.com/alibabacloud-go/darabonba-openapi/v2/client" @@ -19,6 +20,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` // 服务版本。 @@ -150,6 +153,8 @@ func createSdkClients(accessKeyId, accessKeySecret, region string) (*wSdkClients // 接入点一览 https://api.aliyun.com/product/FC-Open var fc2Endpoint string switch region { + case "": + fc2Endpoint = "fc.aliyuncs.com" case "cn-hangzhou-finance": fc2Endpoint = fmt.Sprintf("%s.fc.aliyuncs.com", region) default: @@ -167,7 +172,7 @@ func createSdkClients(accessKeyId, accessKeySecret, region string) (*wSdkClients } // 接入点一览 https://api.aliyun.com/product/FC-Open - fc3Endpoint := fmt.Sprintf("fcv3.%s.aliyuncs.com", region) + fc3Endpoint := strings.ReplaceAll(fmt.Sprintf("fcv3.%s.aliyuncs.com", region), "..", ".") fc3Config := &aliopen.Config{ AccessKeyId: tea.String(accessKeyId), AccessKeySecret: tea.String(accessKeySecret), diff --git a/internal/pkg/core/deployer/providers/aliyun-ga/aliyun_ga.go b/internal/pkg/core/deployer/providers/aliyun-ga/aliyun_ga.go index f69660a8..c7385863 100644 --- a/internal/pkg/core/deployer/providers/aliyun-ga/aliyun_ga.go +++ b/internal/pkg/core/deployer/providers/aliyun-ga/aliyun_ga.go @@ -22,6 +22,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 部署资源类型。 ResourceType ResourceType `json:"resourceType"` // 全球加速实例 ID。 @@ -53,7 +55,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { return nil, fmt.Errorf("failed to create sdk client: %w", err) } - uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret) + uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.ResourceGroupId) if err != nil { return nil, fmt.Errorf("failed to create ssl uploader: %w", err) } @@ -312,10 +314,11 @@ func createSdkClient(accessKeyId, accessKeySecret string) (*aliga.Client, error) return client, nil } -func createSslUploader(accessKeyId, accessKeySecret string) (uploader.Uploader, error) { +func createSslUploader(accessKeyId, accessKeySecret, resourceGroupId string) (uploader.Uploader, error) { uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, + ResourceGroupId: resourceGroupId, Region: "cn-hangzhou", }) return uploader, err diff --git a/internal/pkg/core/deployer/providers/aliyun-live/aliyun_live.go b/internal/pkg/core/deployer/providers/aliyun-live/aliyun_live.go index 354c9601..0481f3bf 100644 --- a/internal/pkg/core/deployer/providers/aliyun-live/aliyun_live.go +++ b/internal/pkg/core/deployer/providers/aliyun-live/aliyun_live.go @@ -19,6 +19,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` // 直播流域名(支持泛域名)。 @@ -86,7 +88,7 @@ func createSdkClient(accessKeyId, accessKeySecret, region string) (*alilive.Clie // 接入点一览 https://api.aliyun.com/product/live var endpoint string switch region { - case + case "", "cn-qingdao", "cn-beijing", "cn-shanghai", diff --git a/internal/pkg/core/deployer/providers/aliyun-nlb/aliyun_nlb.go b/internal/pkg/core/deployer/providers/aliyun-nlb/aliyun_nlb.go index 58015f3d..e4e80db9 100644 --- a/internal/pkg/core/deployer/providers/aliyun-nlb/aliyun_nlb.go +++ b/internal/pkg/core/deployer/providers/aliyun-nlb/aliyun_nlb.go @@ -21,6 +21,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` // 部署资源类型。 @@ -52,7 +54,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { return nil, fmt.Errorf("failed to create sdk client: %w", err) } - uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.Region) + uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.ResourceGroupId, config.Region) if err != nil { return nil, fmt.Errorf("failed to create ssl uploader: %w", err) } @@ -224,12 +226,7 @@ func (d *DeployerProvider) updateListenerCertificate(ctx context.Context, cloudL func createSdkClient(accessKeyId, accessKeySecret, region string) (*alinlb.Client, error) { // 接入点一览 https://api.aliyun.com/product/Nlb - var endpoint string - switch region { - default: - endpoint = fmt.Sprintf("nlb.%s.aliyuncs.com", region) - } - + endpoint := strings.ReplaceAll(fmt.Sprintf("nlb.%s.aliyuncs.com", region), "..", ".") config := &aliopen.Config{ AccessKeyId: tea.String(accessKeyId), AccessKeySecret: tea.String(accessKeySecret), @@ -244,7 +241,7 @@ func createSdkClient(accessKeyId, accessKeySecret, region string) (*alinlb.Clien return client, nil } -func createSslUploader(accessKeyId, accessKeySecret, region string) (uploader.Uploader, error) { +func createSslUploader(accessKeyId, accessKeySecret, resourceGroupId, region string) (uploader.Uploader, error) { casRegion := region if casRegion != "" { // 阿里云 CAS 服务接入点是独立于 NLB 服务的 @@ -260,6 +257,7 @@ func createSslUploader(accessKeyId, accessKeySecret, region string) (uploader.Up uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, + ResourceGroupId: resourceGroupId, Region: casRegion, }) return uploader, err diff --git a/internal/pkg/core/deployer/providers/aliyun-oss/aliyun_oss.go b/internal/pkg/core/deployer/providers/aliyun-oss/aliyun_oss.go index 474fe5b3..d810c0f9 100644 --- a/internal/pkg/core/deployer/providers/aliyun-oss/aliyun_oss.go +++ b/internal/pkg/core/deployer/providers/aliyun-oss/aliyun_oss.go @@ -16,6 +16,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` // 存储桶名。 diff --git a/internal/pkg/core/deployer/providers/aliyun-vod/aliyun_vod.go b/internal/pkg/core/deployer/providers/aliyun-vod/aliyun_vod.go index 48e52c26..b340e0a3 100644 --- a/internal/pkg/core/deployer/providers/aliyun-vod/aliyun_vod.go +++ b/internal/pkg/core/deployer/providers/aliyun-vod/aliyun_vod.go @@ -4,6 +4,7 @@ import ( "context" "fmt" "log/slog" + "strings" "time" aliopen "github.com/alibabacloud-go/darabonba-openapi/v2/client" @@ -18,6 +19,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` // 点播加速域名(不支持泛域名)。 @@ -80,8 +83,7 @@ func (d *DeployerProvider) Deploy(ctx context.Context, certPEM string, privkeyPE func createSdkClient(accessKeyId, accessKeySecret, region string) (*alivod.Client, error) { // 接入点一览 https://api.aliyun.com/product/vod - endpoint := fmt.Sprintf("vod.%s.aliyuncs.com", region) - + endpoint := strings.ReplaceAll(fmt.Sprintf("vod.%s.aliyuncs.com", region), "..", ".") config := &aliopen.Config{ AccessKeyId: tea.String(accessKeyId), AccessKeySecret: tea.String(accessKeySecret), diff --git a/internal/pkg/core/deployer/providers/aliyun-waf/aliyun_waf.go b/internal/pkg/core/deployer/providers/aliyun-waf/aliyun_waf.go index 26dbd008..c8ec310a 100644 --- a/internal/pkg/core/deployer/providers/aliyun-waf/aliyun_waf.go +++ b/internal/pkg/core/deployer/providers/aliyun-waf/aliyun_waf.go @@ -15,6 +15,7 @@ import ( "github.com/usual2970/certimate/internal/pkg/core/uploader" uploadersp "github.com/usual2970/certimate/internal/pkg/core/uploader/providers/aliyun-cas" sliceutil "github.com/usual2970/certimate/internal/pkg/utils/slice" + typeutil "github.com/usual2970/certimate/internal/pkg/utils/type" ) type DeployerConfig struct { @@ -22,6 +23,8 @@ type DeployerConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` // 服务版本。 @@ -51,7 +54,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { return nil, fmt.Errorf("failed to create sdk client: %w", err) } - uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.Region) + uploader, err := createSslUploader(config.AccessKeyId, config.AccessKeySecret, config.ResourceGroupId, config.Region) if err != nil { return nil, fmt.Errorf("failed to create ssl uploader: %w", err) } @@ -107,8 +110,9 @@ func (d *DeployerProvider) deployToWAF3(ctx context.Context, certPEM string, pri // 查询默认 SSL/TLS 设置 // REF: https://help.aliyun.com/zh/waf/web-application-firewall-3-0/developer-reference/api-waf-openapi-2021-10-01-describedefaulthttps describeDefaultHttpsReq := &aliwaf.DescribeDefaultHttpsRequest{ - InstanceId: tea.String(d.config.InstanceId), - RegionId: tea.String(d.config.Region), + ResourceManagerResourceGroupId: typeutil.ToPtrOrZeroNil(d.config.ResourceGroupId), + InstanceId: tea.String(d.config.InstanceId), + RegionId: tea.String(d.config.Region), } describeDefaultHttpsResp, err := d.sdkClient.DescribeDefaultHttps(describeDefaultHttpsReq) d.logger.Debug("sdk request 'waf.DescribeDefaultHttps'", slog.Any("request", describeDefaultHttpsReq), slog.Any("response", describeDefaultHttpsResp)) @@ -119,11 +123,12 @@ func (d *DeployerProvider) deployToWAF3(ctx context.Context, certPEM string, pri // 修改默认 SSL/TLS 设置 // REF: https://help.aliyun.com/zh/waf/web-application-firewall-3-0/developer-reference/api-waf-openapi-2021-10-01-modifydefaulthttps modifyDefaultHttpsReq := &aliwaf.ModifyDefaultHttpsRequest{ - InstanceId: tea.String(d.config.InstanceId), - RegionId: tea.String(d.config.Region), - CertId: tea.String(upres.CertId), - TLSVersion: tea.String("tlsv1"), - EnableTLSv3: tea.Bool(false), + ResourceManagerResourceGroupId: typeutil.ToPtrOrZeroNil(d.config.ResourceGroupId), + InstanceId: tea.String(d.config.InstanceId), + RegionId: tea.String(d.config.Region), + CertId: tea.String(upres.CertId), + TLSVersion: tea.String("tlsv1"), + EnableTLSv3: tea.Bool(false), } if describeDefaultHttpsResp.Body != nil && describeDefaultHttpsResp.Body.DefaultHttps != nil { modifyDefaultHttpsReq.TLSVersion = describeDefaultHttpsResp.Body.DefaultHttps.TLSVersion @@ -172,10 +177,11 @@ func (d *DeployerProvider) deployToWAF3(ctx context.Context, certPEM string, pri func createSdkClient(accessKeyId, accessKeySecret, region string) (*aliwaf.Client, error) { // 接入点一览:https://api.aliyun.com/product/waf-openapi + endpoint := strings.ReplaceAll(fmt.Sprintf("wafopenapi.%s.aliyuncs.com", region), "..", ".") config := &aliopen.Config{ AccessKeyId: tea.String(accessKeyId), AccessKeySecret: tea.String(accessKeySecret), - Endpoint: tea.String(fmt.Sprintf("wafopenapi.%s.aliyuncs.com", region)), + Endpoint: tea.String(endpoint), } client, err := aliwaf.NewClient(config) @@ -186,7 +192,7 @@ func createSdkClient(accessKeyId, accessKeySecret, region string) (*aliwaf.Clien return client, nil } -func createSslUploader(accessKeyId, accessKeySecret, region string) (uploader.Uploader, error) { +func createSslUploader(accessKeyId, accessKeySecret, resourceGroupId, region string) (uploader.Uploader, error) { casRegion := region if casRegion != "" { // 阿里云 CAS 服务接入点是独立于 WAF 服务的 @@ -202,6 +208,7 @@ func createSslUploader(accessKeyId, accessKeySecret, region string) (uploader.Up uploader, err := uploadersp.NewUploader(&uploadersp.UploaderConfig{ AccessKeyId: accessKeyId, AccessKeySecret: accessKeySecret, + ResourceGroupId: resourceGroupId, Region: casRegion, }) return uploader, err diff --git a/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go b/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go index 9d7be223..f5f490a3 100644 --- a/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go +++ b/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go @@ -13,6 +13,7 @@ import ( "github.com/usual2970/certimate/internal/pkg/core/uploader" certutil "github.com/usual2970/certimate/internal/pkg/utils/cert" + typeutil "github.com/usual2970/certimate/internal/pkg/utils/type" ) type UploaderConfig struct { @@ -20,6 +21,8 @@ type UploaderConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` } @@ -78,9 +81,10 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE } listUserCertificateOrderReq := &alicas.ListUserCertificateOrderRequest{ - CurrentPage: tea.Int64(listUserCertificateOrderPage), - ShowSize: tea.Int64(listUserCertificateOrderLimit), - OrderType: tea.String("CERT"), + ResourceGroupId: typeutil.ToPtrOrZeroNil(u.config.ResourceGroupId), + CurrentPage: tea.Int64(listUserCertificateOrderPage), + ShowSize: tea.Int64(listUserCertificateOrderLimit), + OrderType: tea.String("CERT"), } listUserCertificateOrderResp, err := u.sdkClient.ListUserCertificateOrder(listUserCertificateOrderReq) u.logger.Debug("sdk request 'cas.ListUserCertificateOrder'", slog.Any("request", listUserCertificateOrderReq), slog.Any("response", listUserCertificateOrderResp)) @@ -143,9 +147,10 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE // 上传新证书 // REF: https://help.aliyun.com/zh/ssl-certificate/developer-reference/api-cas-2020-04-07-uploadusercertificate uploadUserCertificateReq := &alicas.UploadUserCertificateRequest{ - Name: tea.String(certName), - Cert: tea.String(certPEM), - Key: tea.String(privkeyPEM), + ResourceGroupId: typeutil.ToPtrOrZeroNil(u.config.ResourceGroupId), + Name: tea.String(certName), + Cert: tea.String(certPEM), + Key: tea.String(privkeyPEM), } uploadUserCertificateResp, err := u.sdkClient.UploadUserCertificate(uploadUserCertificateReq) u.logger.Debug("sdk request 'cas.UploadUserCertificate'", slog.Any("request", uploadUserCertificateReq), slog.Any("response", uploadUserCertificateResp)) @@ -176,14 +181,10 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE } func createSdkClient(accessKeyId, accessKeySecret, region string) (*alicas.Client, error) { - if region == "" { - region = "cn-hangzhou" // CAS 服务默认区域:华东一杭州 - } - // 接入点一览 https://api.aliyun.com/product/cas var endpoint string switch region { - case "cn-hangzhou": + case "", "cn-hangzhou": endpoint = "cas.aliyuncs.com" default: endpoint = fmt.Sprintf("cas.%s.aliyuncs.com", region) diff --git a/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go b/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go index cc1544c1..933bc51e 100644 --- a/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go +++ b/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go @@ -16,6 +16,7 @@ import ( "github.com/usual2970/certimate/internal/pkg/core/uploader" certutil "github.com/usual2970/certimate/internal/pkg/utils/cert" + typeutil "github.com/usual2970/certimate/internal/pkg/utils/type" ) type UploaderConfig struct { @@ -23,6 +24,8 @@ type UploaderConfig struct { AccessKeyId string `json:"accessKeyId"` // 阿里云 AccessKeySecret。 AccessKeySecret string `json:"accessKeySecret"` + // 阿里云资源组 ID。 + ResourceGroupId string `json:"resourceGroupId,omitempty"` // 阿里云地域。 Region string `json:"region"` } @@ -71,7 +74,8 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE // 查询证书列表,避免重复上传 // REF: https://help.aliyun.com/zh/slb/classic-load-balancer/developer-reference/api-slb-2014-05-15-describeservercertificates describeServerCertificatesReq := &alislb.DescribeServerCertificatesRequest{ - RegionId: tea.String(u.config.Region), + ResourceGroupId: typeutil.ToPtrOrZeroNil(u.config.ResourceGroupId), + RegionId: tea.String(u.config.Region), } describeServerCertificatesResp, err := u.sdkClient.DescribeServerCertificates(describeServerCertificatesReq) u.logger.Debug("sdk request 'slb.DescribeServerCertificates'", slog.Any("request", describeServerCertificatesReq), slog.Any("response", describeServerCertificatesResp)) @@ -110,6 +114,7 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE // 上传新证书 // REF: https://help.aliyun.com/zh/slb/classic-load-balancer/developer-reference/api-slb-2014-05-15-uploadservercertificate uploadServerCertificateReq := &alislb.UploadServerCertificateRequest{ + ResourceGroupId: typeutil.ToPtrOrZeroNil(u.config.ResourceGroupId), RegionId: tea.String(u.config.Region), ServerCertificateName: tea.String(certName), ServerCertificate: tea.String(certPEM), @@ -132,7 +137,7 @@ func createSdkClient(accessKeyId, accessKeySecret, region string) (*alislb.Clien // 接入点一览 https://api.aliyun.com/product/Slb var endpoint string switch region { - case + case "", "cn-hangzhou", "cn-hangzhou-finance", "cn-shanghai-finance-1", diff --git a/internal/pkg/utils/type/cast.go b/internal/pkg/utils/type/cast.go index 1acd4765..77eb9dad 100644 --- a/internal/pkg/utils/type/cast.go +++ b/internal/pkg/utils/type/cast.go @@ -22,10 +22,11 @@ func ToPtr[T any](v T) (p *T) { // 出参: // - 返回对象的指针。 func ToPtrOrZeroNil[T any](v T) (p *T) { - if !reflect.ValueOf(v).IsZero() { - return &v + if reflect.ValueOf(v).IsZero() { + return nil } - return nil + + return &v } // 将指针转换为对象。 diff --git a/ui/src/components/access/AccessFormAliyunConfig.tsx b/ui/src/components/access/AccessFormAliyunConfig.tsx index b3c0fbd0..4904b072 100644 --- a/ui/src/components/access/AccessFormAliyunConfig.tsx +++ b/ui/src/components/access/AccessFormAliyunConfig.tsx @@ -28,14 +28,15 @@ const AccessFormAliyunConfig = ({ form: formInst, formName, disabled, initialVal const formSchema = z.object({ accessKeyId: z .string() + .trim() .min(1, t("access.form.aliyun_access_key_id.placeholder")) - .max(64, t("common.errmsg.string_max", { max: 64 })) - .trim(), + .max(64, t("common.errmsg.string_max", { max: 64 })), accessKeySecret: z .string() + .trim() .min(1, t("access.form.aliyun_access_key_secret.placeholder")) - .max(64, t("common.errmsg.string_max", { max: 64 })) - .trim(), + .max(64, t("common.errmsg.string_max", { max: 64 })), + resourceGroupId: z.string().nullish(), }); const formRule = createSchemaFieldRule(formSchema); @@ -69,6 +70,24 @@ const AccessFormAliyunConfig = ({ form: formInst, formName, disabled, initialVal > + + } + > + + + + } + > + + ); }; diff --git a/ui/src/components/access/AccessFormHuaweiCloudConfig.tsx b/ui/src/components/access/AccessFormHuaweiCloudConfig.tsx index c460f473..ca83febd 100644 --- a/ui/src/components/access/AccessFormHuaweiCloudConfig.tsx +++ b/ui/src/components/access/AccessFormHuaweiCloudConfig.tsx @@ -36,11 +36,7 @@ const AccessFormHuaweiCloudConfig = ({ form: formInst, formName, disabled, initi .trim() .min(1, t("access.form.huaweicloud_secret_access_key.placeholder")) .max(64, t("common.errmsg.string_max", { max: 64 })), - enterpriseProjectId: z - .string() - .trim() - .max(64, t("common.errmsg.string_max", { max: 64 })) - .nullish(), + enterpriseProjectId: z.string().nullish(), }); const formRule = createSchemaFieldRule(formSchema); diff --git a/ui/src/domain/access.ts b/ui/src/domain/access.ts index 51398e7f..fe9f12e3 100644 --- a/ui/src/domain/access.ts +++ b/ui/src/domain/access.ts @@ -101,6 +101,7 @@ export type AccessConfigForACMEHttpReq = { export type AccessConfigForAliyun = { accessKeyId: string; accessKeySecret: string; + resourceGroupId?: string; }; export type AccessConfigForAWS = { diff --git a/ui/src/i18n/locales/en/nls.access.json b/ui/src/i18n/locales/en/nls.access.json index 13c9c5eb..1e570779 100644 --- a/ui/src/i18n/locales/en/nls.access.json +++ b/ui/src/i18n/locales/en/nls.access.json @@ -69,6 +69,9 @@ "access.form.aliyun_access_key_secret.label": "Aliyun AccessKeySecret", "access.form.aliyun_access_key_secret.placeholder": "Please enter Aliyun AccessKeySecret", "access.form.aliyun_access_key_secret.tooltip": "For more information, see https://www.alibabacloud.com/help/en/acr/create-and-obtain-an-accesskey-pair", + "access.form.aliyun_resource_group_id.label": "Aliyun resource group ID (Optional)", + "access.form.aliyun_resource_group_id.placeholder": "Please enter Aliyun resource group ID", + "access.form.aliyun_resource_group_id.tooltip": "For more information, see https://www.alibabacloud.com/help/en/resource-management/product-overview", "access.form.aws_access_key_id.label": "AWS AccessKeyId", "access.form.aws_access_key_id.placeholder": "Please enter AWS AccessKeyId", "access.form.aws_access_key_id.tooltip": "For more information, see https://docs.aws.amazon.com/en_us/IAM/latest/UserGuide/id_credentials_access-keys.html", diff --git a/ui/src/i18n/locales/zh/nls.access.json b/ui/src/i18n/locales/zh/nls.access.json index 43305dda..7e5abf8e 100644 --- a/ui/src/i18n/locales/zh/nls.access.json +++ b/ui/src/i18n/locales/zh/nls.access.json @@ -69,6 +69,9 @@ "access.form.aliyun_access_key_secret.label": "阿里云 AccessKeySecret", "access.form.aliyun_access_key_secret.placeholder": "请输入阿里云 AccessKeySecret", "access.form.aliyun_access_key_secret.tooltip": "这是什么?请参阅 https://help.aliyun.com/zh/ram/user-guide/create-an-accesskey-pair", + "access.form.aliyun_resource_group_id.label": "阿里云资源组 ID(可选)", + "access.form.aliyun_resource_group_id.placeholder": "请输入阿里云资源组 ID", + "access.form.aliyun_resource_group_id.tooltip": "这是什么?请参阅 https://help.aliyun.com/zh/resource-management/resource-group/product-overview", "access.form.aws_access_key_id.label": "AWS AccessKeyId", "access.form.aws_access_key_id.placeholder": "请输入 AWS AccessKeyId", "access.form.aws_access_key_id.tooltip": "这是什么?请参阅 https://docs.aws.amazon.com/zh_cn/IAM/latest/UserGuide/id_credentials_access-keys.html", From ddb46f9dda6d48a7aea3c4cb8b8952da619aa672 Mon Sep 17 00:00:00 2001 From: Fu Diwei Date: Wed, 28 May 2025 10:17:33 +0800 Subject: [PATCH 3/8] refactor: clean code --- internal/domain/workflow.go | 8 ++++---- .../providers/aliyun-cas-deploy/aliyun_cas_deploy.go | 2 +- .../deployer/providers/baotawaf-site/baotawaf_site.go | 2 +- internal/pkg/core/deployer/providers/local/local.go | 2 +- internal/pkg/core/deployer/providers/ssh/ssh.go | 8 ++++---- internal/pkg/core/deployer/providers/webhook/webhook.go | 2 +- internal/pkg/core/notifier/providers/bark/bark.go | 2 +- internal/pkg/core/notifier/providers/webhook/webhook.go | 2 +- 8 files changed, 14 insertions(+), 14 deletions(-) diff --git a/internal/domain/workflow.go b/internal/domain/workflow.go index 6a96dd81..10925b72 100644 --- a/internal/domain/workflow.go +++ b/internal/domain/workflow.go @@ -68,17 +68,17 @@ type WorkflowNodeConfigForApply struct { Provider string `json:"provider"` // DNS 提供商 ProviderAccessId string `json:"providerAccessId"` // DNS 提供商授权记录 ID ProviderConfig map[string]any `json:"providerConfig"` // DNS 提供商额外配置 - CAProvider string `json:"caProvider,omitempty"` // CA 提供商(零值将使用全局配置) + CAProvider string `json:"caProvider,omitempty"` // CA 提供商(零值时使用全局配置) CAProviderAccessId string `json:"caProviderAccessId,omitempty"` // CA 提供商授权记录 ID CAProviderConfig map[string]any `json:"caProviderConfig,omitempty"` // CA 提供商额外配置 KeyAlgorithm string `json:"keyAlgorithm"` // 证书算法 Nameservers string `json:"nameservers,omitempty"` // DNS 服务器列表,以半角分号分隔 DnsPropagationWait int32 `json:"dnsPropagationWait,omitempty"` // DNS 传播等待时间,等同于 lego 的 `--dns-propagation-wait` 参数 - DnsPropagationTimeout int32 `json:"dnsPropagationTimeout,omitempty"` // DNS 传播检查超时时间(零值取决于提供商的默认值) - DnsTTL int32 `json:"dnsTTL,omitempty"` // DNS 解析记录 TTL(零值取决于提供商的默认值) + DnsPropagationTimeout int32 `json:"dnsPropagationTimeout,omitempty"` // DNS 传播检查超时时间(零值时使用提供商的默认值) + DnsTTL int32 `json:"dnsTTL,omitempty"` // DNS 解析记录 TTL(零值时使用提供商的默认值) DisableFollowCNAME bool `json:"disableFollowCNAME,omitempty"` // 是否关闭 CNAME 跟随 DisableARI bool `json:"disableARI,omitempty"` // 是否关闭 ARI - SkipBeforeExpiryDays int32 `json:"skipBeforeExpiryDays,omitempty"` // 证书到期前多少天前跳过续期(零值将使用默认值 30) + SkipBeforeExpiryDays int32 `json:"skipBeforeExpiryDays,omitempty"` // 证书到期前多少天前跳过续期(零值时默认值 30) } type WorkflowNodeConfigForUpload struct { diff --git a/internal/pkg/core/deployer/providers/aliyun-cas-deploy/aliyun_cas_deploy.go b/internal/pkg/core/deployer/providers/aliyun-cas-deploy/aliyun_cas_deploy.go index 569edaf3..5acdb50e 100644 --- a/internal/pkg/core/deployer/providers/aliyun-cas-deploy/aliyun_cas_deploy.go +++ b/internal/pkg/core/deployer/providers/aliyun-cas-deploy/aliyun_cas_deploy.go @@ -29,7 +29,7 @@ type DeployerConfig struct { // 阿里云云产品资源 ID 数组。 ResourceIds []string `json:"resourceIds"` // 阿里云云联系人 ID 数组。 - // 零值时默认使用账号下第一个联系人。 + // 零值时使用账号下第一个联系人。 ContactIds []string `json:"contactIds"` } diff --git a/internal/pkg/core/deployer/providers/baotawaf-site/baotawaf_site.go b/internal/pkg/core/deployer/providers/baotawaf-site/baotawaf_site.go index 435f7a69..945d5a48 100644 --- a/internal/pkg/core/deployer/providers/baotawaf-site/baotawaf_site.go +++ b/internal/pkg/core/deployer/providers/baotawaf-site/baotawaf_site.go @@ -23,7 +23,7 @@ type DeployerConfig struct { // 网站名称。 SiteName string `json:"siteName"` // 网站 SSL 端口。 - // 零值时默认为 443。 + // 零值时默认值 443。 SitePort int32 `json:"sitePort,omitempty"` } diff --git a/internal/pkg/core/deployer/providers/local/local.go b/internal/pkg/core/deployer/providers/local/local.go index a71ad9d3..8b05d95b 100644 --- a/internal/pkg/core/deployer/providers/local/local.go +++ b/internal/pkg/core/deployer/providers/local/local.go @@ -15,7 +15,7 @@ import ( type DeployerConfig struct { // Shell 执行环境。 - // 零值时默认根据操作系统决定。 + // 零值时根据操作系统决定。 ShellEnv ShellEnvType `json:"shellEnv,omitempty"` // 前置命令。 PreCommand string `json:"preCommand,omitempty"` diff --git a/internal/pkg/core/deployer/providers/ssh/ssh.go b/internal/pkg/core/deployer/providers/ssh/ssh.go index ae6e459f..96447cfb 100644 --- a/internal/pkg/core/deployer/providers/ssh/ssh.go +++ b/internal/pkg/core/deployer/providers/ssh/ssh.go @@ -19,10 +19,10 @@ import ( type JumpServerConfig struct { // SSH 主机。 - // 零值时默认为 "localhost"。 + // 零值时默认值 "localhost"。 SshHost string `json:"sshHost,omitempty"` // SSH 端口。 - // 零值时默认为 22。 + // 零值时默认值 22。 SshPort int32 `json:"sshPort,omitempty"` // SSH 登录用户名。 SshUsername string `json:"sshUsername,omitempty"` @@ -36,10 +36,10 @@ type JumpServerConfig struct { type DeployerConfig struct { // SSH 主机。 - // 零值时默认为 "localhost"。 + // 零值时默认值 "localhost"。 SshHost string `json:"sshHost,omitempty"` // SSH 端口。 - // 零值时默认为 22。 + // 零值时默认值 22。 SshPort int32 `json:"sshPort,omitempty"` // SSH 登录用户名。 SshUsername string `json:"sshUsername,omitempty"` diff --git a/internal/pkg/core/deployer/providers/webhook/webhook.go b/internal/pkg/core/deployer/providers/webhook/webhook.go index 49b07b47..b25c129a 100644 --- a/internal/pkg/core/deployer/providers/webhook/webhook.go +++ b/internal/pkg/core/deployer/providers/webhook/webhook.go @@ -23,7 +23,7 @@ type DeployerConfig struct { // Webhook 回调数据(application/json 或 application/x-www-form-urlencoded 格式)。 WebhookData string `json:"webhookData,omitempty"` // 请求谓词。 - // 零值时默认为 "POST"。 + // 零值时默认值 "POST"。 Method string `json:"method,omitempty"` // 请求标头。 Headers map[string]string `json:"headers,omitempty"` diff --git a/internal/pkg/core/notifier/providers/bark/bark.go b/internal/pkg/core/notifier/providers/bark/bark.go index ec0d44f3..fb3298ec 100644 --- a/internal/pkg/core/notifier/providers/bark/bark.go +++ b/internal/pkg/core/notifier/providers/bark/bark.go @@ -12,7 +12,7 @@ import ( type NotifierConfig struct { // Bark 服务地址。 - // 零值时默认使用官方服务器。 + // 零值时使用官方服务器。 ServerUrl string `json:"serverUrl"` // Bark 设备密钥。 DeviceKey string `json:"deviceKey"` diff --git a/internal/pkg/core/notifier/providers/webhook/webhook.go b/internal/pkg/core/notifier/providers/webhook/webhook.go index 8850ea73..acc0caab 100644 --- a/internal/pkg/core/notifier/providers/webhook/webhook.go +++ b/internal/pkg/core/notifier/providers/webhook/webhook.go @@ -22,7 +22,7 @@ type NotifierConfig struct { // Webhook 回调数据(application/json 或 application/x-www-form-urlencoded 格式)。 WebhookData string `json:"webhookData,omitempty"` // 请求谓词。 - // 零值时默认为 "POST"。 + // 零值时默认值 "POST"。 Method string `json:"method,omitempty"` // 请求标头。 Headers map[string]string `json:"headers,omitempty"` From 829fa29cf11d31ceb2b7155075e51298b11711ba Mon Sep 17 00:00:00 2001 From: Fu Diwei Date: Wed, 28 May 2025 10:46:02 +0800 Subject: [PATCH 4/8] feat: add user-agent http header for thirdparty sdks --- .../notifier/providers/discordbot/discordbot.go | 3 ++- .../pkg/core/notifier/providers/gotify/gotify.go | 3 ++- .../notifier/providers/mattermost/mattermost.go | 4 +++- .../core/notifier/providers/pushover/pushover.go | 1 + .../core/notifier/providers/pushplus/pushplus.go | 1 + .../notifier/providers/serverchan/serverchan.go | 1 + .../core/notifier/providers/slackbot/slackbot.go | 3 ++- .../notifier/providers/telegrambot/telegrambot.go | 1 + .../core/notifier/providers/wecombot/wecombot.go | 1 + internal/pkg/sdk3rd/1panel/client.go | 5 ++--- internal/pkg/sdk3rd/baishan/client.go | 3 ++- internal/pkg/sdk3rd/btpanel/client.go | 8 ++++---- internal/pkg/sdk3rd/btwaf/client.go | 8 ++++---- internal/pkg/sdk3rd/bunny/client.go | 1 + internal/pkg/sdk3rd/cachefly/client.go | 2 +- internal/pkg/sdk3rd/cdnfly/client.go | 5 +++-- internal/pkg/sdk3rd/dcloud/unicloud/client.go | 3 ++- internal/pkg/sdk3rd/dnsla/client.go | 3 ++- internal/pkg/sdk3rd/flexcdn/client.go | 1 + internal/pkg/sdk3rd/gname/client.go | 12 ++++++------ internal/pkg/sdk3rd/goedge/client.go | 1 + internal/pkg/sdk3rd/lecdn/v3/client/client.go | 3 ++- internal/pkg/sdk3rd/lecdn/v3/master/client.go | 3 ++- internal/pkg/sdk3rd/netlify/client.go | 3 ++- internal/pkg/sdk3rd/rainyun/client.go | 3 ++- internal/pkg/sdk3rd/ratpanel/client.go | 1 + internal/pkg/sdk3rd/safeline/client.go | 6 +++--- internal/pkg/sdk3rd/upyun/console/client.go | 1 + internal/pkg/sdk3rd/wangsu/cdnpro/api.go | 4 ++-- internal/pkg/sdk3rd/wangsu/openapi/client.go | 15 ++++++++------- 30 files changed, 66 insertions(+), 43 deletions(-) diff --git a/internal/pkg/core/notifier/providers/discordbot/discordbot.go b/internal/pkg/core/notifier/providers/discordbot/discordbot.go index 3ed0cab7..20e7d304 100644 --- a/internal/pkg/core/notifier/providers/discordbot/discordbot.go +++ b/internal/pkg/core/notifier/providers/discordbot/discordbot.go @@ -52,8 +52,9 @@ func (n *NotifierProvider) Notify(ctx context.Context, subject string, message s // REF: https://discord.com/developers/docs/resources/message#create-message req := n.httpClient.R(). SetContext(ctx). - SetHeader("Content-Type", "application/json"). SetHeader("Authorization", "Bot "+n.config.BotToken). + SetHeader("Content-Type", "application/json"). + SetHeader("User-Agent", "certimate"). SetBody(map[string]any{ "content": subject + "\n" + message, }) diff --git a/internal/pkg/core/notifier/providers/gotify/gotify.go b/internal/pkg/core/notifier/providers/gotify/gotify.go index c82cd5a5..aa7d36a0 100644 --- a/internal/pkg/core/notifier/providers/gotify/gotify.go +++ b/internal/pkg/core/notifier/providers/gotify/gotify.go @@ -57,8 +57,9 @@ func (n *NotifierProvider) Notify(ctx context.Context, subject string, message s // REF: https://gotify.net/api-docs#/message/createMessage req := n.httpClient.R(). SetContext(ctx). - SetHeader("Content-Type", "application/json"). SetHeader("Authorization", "Bearer "+n.config.Token). + SetHeader("Content-Type", "application/json"). + SetHeader("User-Agent", "certimate"). SetBody(map[string]any{ "title": subject, "message": message, diff --git a/internal/pkg/core/notifier/providers/mattermost/mattermost.go b/internal/pkg/core/notifier/providers/mattermost/mattermost.go index 81283f7c..70c6effe 100644 --- a/internal/pkg/core/notifier/providers/mattermost/mattermost.go +++ b/internal/pkg/core/notifier/providers/mattermost/mattermost.go @@ -60,6 +60,7 @@ func (n *NotifierProvider) Notify(ctx context.Context, subject string, message s loginReq := n.httpClient.R(). SetContext(ctx). SetHeader("Content-Type", "application/json"). + SetHeader("User-Agent", "certimate"). SetBody(map[string]any{ "login_id": n.config.Username, "password": n.config.Password, @@ -76,8 +77,9 @@ func (n *NotifierProvider) Notify(ctx context.Context, subject string, message s // REF: https://developers.mattermost.com/api-documentation/#/operations/CreatePost postReq := n.httpClient.R(). SetContext(ctx). - SetHeader("Content-Type", "application/json"). SetHeader("Authorization", "Bearer "+loginResp.Header().Get("Token")). + SetHeader("Content-Type", "application/json"). + SetHeader("User-Agent", "certimate"). SetBody(map[string]any{ "channel_id": n.config.ChannelId, "props": map[string]interface{}{ diff --git a/internal/pkg/core/notifier/providers/pushover/pushover.go b/internal/pkg/core/notifier/providers/pushover/pushover.go index 827a45d6..48238608 100644 --- a/internal/pkg/core/notifier/providers/pushover/pushover.go +++ b/internal/pkg/core/notifier/providers/pushover/pushover.go @@ -53,6 +53,7 @@ func (n *NotifierProvider) Notify(ctx context.Context, subject string, message s req := n.httpClient.R(). SetContext(ctx). SetHeader("Content-Type", "application/json"). + SetHeader("User-Agent", "certimate"). SetBody(map[string]any{ "title": subject, "message": message, diff --git a/internal/pkg/core/notifier/providers/pushplus/pushplus.go b/internal/pkg/core/notifier/providers/pushplus/pushplus.go index 79a27d49..025e1620 100644 --- a/internal/pkg/core/notifier/providers/pushplus/pushplus.go +++ b/internal/pkg/core/notifier/providers/pushplus/pushplus.go @@ -52,6 +52,7 @@ func (n *NotifierProvider) Notify(ctx context.Context, subject string, message s req := n.httpClient.R(). SetContext(ctx). SetHeader("Content-Type", "application/json"). + SetHeader("User-Agent", "certimate"). SetBody(map[string]any{ "title": subject, "content": message, diff --git a/internal/pkg/core/notifier/providers/serverchan/serverchan.go b/internal/pkg/core/notifier/providers/serverchan/serverchan.go index d1897ab4..0eb9bc24 100644 --- a/internal/pkg/core/notifier/providers/serverchan/serverchan.go +++ b/internal/pkg/core/notifier/providers/serverchan/serverchan.go @@ -51,6 +51,7 @@ func (n *NotifierProvider) Notify(ctx context.Context, subject string, message s req := n.httpClient.R(). SetContext(ctx). SetHeader("Content-Type", "application/json"). + SetHeader("User-Agent", "certimate"). SetBody(map[string]any{ "text": subject, "desp": message, diff --git a/internal/pkg/core/notifier/providers/slackbot/slackbot.go b/internal/pkg/core/notifier/providers/slackbot/slackbot.go index 7b16ad25..a453f8f1 100644 --- a/internal/pkg/core/notifier/providers/slackbot/slackbot.go +++ b/internal/pkg/core/notifier/providers/slackbot/slackbot.go @@ -52,8 +52,9 @@ func (n *NotifierProvider) Notify(ctx context.Context, subject string, message s // REF: https://docs.slack.dev/messaging/sending-and-scheduling-messages#publishing req := n.httpClient.R(). SetContext(ctx). - SetHeader("Content-Type", "application/json"). SetHeader("Authorization", "Bearer "+n.config.BotToken). + SetHeader("Content-Type", "application/json"). + SetHeader("User-Agent", "certimate"). SetBody(map[string]any{ "token": n.config.BotToken, "channel": n.config.ChannelId, diff --git a/internal/pkg/core/notifier/providers/telegrambot/telegrambot.go b/internal/pkg/core/notifier/providers/telegrambot/telegrambot.go index 39e1f705..ef99c66b 100644 --- a/internal/pkg/core/notifier/providers/telegrambot/telegrambot.go +++ b/internal/pkg/core/notifier/providers/telegrambot/telegrambot.go @@ -53,6 +53,7 @@ func (n *NotifierProvider) Notify(ctx context.Context, subject string, message s req := n.httpClient.R(). SetContext(ctx). SetHeader("Content-Type", "application/json"). + SetHeader("User-Agent", "certimate"). SetBody(map[string]any{ "chat_id": n.config.ChatId, "text": subject + "\n" + message, diff --git a/internal/pkg/core/notifier/providers/wecombot/wecombot.go b/internal/pkg/core/notifier/providers/wecombot/wecombot.go index 8f51a70a..d6f86ef5 100644 --- a/internal/pkg/core/notifier/providers/wecombot/wecombot.go +++ b/internal/pkg/core/notifier/providers/wecombot/wecombot.go @@ -51,6 +51,7 @@ func (n *NotifierProvider) Notify(ctx context.Context, subject string, message s req := n.httpClient.R(). SetContext(ctx). SetHeader("Content-Type", "application/json"). + SetHeader("User-Agent", "certimate"). SetBody(map[string]any{ "msgtype": "text", "text": map[string]string{ diff --git a/internal/pkg/sdk3rd/1panel/client.go b/internal/pkg/sdk3rd/1panel/client.go index 3fe549a0..8090340e 100644 --- a/internal/pkg/sdk3rd/1panel/client.go +++ b/internal/pkg/sdk3rd/1panel/client.go @@ -14,8 +14,6 @@ import ( ) type Client struct { - apiKey string - client *resty.Client } @@ -25,7 +23,8 @@ func NewClient(serverUrl, apiVersion, apiKey string) *Client { } client := resty.New(). - SetBaseURL(strings.TrimRight(serverUrl, "/") + "/api/" + apiVersion). + SetBaseURL(strings.TrimRight(serverUrl, "/")+"/api/"+apiVersion). + SetHeader("User-Agent", "certimate"). SetPreRequestHook(func(c *resty.Client, req *http.Request) error { timestamp := fmt.Sprintf("%d", time.Now().Unix()) tokenMd5 := md5.Sum([]byte("1panel" + apiKey + timestamp)) diff --git a/internal/pkg/sdk3rd/baishan/client.go b/internal/pkg/sdk3rd/baishan/client.go index b3e428ee..7922096e 100644 --- a/internal/pkg/sdk3rd/baishan/client.go +++ b/internal/pkg/sdk3rd/baishan/client.go @@ -19,7 +19,8 @@ type Client struct { func NewClient(apiToken string) *Client { client := resty.New(). SetBaseURL("https://cdn.api.baishan.com"). - SetHeader("token", apiToken) + SetHeader("User-Agent", "certimate"). + SetHeader("Token", apiToken) return &Client{ client: client, diff --git a/internal/pkg/sdk3rd/btpanel/client.go b/internal/pkg/sdk3rd/btpanel/client.go index aafee04f..7faa46c0 100644 --- a/internal/pkg/sdk3rd/btpanel/client.go +++ b/internal/pkg/sdk3rd/btpanel/client.go @@ -21,7 +21,9 @@ type Client struct { func NewClient(serverUrl, apiKey string) *Client { client := resty.New(). - SetBaseURL(strings.TrimRight(serverUrl, "/")) + SetBaseURL(strings.TrimRight(serverUrl, "/")). + SetHeader("Content-Type", "application/x-www-form-urlencoded"). + SetHeader("User-Agent", "certimate") return &Client{ apiKey: apiKey, @@ -77,9 +79,7 @@ func (c *Client) sendRequest(path string, params interface{}) (*resty.Response, data["request_time"] = fmt.Sprintf("%d", timestamp) data["request_token"] = c.generateSignature(fmt.Sprintf("%d", timestamp)) - req := c.client.R(). - SetHeader("Content-Type", "application/x-www-form-urlencoded"). - SetFormData(data) + req := c.client.R().SetFormData(data) resp, err := req.Post(path) if err != nil { return resp, fmt.Errorf("baota api error: failed to send request: %w", err) diff --git a/internal/pkg/sdk3rd/btwaf/client.go b/internal/pkg/sdk3rd/btwaf/client.go index 083db0c1..4bf76b16 100644 --- a/internal/pkg/sdk3rd/btwaf/client.go +++ b/internal/pkg/sdk3rd/btwaf/client.go @@ -19,7 +19,9 @@ type Client struct { func NewClient(serverUrl, apiKey string) *Client { client := resty.New(). - SetBaseURL(strings.TrimRight(serverUrl, "/") + "/api"). + SetBaseURL(strings.TrimRight(serverUrl, "/")+"/api"). + SetHeader("Content-Type", "application/json"). + SetHeader("User-Agent", "certimate"). SetPreRequestHook(func(c *resty.Client, req *http.Request) error { timestamp := fmt.Sprintf("%d", time.Now().Unix()) keyMd5 := md5.Sum([]byte(apiKey)) @@ -48,9 +50,7 @@ func (c *Client) WithTLSConfig(config *tls.Config) *Client { } func (c *Client) sendRequest(path string, params interface{}) (*resty.Response, error) { - req := c.client.R(). - SetHeader("Content-Type", "application/json"). - SetBody(params) + req := c.client.R().SetBody(params) resp, err := req.Post(path) if err != nil { return resp, fmt.Errorf("baota api error: failed to send request: %w", err) diff --git a/internal/pkg/sdk3rd/bunny/client.go b/internal/pkg/sdk3rd/bunny/client.go index 8d50e1fc..1efa2236 100644 --- a/internal/pkg/sdk3rd/bunny/client.go +++ b/internal/pkg/sdk3rd/bunny/client.go @@ -17,6 +17,7 @@ type Client struct { func NewClient(apiToken string) *Client { client := resty.New(). SetBaseURL("https://api.bunny.net"). + SetHeader("User-Agent", "certimate"). SetHeader("AccessKey", apiToken) return &Client{ diff --git a/internal/pkg/sdk3rd/cachefly/client.go b/internal/pkg/sdk3rd/cachefly/client.go index 342e329d..cf29e833 100644 --- a/internal/pkg/sdk3rd/cachefly/client.go +++ b/internal/pkg/sdk3rd/cachefly/client.go @@ -17,7 +17,7 @@ type Client struct { func NewClient(apiToken string) *Client { client := resty.New(). SetBaseURL("https://api.cachefly.com/api/2.5"). - SetHeader("x-cf-authorization", "Bearer "+apiToken) + SetHeader("X-CF-Authorization", "Bearer "+apiToken) return &Client{ client: client, diff --git a/internal/pkg/sdk3rd/cdnfly/client.go b/internal/pkg/sdk3rd/cdnfly/client.go index 2dabf6fd..6026d246 100644 --- a/internal/pkg/sdk3rd/cdnfly/client.go +++ b/internal/pkg/sdk3rd/cdnfly/client.go @@ -18,8 +18,9 @@ type Client struct { func NewClient(serverUrl, apiKey, apiSecret string) *Client { client := resty.New(). SetBaseURL(strings.TrimRight(serverUrl, "/")). - SetHeader("api-key", apiKey). - SetHeader("api-secret", apiSecret) + SetHeader("User-Agent", "certimate"). + SetHeader("API-Key", apiKey). + SetHeader("API-Secret", apiSecret) return &Client{ client: client, diff --git a/internal/pkg/sdk3rd/dcloud/unicloud/client.go b/internal/pkg/sdk3rd/dcloud/unicloud/client.go index 1e0f3728..8db4a792 100644 --- a/internal/pkg/sdk3rd/dcloud/unicloud/client.go +++ b/internal/pkg/sdk3rd/dcloud/unicloud/client.go @@ -51,6 +51,7 @@ func NewClient(username, password string) *Client { client.serverlessClient = resty.New() client.apiClient = resty.New(). SetBaseURL("https://unicloud-api.dcloud.net.cn/unicloud/api"). + SetHeader("User-Agent", "certimate"). SetPreRequestHook(func(c *resty.Client, req *http.Request) error { if client.apiUserToken != "" { req.Header.Set("Token", client.apiUserToken) @@ -173,9 +174,9 @@ func (c *Client) invokeServerless(endpoint, clientSecret, appId, spaceId, target sign := c.generateSignature(payload, clientSecret) req := c.serverlessClient.R(). + SetHeader("Content-Type", "application/json"). SetHeader("Origin", "https://unicloud.dcloud.net.cn"). SetHeader("Referer", "https://unicloud.dcloud.net.cn"). - SetHeader("Content-Type", "application/json"). SetHeader("X-Client-Info", string(clientInfoJsonb)). SetHeader("X-Client-Token", c.serverlessJwtToken). SetHeader("X-Serverless-Sign", sign). diff --git a/internal/pkg/sdk3rd/dnsla/client.go b/internal/pkg/sdk3rd/dnsla/client.go index d9a86fc5..accd36d9 100644 --- a/internal/pkg/sdk3rd/dnsla/client.go +++ b/internal/pkg/sdk3rd/dnsla/client.go @@ -17,7 +17,8 @@ type Client struct { func NewClient(apiId, apiSecret string) *Client { client := resty.New(). SetBaseURL("https://api.dns.la/api"). - SetBasicAuth(apiId, apiSecret) + SetBasicAuth(apiId, apiSecret). + SetHeader("User-Agent", "certimate") return &Client{ client: client, diff --git a/internal/pkg/sdk3rd/flexcdn/client.go b/internal/pkg/sdk3rd/flexcdn/client.go index b478ffac..0844ffa5 100644 --- a/internal/pkg/sdk3rd/flexcdn/client.go +++ b/internal/pkg/sdk3rd/flexcdn/client.go @@ -32,6 +32,7 @@ func NewClient(serverUrl, apiRole, accessKeyId, accessKey string) *Client { } client.client = resty.New(). SetBaseURL(strings.TrimRight(serverUrl, "/")). + SetHeader("User-Agent", "certimate"). SetPreRequestHook(func(c *resty.Client, req *http.Request) error { if client.accessToken != "" { req.Header.Set("X-Cloud-Access-Token", client.accessToken) diff --git a/internal/pkg/sdk3rd/gname/client.go b/internal/pkg/sdk3rd/gname/client.go index ef00e699..843785a5 100644 --- a/internal/pkg/sdk3rd/gname/client.go +++ b/internal/pkg/sdk3rd/gname/client.go @@ -20,7 +20,10 @@ type Client struct { } func NewClient(appId, appKey string) *Client { - client := resty.New() + client := resty.New(). + SetBaseURL("http://api.gname.com"). + SetHeader("Content-Type", "application/x-www-form-urlencoded"). + SetHeader("User-Agent", "certimate") return &Client{ appId: appId, @@ -74,11 +77,8 @@ func (c *Client) sendRequest(path string, params interface{}) (*resty.Response, data["gntime"] = fmt.Sprintf("%d", time.Now().Unix()) data["gntoken"] = c.generateSignature(data) - url := "http://api.gname.com" + path - req := c.client.R(). - SetHeader("Content-Type", "application/x-www-form-urlencoded"). - SetFormData(data) - resp, err := req.Post(url) + req := c.client.R().SetFormData(data) + resp, err := req.Post(path) if err != nil { return resp, fmt.Errorf("gname api error: failed to send request: %w", err) } else if resp.IsError() { diff --git a/internal/pkg/sdk3rd/goedge/client.go b/internal/pkg/sdk3rd/goedge/client.go index 3cd4900a..bc87734a 100644 --- a/internal/pkg/sdk3rd/goedge/client.go +++ b/internal/pkg/sdk3rd/goedge/client.go @@ -32,6 +32,7 @@ func NewClient(serverUrl, apiRole, accessKeyId, accessKey string) *Client { } client.client = resty.New(). SetBaseURL(strings.TrimRight(serverUrl, "/")). + SetHeader("User-Agent", "certimate"). SetPreRequestHook(func(c *resty.Client, req *http.Request) error { if client.accessToken != "" { req.Header.Set("X-Edge-Access-Token", client.accessToken) diff --git a/internal/pkg/sdk3rd/lecdn/v3/client/client.go b/internal/pkg/sdk3rd/lecdn/v3/client/client.go index 3fa822eb..4af04d4f 100644 --- a/internal/pkg/sdk3rd/lecdn/v3/client/client.go +++ b/internal/pkg/sdk3rd/lecdn/v3/client/client.go @@ -28,7 +28,8 @@ func NewClient(serverUrl, username, password string) *Client { password: password, } client.client = resty.New(). - SetBaseURL(strings.TrimRight(serverUrl, "/") + "/prod-api"). + SetBaseURL(strings.TrimRight(serverUrl, "/")+"/prod-api"). + SetHeader("User-Agent", "certimate"). SetPreRequestHook(func(c *resty.Client, req *http.Request) error { if client.accessToken != "" { req.Header.Set("Authorization", "Bearer "+client.accessToken) diff --git a/internal/pkg/sdk3rd/lecdn/v3/master/client.go b/internal/pkg/sdk3rd/lecdn/v3/master/client.go index ee1abaca..dc033634 100644 --- a/internal/pkg/sdk3rd/lecdn/v3/master/client.go +++ b/internal/pkg/sdk3rd/lecdn/v3/master/client.go @@ -28,7 +28,8 @@ func NewClient(serverUrl, username, password string) *Client { password: password, } client.client = resty.New(). - SetBaseURL(strings.TrimRight(serverUrl, "/") + "/prod-api"). + SetBaseURL(strings.TrimRight(serverUrl, "/")+"/prod-api"). + SetHeader("User-Agent", "certimate"). SetPreRequestHook(func(c *resty.Client, req *http.Request) error { if client.accessToken != "" { req.Header.Set("Authorization", "Bearer "+client.accessToken) diff --git a/internal/pkg/sdk3rd/netlify/client.go b/internal/pkg/sdk3rd/netlify/client.go index d270e35e..bf3f4ad6 100644 --- a/internal/pkg/sdk3rd/netlify/client.go +++ b/internal/pkg/sdk3rd/netlify/client.go @@ -17,7 +17,8 @@ type Client struct { func NewClient(apiToken string) *Client { client := resty.New(). SetBaseURL("https://api.netlify.com/api/v1"). - SetHeader("Authorization", "Bearer "+apiToken) + SetHeader("Authorization", "Bearer "+apiToken). + SetHeader("User-Agent", "certimate") return &Client{ client: client, diff --git a/internal/pkg/sdk3rd/rainyun/client.go b/internal/pkg/sdk3rd/rainyun/client.go index 80113f0d..cf9e1895 100644 --- a/internal/pkg/sdk3rd/rainyun/client.go +++ b/internal/pkg/sdk3rd/rainyun/client.go @@ -17,7 +17,8 @@ type Client struct { func NewClient(apiKey string) *Client { client := resty.New(). SetBaseURL("https://api.v2.rainyun.com"). - SetHeader("x-api-key", apiKey) + SetHeader("User-Agent", "certimate"). + SetHeader("X-API-Key", apiKey) return &Client{ client: client, diff --git a/internal/pkg/sdk3rd/ratpanel/client.go b/internal/pkg/sdk3rd/ratpanel/client.go index f1d20359..e1abb6c5 100644 --- a/internal/pkg/sdk3rd/ratpanel/client.go +++ b/internal/pkg/sdk3rd/ratpanel/client.go @@ -25,6 +25,7 @@ func NewClient(serverUrl string, accessTokenId int32, accessToken string) *Clien SetBaseURL(strings.TrimRight(serverUrl, "/")+"/api"). SetHeader("Accept", "application/json"). SetHeader("Content-Type", "application/json"). + SetHeader("User-Agent", "certimate"). SetPreRequestHook(func(c *resty.Client, req *http.Request) error { var body []byte var err error diff --git a/internal/pkg/sdk3rd/safeline/client.go b/internal/pkg/sdk3rd/safeline/client.go index 93d884a3..05ee6d1a 100644 --- a/internal/pkg/sdk3rd/safeline/client.go +++ b/internal/pkg/sdk3rd/safeline/client.go @@ -17,6 +17,8 @@ type Client struct { func NewClient(serverUrl, apiToken string) *Client { client := resty.New(). SetBaseURL(strings.TrimRight(serverUrl, "/")). + SetHeader("Content-Type", "application/json"). + SetHeader("User-Agent", "certimate"). SetHeader("X-SLCE-API-TOKEN", apiToken) return &Client{ @@ -35,9 +37,7 @@ func (c *Client) WithTLSConfig(config *tls.Config) *Client { } func (c *Client) sendRequest(path string, params interface{}) (*resty.Response, error) { - req := c.client.R(). - SetHeader("Content-Type", "application/json"). - SetBody(params) + req := c.client.R().SetBody(params) resp, err := req.Post(path) if err != nil { return resp, fmt.Errorf("safeline api error: failed to send request: %w", err) diff --git a/internal/pkg/sdk3rd/upyun/console/client.go b/internal/pkg/sdk3rd/upyun/console/client.go index b207549e..e9202d91 100644 --- a/internal/pkg/sdk3rd/upyun/console/client.go +++ b/internal/pkg/sdk3rd/upyun/console/client.go @@ -26,6 +26,7 @@ func NewClient(username, password string) *Client { } client.client = resty.New(). SetBaseURL("https://console.upyun.com"). + SetHeader("User-Agent", "certimate"). SetPreRequestHook(func(c *resty.Client, req *http.Request) error { if client.loginCookie != "" { req.Header.Set("Cookie", client.loginCookie) diff --git a/internal/pkg/sdk3rd/wangsu/cdnpro/api.go b/internal/pkg/sdk3rd/wangsu/cdnpro/api.go index c6f8da04..c45e6921 100644 --- a/internal/pkg/sdk3rd/wangsu/cdnpro/api.go +++ b/internal/pkg/sdk3rd/wangsu/cdnpro/api.go @@ -11,7 +11,7 @@ import ( func (c *Client) CreateCertificate(req *CreateCertificateRequest) (*CreateCertificateResponse, error) { resp := &CreateCertificateResponse{} rres, err := c.client.SendRequestWithResult(http.MethodPost, "/cdn/certificates", req, resp, func(r *resty.Request) { - r.SetHeader("x-cnc-timestamp", fmt.Sprintf("%d", req.Timestamp)) + r.SetHeader("X-CNC-Timestamp", fmt.Sprintf("%d", req.Timestamp)) }) if err != nil { return resp, err @@ -28,7 +28,7 @@ func (c *Client) UpdateCertificate(certificateId string, req *UpdateCertificateR resp := &UpdateCertificateResponse{} rres, err := c.client.SendRequestWithResult(http.MethodPatch, fmt.Sprintf("/cdn/certificates/%s", url.PathEscape(certificateId)), req, resp, func(r *resty.Request) { - r.SetHeader("x-cnc-timestamp", fmt.Sprintf("%d", req.Timestamp)) + r.SetHeader("X-CNC-Timestamp", fmt.Sprintf("%d", req.Timestamp)) }) if err != nil { return resp, err diff --git a/internal/pkg/sdk3rd/wangsu/openapi/client.go b/internal/pkg/sdk3rd/wangsu/openapi/client.go index a8f4f2af..09723032 100644 --- a/internal/pkg/sdk3rd/wangsu/openapi/client.go +++ b/internal/pkg/sdk3rd/wangsu/openapi/client.go @@ -30,9 +30,10 @@ type Result interface { func NewClient(accessKey, secretKey string) *Client { client := resty.New(). SetBaseURL("https://open.chinanetcenter.com"). - SetHeader("Host", "open.chinanetcenter.com"). SetHeader("Accept", "application/json"). SetHeader("Content-Type", "application/json"). + SetHeader("Host", "open.chinanetcenter.com"). + SetHeader("User-Agent", "certimate"). SetPreRequestHook(func(c *resty.Client, req *http.Request) error { // Step 1: Get request method method := req.Method @@ -85,7 +86,7 @@ func NewClient(accessKey, secretKey string) *Client { // Step 6: Get timestamp var reqtime time.Time - timestampString := req.Header.Get("x-cnc-timestamp") + timestampString := req.Header.Get("X-CNC-Timestamp") if timestampString == "" { reqtime = time.Now().UTC() timestampString = fmt.Sprintf("%d", reqtime.Unix()) @@ -111,9 +112,9 @@ func NewClient(accessKey, secretKey string) *Client { signHex := strings.ToLower(hex.EncodeToString(sign)) // Step 9: Add headers to request - req.Header.Set("x-cnc-accesskey", accessKey) - req.Header.Set("x-cnc-timestamp", timestampString) - req.Header.Set("x-cnc-auth-method", "AKSK") + req.Header.Set("X-CNC-AccessKey", accessKey) + req.Header.Set("X-CNC-Timestamp", timestampString) + req.Header.Set("X-CNC-Auth-Method", "AKSK") req.Header.Set("Authorization", fmt.Sprintf("%s Credential=%s, SignedHeaders=%s, Signature=%s", SignAlgorithmHeader, accessKey, signedHeaders, signHex)) req.Header.Set("Date", reqtime.Format("Mon, 02 Jan 2006 15:04:05 GMT")) @@ -173,7 +174,7 @@ func (c *Client) SendRequestWithResult(method string, path string, params interf if err != nil { if resp != nil { json.Unmarshal(resp.Body(), &result) - result.SetRequestId(resp.Header().Get("x-cnc-request-id")) + result.SetRequestId(resp.Header().Get("X-CNC-Request-Id")) } return resp, err } @@ -185,6 +186,6 @@ func (c *Client) SendRequestWithResult(method string, path string, params interf } } - result.SetRequestId(resp.Header().Get("x-cnc-request-id")) + result.SetRequestId(resp.Header().Get("X-CNC-Request-Id")) return resp, nil } From daf22b7f153a2a92d6b060e643f982f0213e78c7 Mon Sep 17 00:00:00 2001 From: Fu Diwei Date: Wed, 28 May 2025 16:44:11 +0800 Subject: [PATCH 5/8] feat: initialize aliyun fc ssl protocol --- internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go b/internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go index c1e8c5a0..d86998d0 100644 --- a/internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go +++ b/internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go @@ -111,6 +111,9 @@ func (d *DeployerProvider) deployToFC3(ctx context.Context, certPEM string, priv TlsConfig: getCustomDomainResp.Body.TlsConfig, }, } + if tea.StringValue(updateCustomDomainReq.Body.Protocol) == "HTTP" { + updateCustomDomainReq.Body.Protocol = tea.String("HTTP,HTTPS") + } updateCustomDomainResp, err := d.sdkClients.FC3.UpdateCustomDomain(tea.String(d.config.Domain), updateCustomDomainReq) d.logger.Debug("sdk request 'fc.UpdateCustomDomain'", slog.Any("request", updateCustomDomainReq), slog.Any("response", updateCustomDomainResp)) if err != nil { @@ -140,6 +143,9 @@ func (d *DeployerProvider) deployToFC2(ctx context.Context, certPEM string, priv Protocol: getCustomDomainResp.Body.Protocol, TlsConfig: getCustomDomainResp.Body.TlsConfig, } + if tea.StringValue(updateCustomDomainReq.Protocol) == "HTTP" { + updateCustomDomainReq.Protocol = tea.String("HTTP,HTTPS") + } updateCustomDomainResp, err := d.sdkClients.FC2.UpdateCustomDomain(tea.String(d.config.Domain), updateCustomDomainReq) d.logger.Debug("sdk request 'fc.UpdateCustomDomain'", slog.Any("request", updateCustomDomainReq), slog.Any("response", updateCustomDomainResp)) if err != nil { From efdeacf01a9d751807b52f0f8a77209ebf6459fa Mon Sep 17 00:00:00 2001 From: Fu Diwei Date: Wed, 28 May 2025 21:39:02 +0800 Subject: [PATCH 6/8] feat: add preset webhook template for serverchan3 --- .../access/AccessFormWebhookConfig.tsx | 23 ++++++++++++++++--- ui/src/i18n/locales/en/nls.access.json | 3 ++- ui/src/i18n/locales/zh/nls.access.json | 3 ++- 3 files changed, 24 insertions(+), 5 deletions(-) diff --git a/ui/src/components/access/AccessFormWebhookConfig.tsx b/ui/src/components/access/AccessFormWebhookConfig.tsx index d79f848d..7ceec29a 100644 --- a/ui/src/components/access/AccessFormWebhookConfig.tsx +++ b/ui/src/components/access/AccessFormWebhookConfig.tsx @@ -224,7 +224,24 @@ const AccessFormWebhookConfig = ({ form: formInst, formName, disabled, initialVa ); break; - case "serverchan": + case "serverchan3": + formInst.setFieldValue("url", "https://.push.ft07.com/send/.send"); + formInst.setFieldValue("method", "POST"); + formInst.setFieldValue("headers", "Content-Type: application/json"); + formInst.setFieldValue( + "defaultDataForNotification", + JSON.stringify( + { + title: "${SUBJECT}", + desp: "${MESSAGE}", + }, + null, + 2 + ) + ); + break; + + case "serverchanturbo": formInst.setFieldValue("url", "https://sctapi.ftqq.com/.send"); formInst.setFieldValue("method", "POST"); formInst.setFieldValue("headers", "Content-Type: application/json"); @@ -329,9 +346,9 @@ const AccessFormWebhookConfig = ({ form: formInst, formName, disabled, initialVa
({ + items: ["bark", "ntfy", "gotify", "pushover", "pushplus", "serverchan3", "serverchanturbo", "common"].map((key) => ({ key, - label: t(`access.form.webhook_preset_data.option.${key}.label`), + label: , onClick: () => handlePresetDataForNotificationClick(key), })), }} diff --git a/ui/src/i18n/locales/en/nls.access.json b/ui/src/i18n/locales/en/nls.access.json index 1e570779..59bee417 100644 --- a/ui/src/i18n/locales/en/nls.access.json +++ b/ui/src/i18n/locales/en/nls.access.json @@ -465,7 +465,8 @@ "access.form.webhook_preset_data.option.ntfy.label": "ntfy", "access.form.webhook_preset_data.option.pushover.label": "Pushover", "access.form.webhook_preset_data.option.pushplus.label": "PushPlus", - "access.form.webhook_preset_data.option.serverchan.label": "ServerChan", + "access.form.webhook_preset_data.option.serverchan3.label": "ServerChan3", + "access.form.webhook_preset_data.option.serverchanturbo.label": "ServerChanTurbo", "access.form.webhook_preset_data.option.common.label": "General template", "access.form.wecombot_webhook_url.label": "WeCom bot Webhook URL", "access.form.wecombot_webhook_url.placeholder": "Please enter WeCom bot Webhook URL", diff --git a/ui/src/i18n/locales/zh/nls.access.json b/ui/src/i18n/locales/zh/nls.access.json index 7e5abf8e..3c94a882 100644 --- a/ui/src/i18n/locales/zh/nls.access.json +++ b/ui/src/i18n/locales/zh/nls.access.json @@ -465,7 +465,8 @@ "access.form.webhook_preset_data.option.ntfy.label": "ntfy", "access.form.webhook_preset_data.option.pushover.label": "Pushover", "access.form.webhook_preset_data.option.pushplus.label": "PushPlus 推送加", - "access.form.webhook_preset_data.option.serverchan.label": "Server 酱", + "access.form.webhook_preset_data.option.serverchan3.label": "Server 酱 3", + "access.form.webhook_preset_data.option.serverchanturbo.label": "Server酱 Turbo", "access.form.webhook_preset_data.option.common.label": "通用模板", "access.form.wecombot_webhook_url.label": "企业微信群机器人 Webhook 地址", "access.form.wecombot_webhook_url.placeholder": "请输入企业微信群机器人 Webhook 地址", From e73e2739c165f8b42d49b1c1affeb620bfc8d5fa Mon Sep 17 00:00:00 2001 From: Fu Diwei Date: Wed, 28 May 2025 22:21:41 +0800 Subject: [PATCH 7/8] feat: use discard handler as default providers logger --- .../core/deployer/providers/1panel-console/1panel_console.go | 2 +- internal/pkg/core/deployer/providers/1panel-site/1panel_site.go | 2 +- internal/pkg/core/deployer/providers/aliyun-alb/aliyun_alb.go | 2 +- .../pkg/core/deployer/providers/aliyun-apigw/aliyun_apigw.go | 2 +- .../deployer/providers/aliyun-cas-deploy/aliyun_cas_deploy.go | 2 +- internal/pkg/core/deployer/providers/aliyun-cas/aliyun_cas.go | 2 +- internal/pkg/core/deployer/providers/aliyun-cdn/aliyun_cdn.go | 2 +- internal/pkg/core/deployer/providers/aliyun-clb/aliyun_clb.go | 2 +- internal/pkg/core/deployer/providers/aliyun-dcdn/aliyun_dcdn.go | 2 +- internal/pkg/core/deployer/providers/aliyun-ddos/aliyun_ddos.go | 2 +- internal/pkg/core/deployer/providers/aliyun-esa/aliyun_esa.go | 2 +- internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go | 2 +- internal/pkg/core/deployer/providers/aliyun-ga/aliyun_ga.go | 2 +- internal/pkg/core/deployer/providers/aliyun-live/aliyun_live.go | 2 +- internal/pkg/core/deployer/providers/aliyun-nlb/aliyun_nlb.go | 2 +- internal/pkg/core/deployer/providers/aliyun-oss/aliyun_oss.go | 2 +- internal/pkg/core/deployer/providers/aliyun-vod/aliyun_vod.go | 2 +- internal/pkg/core/deployer/providers/aliyun-waf/aliyun_waf.go | 2 +- internal/pkg/core/deployer/providers/aws-acm/aws_acm.go | 2 +- .../core/deployer/providers/aws-cloudfront/aws_cloudfront.go | 2 +- .../core/deployer/providers/azure-keyvault/azure_keyvault.go | 2 +- .../deployer/providers/baiducloud-appblb/baiducloud_appblb.go | 2 +- .../core/deployer/providers/baiducloud-blb/baiducloud_blb.go | 2 +- .../core/deployer/providers/baiducloud-cdn/baiducloud_cdn.go | 2 +- .../core/deployer/providers/baiducloud-cert/baiducloud_cert.go | 2 +- internal/pkg/core/deployer/providers/baishan-cdn/baishan_cdn.go | 2 +- .../deployer/providers/baotapanel-console/baotapanel_console.go | 2 +- .../core/deployer/providers/baotapanel-site/baotapanel_site.go | 2 +- .../deployer/providers/baotawaf-console/baotawaf_console.go | 2 +- .../pkg/core/deployer/providers/baotawaf-site/baotawaf_site.go | 2 +- internal/pkg/core/deployer/providers/bunny-cdn/bunny_cdn.go | 2 +- .../pkg/core/deployer/providers/byteplus-cdn/byteplus_cdn.go | 2 +- internal/pkg/core/deployer/providers/cachefly/cachefly.go | 2 +- internal/pkg/core/deployer/providers/cdnfly/cdnfly.go | 2 +- .../pkg/core/deployer/providers/dogecloud-cdn/dogecloud_cdn.go | 2 +- .../deployer/providers/edgio-applications/edgio_applications.go | 2 +- internal/pkg/core/deployer/providers/flexcdn/flexcdn.go | 2 +- internal/pkg/core/deployer/providers/gcore-cdn/gcore_cdn.go | 2 +- internal/pkg/core/deployer/providers/goedge/goedge.go | 2 +- .../core/deployer/providers/huaweicloud-cdn/huaweicloud_cdn.go | 2 +- .../core/deployer/providers/huaweicloud-elb/huaweicloud_elb.go | 2 +- .../core/deployer/providers/huaweicloud-scm/huaweicloud_scm.go | 2 +- .../core/deployer/providers/huaweicloud-waf/huaweicloud_waf.go | 2 +- internal/pkg/core/deployer/providers/jdcloud-alb/jdcloud_alb.go | 2 +- internal/pkg/core/deployer/providers/jdcloud-cdn/jdcloud_cdn.go | 2 +- .../pkg/core/deployer/providers/jdcloud-live/jdcloud_live.go | 2 +- internal/pkg/core/deployer/providers/jdcloud-vod/jdcloud_vod.go | 2 +- internal/pkg/core/deployer/providers/k8s-secret/k8s_secret.go | 2 +- internal/pkg/core/deployer/providers/lecdn/lecdn.go | 2 +- internal/pkg/core/deployer/providers/local/local.go | 2 +- .../pkg/core/deployer/providers/netlify-site/netlify_site.go | 2 +- internal/pkg/core/deployer/providers/proxmoxve/proxmoxve.go | 2 +- internal/pkg/core/deployer/providers/qiniu-cdn/qiniu_cdn.go | 2 +- internal/pkg/core/deployer/providers/qiniu-pili/qiniu_pili.go | 2 +- .../pkg/core/deployer/providers/rainyun-rcdn/rainyun_rcdn.go | 2 +- .../deployer/providers/ratpanel-console/ratpanel_console.go | 2 +- .../pkg/core/deployer/providers/ratpanel-site/ratpanel_site.go | 2 +- internal/pkg/core/deployer/providers/safeline/safeline.go | 2 +- internal/pkg/core/deployer/providers/ssh/ssh.go | 2 +- .../deployer/providers/tencentcloud-cdn/tencentcloud_cdn.go | 2 +- .../deployer/providers/tencentcloud-clb/tencentcloud_clb.go | 2 +- .../deployer/providers/tencentcloud-cos/tencentcloud_cos.go | 2 +- .../deployer/providers/tencentcloud-css/tencentcloud_css.go | 2 +- .../deployer/providers/tencentcloud-ecdn/tencentcloud_ecdn.go | 2 +- .../core/deployer/providers/tencentcloud-eo/tencentcloud_eo.go | 2 +- .../deployer/providers/tencentcloud-scf/tencentcloud_scf.go | 2 +- .../tencentcloud-ssl-deploy/tencentcloud_ssl_deploy.go | 2 +- .../deployer/providers/tencentcloud-ssl/tencentcloud_ssl.go | 2 +- .../deployer/providers/tencentcloud-vod/tencentcloud_vod.go | 2 +- .../deployer/providers/tencentcloud-waf/tencentcloud_waf.go | 2 +- internal/pkg/core/deployer/providers/ucloud-ucdn/ucloud_ucdn.go | 2 +- internal/pkg/core/deployer/providers/ucloud-us3/ucloud_us3.go | 2 +- .../deployer/providers/unicloud-webhost/unicloud_webhost.go | 2 +- internal/pkg/core/deployer/providers/upyun-cdn/upyun_cdn.go | 2 +- .../core/deployer/providers/volcengine-alb/volcengine_alb.go | 2 +- .../core/deployer/providers/volcengine-cdn/volcengine_cdn.go | 2 +- .../providers/volcengine-certcenter/volcengine_certcenter.go | 2 +- .../core/deployer/providers/volcengine-clb/volcengine_clb.go | 2 +- .../core/deployer/providers/volcengine-dcdn/volcengine_dcdn.go | 2 +- .../deployer/providers/volcengine-imagex/volcengine_imagex.go | 2 +- .../core/deployer/providers/volcengine-live/volcengine_live.go | 2 +- .../core/deployer/providers/volcengine-tos/volcengine_tos.go | 2 +- internal/pkg/core/deployer/providers/wangsu-cdn/wangsu_cdn.go | 2 +- .../pkg/core/deployer/providers/wangsu-cdnpro/wangsu_cdnpro.go | 2 +- .../deployer/providers/wangsu-certificate/wangsu_certificate.go | 2 +- internal/pkg/core/deployer/providers/webhook/webhook.go | 2 +- internal/pkg/core/notifier/providers/bark/bark.go | 2 +- internal/pkg/core/notifier/providers/dingtalkbot/dingtalkbot.go | 2 +- internal/pkg/core/notifier/providers/discordbot/discordbot.go | 2 +- internal/pkg/core/notifier/providers/email/email.go | 2 +- internal/pkg/core/notifier/providers/gotify/gotify.go | 2 +- internal/pkg/core/notifier/providers/larkbot/larkbot.go | 2 +- internal/pkg/core/notifier/providers/mattermost/mattermost.go | 2 +- internal/pkg/core/notifier/providers/pushover/pushover.go | 2 +- internal/pkg/core/notifier/providers/pushplus/pushplus.go | 2 +- internal/pkg/core/notifier/providers/serverchan/serverchan.go | 2 +- internal/pkg/core/notifier/providers/slackbot/slackbot.go | 2 +- internal/pkg/core/notifier/providers/telegrambot/telegrambot.go | 2 +- internal/pkg/core/notifier/providers/webhook/webhook.go | 2 +- internal/pkg/core/notifier/providers/wecombot/wecombot.go | 2 +- internal/pkg/core/uploader/providers/1panel-ssl/1panel_ssl.go | 2 +- internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go | 2 +- internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go | 2 +- internal/pkg/core/uploader/providers/aws-acm/aws_acm.go | 2 +- .../core/uploader/providers/azure-keyvault/azure_keyvault.go | 2 +- .../core/uploader/providers/baiducloud-cert/baiducloud_cert.go | 2 +- .../pkg/core/uploader/providers/byteplus-cdn/byteplus_cdn.go | 2 +- internal/pkg/core/uploader/providers/dogecloud/dogecloud.go | 2 +- internal/pkg/core/uploader/providers/gcore-cdn/gcore_cdn.go | 2 +- .../core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go | 2 +- .../core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go | 2 +- .../core/uploader/providers/huaweicloud-waf/huaweicloud_waf.go | 2 +- internal/pkg/core/uploader/providers/jdcloud-ssl/jdcloud_ssl.go | 2 +- .../pkg/core/uploader/providers/qiniu-sslcert/qiniu_sslcert.go | 2 +- .../uploader/providers/rainyun-sslcenter/rainyun_sslcenter.go | 2 +- .../uploader/providers/tencentcloud-ssl/tencentcloud_ssl.go | 2 +- internal/pkg/core/uploader/providers/ucloud-ussl/ucloud_ussl.go | 2 +- internal/pkg/core/uploader/providers/upyun-ssl/upyun_ssl.go | 2 +- .../core/uploader/providers/volcengine-cdn/volcengine_cdn.go | 2 +- .../providers/volcengine-certcenter/volcengine_certcenter.go | 2 +- .../core/uploader/providers/volcengine-live/volcengine_live.go | 2 +- .../uploader/providers/wangsu-certificate/wangsu_certificate.go | 2 +- 122 files changed, 122 insertions(+), 122 deletions(-) diff --git a/internal/pkg/core/deployer/providers/1panel-console/1panel_console.go b/internal/pkg/core/deployer/providers/1panel-console/1panel_console.go index cdeb8af5..b1df4153 100644 --- a/internal/pkg/core/deployer/providers/1panel-console/1panel_console.go +++ b/internal/pkg/core/deployer/providers/1panel-console/1panel_console.go @@ -53,7 +53,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/1panel-site/1panel_site.go b/internal/pkg/core/deployer/providers/1panel-site/1panel_site.go index 07d124a3..0f721c3f 100644 --- a/internal/pkg/core/deployer/providers/1panel-site/1panel_site.go +++ b/internal/pkg/core/deployer/providers/1panel-site/1panel_site.go @@ -74,7 +74,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-alb/aliyun_alb.go b/internal/pkg/core/deployer/providers/aliyun-alb/aliyun_alb.go index fec66c0e..0f22091a 100644 --- a/internal/pkg/core/deployer/providers/aliyun-alb/aliyun_alb.go +++ b/internal/pkg/core/deployer/providers/aliyun-alb/aliyun_alb.go @@ -81,7 +81,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-apigw/aliyun_apigw.go b/internal/pkg/core/deployer/providers/aliyun-apigw/aliyun_apigw.go index f215e701..12f0f3d7 100644 --- a/internal/pkg/core/deployer/providers/aliyun-apigw/aliyun_apigw.go +++ b/internal/pkg/core/deployer/providers/aliyun-apigw/aliyun_apigw.go @@ -79,7 +79,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-cas-deploy/aliyun_cas_deploy.go b/internal/pkg/core/deployer/providers/aliyun-cas-deploy/aliyun_cas_deploy.go index 5acdb50e..cfcdaa18 100644 --- a/internal/pkg/core/deployer/providers/aliyun-cas-deploy/aliyun_cas_deploy.go +++ b/internal/pkg/core/deployer/providers/aliyun-cas-deploy/aliyun_cas_deploy.go @@ -67,7 +67,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-cas/aliyun_cas.go b/internal/pkg/core/deployer/providers/aliyun-cas/aliyun_cas.go index 73d2d77b..f1cc8811 100644 --- a/internal/pkg/core/deployer/providers/aliyun-cas/aliyun_cas.go +++ b/internal/pkg/core/deployer/providers/aliyun-cas/aliyun_cas.go @@ -53,7 +53,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-cdn/aliyun_cdn.go b/internal/pkg/core/deployer/providers/aliyun-cdn/aliyun_cdn.go index 5fa6eedf..96dd211f 100644 --- a/internal/pkg/core/deployer/providers/aliyun-cdn/aliyun_cdn.go +++ b/internal/pkg/core/deployer/providers/aliyun-cdn/aliyun_cdn.go @@ -52,7 +52,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-clb/aliyun_clb.go b/internal/pkg/core/deployer/providers/aliyun-clb/aliyun_clb.go index ec35a190..1722e4fd 100644 --- a/internal/pkg/core/deployer/providers/aliyun-clb/aliyun_clb.go +++ b/internal/pkg/core/deployer/providers/aliyun-clb/aliyun_clb.go @@ -71,7 +71,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-dcdn/aliyun_dcdn.go b/internal/pkg/core/deployer/providers/aliyun-dcdn/aliyun_dcdn.go index f27f4ab9..a5109163 100644 --- a/internal/pkg/core/deployer/providers/aliyun-dcdn/aliyun_dcdn.go +++ b/internal/pkg/core/deployer/providers/aliyun-dcdn/aliyun_dcdn.go @@ -52,7 +52,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-ddos/aliyun_ddos.go b/internal/pkg/core/deployer/providers/aliyun-ddos/aliyun_ddos.go index 83d5d602..f0bd3476 100644 --- a/internal/pkg/core/deployer/providers/aliyun-ddos/aliyun_ddos.go +++ b/internal/pkg/core/deployer/providers/aliyun-ddos/aliyun_ddos.go @@ -64,7 +64,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-esa/aliyun_esa.go b/internal/pkg/core/deployer/providers/aliyun-esa/aliyun_esa.go index 74d8344b..e4906fb5 100644 --- a/internal/pkg/core/deployer/providers/aliyun-esa/aliyun_esa.go +++ b/internal/pkg/core/deployer/providers/aliyun-esa/aliyun_esa.go @@ -64,7 +64,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go b/internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go index d86998d0..1ff046c3 100644 --- a/internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go +++ b/internal/pkg/core/deployer/providers/aliyun-fc/aliyun_fc.go @@ -63,7 +63,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-ga/aliyun_ga.go b/internal/pkg/core/deployer/providers/aliyun-ga/aliyun_ga.go index c7385863..6ea13077 100644 --- a/internal/pkg/core/deployer/providers/aliyun-ga/aliyun_ga.go +++ b/internal/pkg/core/deployer/providers/aliyun-ga/aliyun_ga.go @@ -70,7 +70,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-live/aliyun_live.go b/internal/pkg/core/deployer/providers/aliyun-live/aliyun_live.go index 0481f3bf..0fab9485 100644 --- a/internal/pkg/core/deployer/providers/aliyun-live/aliyun_live.go +++ b/internal/pkg/core/deployer/providers/aliyun-live/aliyun_live.go @@ -54,7 +54,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-nlb/aliyun_nlb.go b/internal/pkg/core/deployer/providers/aliyun-nlb/aliyun_nlb.go index e4e80db9..dd83f514 100644 --- a/internal/pkg/core/deployer/providers/aliyun-nlb/aliyun_nlb.go +++ b/internal/pkg/core/deployer/providers/aliyun-nlb/aliyun_nlb.go @@ -69,7 +69,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-oss/aliyun_oss.go b/internal/pkg/core/deployer/providers/aliyun-oss/aliyun_oss.go index d810c0f9..6a698cf0 100644 --- a/internal/pkg/core/deployer/providers/aliyun-oss/aliyun_oss.go +++ b/internal/pkg/core/deployer/providers/aliyun-oss/aliyun_oss.go @@ -53,7 +53,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-vod/aliyun_vod.go b/internal/pkg/core/deployer/providers/aliyun-vod/aliyun_vod.go index b340e0a3..ab02fa89 100644 --- a/internal/pkg/core/deployer/providers/aliyun-vod/aliyun_vod.go +++ b/internal/pkg/core/deployer/providers/aliyun-vod/aliyun_vod.go @@ -54,7 +54,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aliyun-waf/aliyun_waf.go b/internal/pkg/core/deployer/providers/aliyun-waf/aliyun_waf.go index c8ec310a..cb3c70e9 100644 --- a/internal/pkg/core/deployer/providers/aliyun-waf/aliyun_waf.go +++ b/internal/pkg/core/deployer/providers/aliyun-waf/aliyun_waf.go @@ -69,7 +69,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aws-acm/aws_acm.go b/internal/pkg/core/deployer/providers/aws-acm/aws_acm.go index a9e90b60..0c9c5d57 100644 --- a/internal/pkg/core/deployer/providers/aws-acm/aws_acm.go +++ b/internal/pkg/core/deployer/providers/aws-acm/aws_acm.go @@ -66,7 +66,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/aws-cloudfront/aws_cloudfront.go b/internal/pkg/core/deployer/providers/aws-cloudfront/aws_cloudfront.go index 0808a4fb..7ec17044 100644 --- a/internal/pkg/core/deployer/providers/aws-cloudfront/aws_cloudfront.go +++ b/internal/pkg/core/deployer/providers/aws-cloudfront/aws_cloudfront.go @@ -66,7 +66,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/azure-keyvault/azure_keyvault.go b/internal/pkg/core/deployer/providers/azure-keyvault/azure_keyvault.go index b8f8df99..1331bbf6 100644 --- a/internal/pkg/core/deployer/providers/azure-keyvault/azure_keyvault.go +++ b/internal/pkg/core/deployer/providers/azure-keyvault/azure_keyvault.go @@ -76,7 +76,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/baiducloud-appblb/baiducloud_appblb.go b/internal/pkg/core/deployer/providers/baiducloud-appblb/baiducloud_appblb.go index 3318135f..3bb965ca 100644 --- a/internal/pkg/core/deployer/providers/baiducloud-appblb/baiducloud_appblb.go +++ b/internal/pkg/core/deployer/providers/baiducloud-appblb/baiducloud_appblb.go @@ -74,7 +74,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/baiducloud-blb/baiducloud_blb.go b/internal/pkg/core/deployer/providers/baiducloud-blb/baiducloud_blb.go index a16ea102..0490b9ad 100644 --- a/internal/pkg/core/deployer/providers/baiducloud-blb/baiducloud_blb.go +++ b/internal/pkg/core/deployer/providers/baiducloud-blb/baiducloud_blb.go @@ -74,7 +74,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/baiducloud-cdn/baiducloud_cdn.go b/internal/pkg/core/deployer/providers/baiducloud-cdn/baiducloud_cdn.go index 7ef78fb1..ccd11f9b 100644 --- a/internal/pkg/core/deployer/providers/baiducloud-cdn/baiducloud_cdn.go +++ b/internal/pkg/core/deployer/providers/baiducloud-cdn/baiducloud_cdn.go @@ -48,7 +48,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/baiducloud-cert/baiducloud_cert.go b/internal/pkg/core/deployer/providers/baiducloud-cert/baiducloud_cert.go index 200d34ec..f2295593 100644 --- a/internal/pkg/core/deployer/providers/baiducloud-cert/baiducloud_cert.go +++ b/internal/pkg/core/deployer/providers/baiducloud-cert/baiducloud_cert.go @@ -47,7 +47,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/baishan-cdn/baishan_cdn.go b/internal/pkg/core/deployer/providers/baishan-cdn/baishan_cdn.go index e3efa6e4..b056b076 100644 --- a/internal/pkg/core/deployer/providers/baishan-cdn/baishan_cdn.go +++ b/internal/pkg/core/deployer/providers/baishan-cdn/baishan_cdn.go @@ -51,7 +51,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/baotapanel-console/baotapanel_console.go b/internal/pkg/core/deployer/providers/baotapanel-console/baotapanel_console.go index 5709f82d..403b96e8 100644 --- a/internal/pkg/core/deployer/providers/baotapanel-console/baotapanel_console.go +++ b/internal/pkg/core/deployer/providers/baotapanel-console/baotapanel_console.go @@ -50,7 +50,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/baotapanel-site/baotapanel_site.go b/internal/pkg/core/deployer/providers/baotapanel-site/baotapanel_site.go index d6ee1533..78fc3e96 100644 --- a/internal/pkg/core/deployer/providers/baotapanel-site/baotapanel_site.go +++ b/internal/pkg/core/deployer/providers/baotapanel-site/baotapanel_site.go @@ -55,7 +55,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/baotawaf-console/baotawaf_console.go b/internal/pkg/core/deployer/providers/baotawaf-console/baotawaf_console.go index 482ca8e4..dbdbf811 100644 --- a/internal/pkg/core/deployer/providers/baotawaf-console/baotawaf_console.go +++ b/internal/pkg/core/deployer/providers/baotawaf-console/baotawaf_console.go @@ -48,7 +48,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/baotawaf-site/baotawaf_site.go b/internal/pkg/core/deployer/providers/baotawaf-site/baotawaf_site.go index 945d5a48..24eabb41 100644 --- a/internal/pkg/core/deployer/providers/baotawaf-site/baotawaf_site.go +++ b/internal/pkg/core/deployer/providers/baotawaf-site/baotawaf_site.go @@ -54,7 +54,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/bunny-cdn/bunny_cdn.go b/internal/pkg/core/deployer/providers/bunny-cdn/bunny_cdn.go index e2bfd696..cdc39baa 100644 --- a/internal/pkg/core/deployer/providers/bunny-cdn/bunny_cdn.go +++ b/internal/pkg/core/deployer/providers/bunny-cdn/bunny_cdn.go @@ -41,7 +41,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/byteplus-cdn/byteplus_cdn.go b/internal/pkg/core/deployer/providers/byteplus-cdn/byteplus_cdn.go index e659c9a1..a11bbaf7 100644 --- a/internal/pkg/core/deployer/providers/byteplus-cdn/byteplus_cdn.go +++ b/internal/pkg/core/deployer/providers/byteplus-cdn/byteplus_cdn.go @@ -59,7 +59,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/cachefly/cachefly.go b/internal/pkg/core/deployer/providers/cachefly/cachefly.go index 21cb4dd0..fa1cce13 100644 --- a/internal/pkg/core/deployer/providers/cachefly/cachefly.go +++ b/internal/pkg/core/deployer/providers/cachefly/cachefly.go @@ -42,7 +42,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/cdnfly/cdnfly.go b/internal/pkg/core/deployer/providers/cdnfly/cdnfly.go index 1ced8caf..25fb6a54 100644 --- a/internal/pkg/core/deployer/providers/cdnfly/cdnfly.go +++ b/internal/pkg/core/deployer/providers/cdnfly/cdnfly.go @@ -60,7 +60,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/dogecloud-cdn/dogecloud_cdn.go b/internal/pkg/core/deployer/providers/dogecloud-cdn/dogecloud_cdn.go index efcf4b7c..9401285f 100644 --- a/internal/pkg/core/deployer/providers/dogecloud-cdn/dogecloud_cdn.go +++ b/internal/pkg/core/deployer/providers/dogecloud-cdn/dogecloud_cdn.go @@ -55,7 +55,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/edgio-applications/edgio_applications.go b/internal/pkg/core/deployer/providers/edgio-applications/edgio_applications.go index 195c202e..a4a60c98 100644 --- a/internal/pkg/core/deployer/providers/edgio-applications/edgio_applications.go +++ b/internal/pkg/core/deployer/providers/edgio-applications/edgio_applications.go @@ -48,7 +48,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/flexcdn/flexcdn.go b/internal/pkg/core/deployer/providers/flexcdn/flexcdn.go index 8b692e90..3c957071 100644 --- a/internal/pkg/core/deployer/providers/flexcdn/flexcdn.go +++ b/internal/pkg/core/deployer/providers/flexcdn/flexcdn.go @@ -61,7 +61,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/gcore-cdn/gcore_cdn.go b/internal/pkg/core/deployer/providers/gcore-cdn/gcore_cdn.go index 780f91a7..0d652df9 100644 --- a/internal/pkg/core/deployer/providers/gcore-cdn/gcore_cdn.go +++ b/internal/pkg/core/deployer/providers/gcore-cdn/gcore_cdn.go @@ -69,7 +69,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/goedge/goedge.go b/internal/pkg/core/deployer/providers/goedge/goedge.go index 25caeb01..0b7ff2b5 100644 --- a/internal/pkg/core/deployer/providers/goedge/goedge.go +++ b/internal/pkg/core/deployer/providers/goedge/goedge.go @@ -61,7 +61,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/huaweicloud-cdn/huaweicloud_cdn.go b/internal/pkg/core/deployer/providers/huaweicloud-cdn/huaweicloud_cdn.go index 3a8122ca..cbdff322 100644 --- a/internal/pkg/core/deployer/providers/huaweicloud-cdn/huaweicloud_cdn.go +++ b/internal/pkg/core/deployer/providers/huaweicloud-cdn/huaweicloud_cdn.go @@ -71,7 +71,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/huaweicloud-elb/huaweicloud_elb.go b/internal/pkg/core/deployer/providers/huaweicloud-elb/huaweicloud_elb.go index 92c62c9a..52cbcab5 100644 --- a/internal/pkg/core/deployer/providers/huaweicloud-elb/huaweicloud_elb.go +++ b/internal/pkg/core/deployer/providers/huaweicloud-elb/huaweicloud_elb.go @@ -83,7 +83,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/huaweicloud-scm/huaweicloud_scm.go b/internal/pkg/core/deployer/providers/huaweicloud-scm/huaweicloud_scm.go index c1afb5d8..0ba5816a 100644 --- a/internal/pkg/core/deployer/providers/huaweicloud-scm/huaweicloud_scm.go +++ b/internal/pkg/core/deployer/providers/huaweicloud-scm/huaweicloud_scm.go @@ -50,7 +50,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/huaweicloud-waf/huaweicloud_waf.go b/internal/pkg/core/deployer/providers/huaweicloud-waf/huaweicloud_waf.go index 04c1c30e..8afb2049 100644 --- a/internal/pkg/core/deployer/providers/huaweicloud-waf/huaweicloud_waf.go +++ b/internal/pkg/core/deployer/providers/huaweicloud-waf/huaweicloud_waf.go @@ -80,7 +80,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/jdcloud-alb/jdcloud_alb.go b/internal/pkg/core/deployer/providers/jdcloud-alb/jdcloud_alb.go index ca42126e..0f8a048d 100644 --- a/internal/pkg/core/deployer/providers/jdcloud-alb/jdcloud_alb.go +++ b/internal/pkg/core/deployer/providers/jdcloud-alb/jdcloud_alb.go @@ -76,7 +76,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/jdcloud-cdn/jdcloud_cdn.go b/internal/pkg/core/deployer/providers/jdcloud-cdn/jdcloud_cdn.go index 10ccf19d..7da0000b 100644 --- a/internal/pkg/core/deployer/providers/jdcloud-cdn/jdcloud_cdn.go +++ b/internal/pkg/core/deployer/providers/jdcloud-cdn/jdcloud_cdn.go @@ -60,7 +60,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/jdcloud-live/jdcloud_live.go b/internal/pkg/core/deployer/providers/jdcloud-live/jdcloud_live.go index 24e5bc7a..666ce101 100644 --- a/internal/pkg/core/deployer/providers/jdcloud-live/jdcloud_live.go +++ b/internal/pkg/core/deployer/providers/jdcloud-live/jdcloud_live.go @@ -48,7 +48,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/jdcloud-vod/jdcloud_vod.go b/internal/pkg/core/deployer/providers/jdcloud-vod/jdcloud_vod.go index 6f61625d..19e5e286 100644 --- a/internal/pkg/core/deployer/providers/jdcloud-vod/jdcloud_vod.go +++ b/internal/pkg/core/deployer/providers/jdcloud-vod/jdcloud_vod.go @@ -51,7 +51,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/k8s-secret/k8s_secret.go b/internal/pkg/core/deployer/providers/k8s-secret/k8s_secret.go index de2e62be..e51bfcd8 100644 --- a/internal/pkg/core/deployer/providers/k8s-secret/k8s_secret.go +++ b/internal/pkg/core/deployer/providers/k8s-secret/k8s_secret.go @@ -52,7 +52,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/lecdn/lecdn.go b/internal/pkg/core/deployer/providers/lecdn/lecdn.go index c85f6558..4d9f4302 100644 --- a/internal/pkg/core/deployer/providers/lecdn/lecdn.go +++ b/internal/pkg/core/deployer/providers/lecdn/lecdn.go @@ -73,7 +73,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/local/local.go b/internal/pkg/core/deployer/providers/local/local.go index 8b05d95b..0b71da8a 100644 --- a/internal/pkg/core/deployer/providers/local/local.go +++ b/internal/pkg/core/deployer/providers/local/local.go @@ -67,7 +67,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/netlify-site/netlify_site.go b/internal/pkg/core/deployer/providers/netlify-site/netlify_site.go index 908b78c3..3b2072d7 100644 --- a/internal/pkg/core/deployer/providers/netlify-site/netlify_site.go +++ b/internal/pkg/core/deployer/providers/netlify-site/netlify_site.go @@ -45,7 +45,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/proxmoxve/proxmoxve.go b/internal/pkg/core/deployer/providers/proxmoxve/proxmoxve.go index 349c3a16..e4238ccf 100644 --- a/internal/pkg/core/deployer/providers/proxmoxve/proxmoxve.go +++ b/internal/pkg/core/deployer/providers/proxmoxve/proxmoxve.go @@ -57,7 +57,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/qiniu-cdn/qiniu_cdn.go b/internal/pkg/core/deployer/providers/qiniu-cdn/qiniu_cdn.go index 573eeb94..8491ecc3 100644 --- a/internal/pkg/core/deployer/providers/qiniu-cdn/qiniu_cdn.go +++ b/internal/pkg/core/deployer/providers/qiniu-cdn/qiniu_cdn.go @@ -57,7 +57,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/qiniu-pili/qiniu_pili.go b/internal/pkg/core/deployer/providers/qiniu-pili/qiniu_pili.go index db8d899e..ec6cfc4b 100644 --- a/internal/pkg/core/deployer/providers/qiniu-pili/qiniu_pili.go +++ b/internal/pkg/core/deployer/providers/qiniu-pili/qiniu_pili.go @@ -57,7 +57,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/rainyun-rcdn/rainyun_rcdn.go b/internal/pkg/core/deployer/providers/rainyun-rcdn/rainyun_rcdn.go index 0b003bee..99321f82 100644 --- a/internal/pkg/core/deployer/providers/rainyun-rcdn/rainyun_rcdn.go +++ b/internal/pkg/core/deployer/providers/rainyun-rcdn/rainyun_rcdn.go @@ -58,7 +58,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/ratpanel-console/ratpanel_console.go b/internal/pkg/core/deployer/providers/ratpanel-console/ratpanel_console.go index 651ae0ac..85e7f530 100644 --- a/internal/pkg/core/deployer/providers/ratpanel-console/ratpanel_console.go +++ b/internal/pkg/core/deployer/providers/ratpanel-console/ratpanel_console.go @@ -50,7 +50,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/ratpanel-site/ratpanel_site.go b/internal/pkg/core/deployer/providers/ratpanel-site/ratpanel_site.go index 8d605b3d..7e30daf6 100644 --- a/internal/pkg/core/deployer/providers/ratpanel-site/ratpanel_site.go +++ b/internal/pkg/core/deployer/providers/ratpanel-site/ratpanel_site.go @@ -52,7 +52,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/safeline/safeline.go b/internal/pkg/core/deployer/providers/safeline/safeline.go index f1b6b039..253a8754 100644 --- a/internal/pkg/core/deployer/providers/safeline/safeline.go +++ b/internal/pkg/core/deployer/providers/safeline/safeline.go @@ -53,7 +53,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/ssh/ssh.go b/internal/pkg/core/deployer/providers/ssh/ssh.go index 96447cfb..a52c355e 100644 --- a/internal/pkg/core/deployer/providers/ssh/ssh.go +++ b/internal/pkg/core/deployer/providers/ssh/ssh.go @@ -103,7 +103,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/tencentcloud-cdn/tencentcloud_cdn.go b/internal/pkg/core/deployer/providers/tencentcloud-cdn/tencentcloud_cdn.go index a92e4eb1..1df67032 100644 --- a/internal/pkg/core/deployer/providers/tencentcloud-cdn/tencentcloud_cdn.go +++ b/internal/pkg/core/deployer/providers/tencentcloud-cdn/tencentcloud_cdn.go @@ -70,7 +70,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/tencentcloud-clb/tencentcloud_clb.go b/internal/pkg/core/deployer/providers/tencentcloud-clb/tencentcloud_clb.go index 2f7c0f22..5455e236 100644 --- a/internal/pkg/core/deployer/providers/tencentcloud-clb/tencentcloud_clb.go +++ b/internal/pkg/core/deployer/providers/tencentcloud-clb/tencentcloud_clb.go @@ -79,7 +79,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/tencentcloud-cos/tencentcloud_cos.go b/internal/pkg/core/deployer/providers/tencentcloud-cos/tencentcloud_cos.go index 99ee9b2f..2aa6b2d0 100644 --- a/internal/pkg/core/deployer/providers/tencentcloud-cos/tencentcloud_cos.go +++ b/internal/pkg/core/deployer/providers/tencentcloud-cos/tencentcloud_cos.go @@ -66,7 +66,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/tencentcloud-css/tencentcloud_css.go b/internal/pkg/core/deployer/providers/tencentcloud-css/tencentcloud_css.go index 7de626d9..a9056719 100644 --- a/internal/pkg/core/deployer/providers/tencentcloud-css/tencentcloud_css.go +++ b/internal/pkg/core/deployer/providers/tencentcloud-css/tencentcloud_css.go @@ -60,7 +60,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/tencentcloud-ecdn/tencentcloud_ecdn.go b/internal/pkg/core/deployer/providers/tencentcloud-ecdn/tencentcloud_ecdn.go index 88840f4a..d1ba3ce4 100644 --- a/internal/pkg/core/deployer/providers/tencentcloud-ecdn/tencentcloud_ecdn.go +++ b/internal/pkg/core/deployer/providers/tencentcloud-ecdn/tencentcloud_ecdn.go @@ -69,7 +69,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/tencentcloud-eo/tencentcloud_eo.go b/internal/pkg/core/deployer/providers/tencentcloud-eo/tencentcloud_eo.go index 919339bb..138fb84a 100644 --- a/internal/pkg/core/deployer/providers/tencentcloud-eo/tencentcloud_eo.go +++ b/internal/pkg/core/deployer/providers/tencentcloud-eo/tencentcloud_eo.go @@ -69,7 +69,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/tencentcloud-scf/tencentcloud_scf.go b/internal/pkg/core/deployer/providers/tencentcloud-scf/tencentcloud_scf.go index bc8d8696..a0967f4e 100644 --- a/internal/pkg/core/deployer/providers/tencentcloud-scf/tencentcloud_scf.go +++ b/internal/pkg/core/deployer/providers/tencentcloud-scf/tencentcloud_scf.go @@ -62,7 +62,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/tencentcloud-ssl-deploy/tencentcloud_ssl_deploy.go b/internal/pkg/core/deployer/providers/tencentcloud-ssl-deploy/tencentcloud_ssl_deploy.go index 585000d9..5b4dd8d3 100644 --- a/internal/pkg/core/deployer/providers/tencentcloud-ssl-deploy/tencentcloud_ssl_deploy.go +++ b/internal/pkg/core/deployer/providers/tencentcloud-ssl-deploy/tencentcloud_ssl_deploy.go @@ -66,7 +66,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/tencentcloud-ssl/tencentcloud_ssl.go b/internal/pkg/core/deployer/providers/tencentcloud-ssl/tencentcloud_ssl.go index 5fbdb7c6..09ac14cd 100644 --- a/internal/pkg/core/deployer/providers/tencentcloud-ssl/tencentcloud_ssl.go +++ b/internal/pkg/core/deployer/providers/tencentcloud-ssl/tencentcloud_ssl.go @@ -47,7 +47,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/tencentcloud-vod/tencentcloud_vod.go b/internal/pkg/core/deployer/providers/tencentcloud-vod/tencentcloud_vod.go index 1b8553c5..b7c2a3ad 100644 --- a/internal/pkg/core/deployer/providers/tencentcloud-vod/tencentcloud_vod.go +++ b/internal/pkg/core/deployer/providers/tencentcloud-vod/tencentcloud_vod.go @@ -62,7 +62,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/tencentcloud-waf/tencentcloud_waf.go b/internal/pkg/core/deployer/providers/tencentcloud-waf/tencentcloud_waf.go index 18380289..1c8e7272 100644 --- a/internal/pkg/core/deployer/providers/tencentcloud-waf/tencentcloud_waf.go +++ b/internal/pkg/core/deployer/providers/tencentcloud-waf/tencentcloud_waf.go @@ -67,7 +67,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/ucloud-ucdn/ucloud_ucdn.go b/internal/pkg/core/deployer/providers/ucloud-ucdn/ucloud_ucdn.go index 5f90b943..532efb85 100644 --- a/internal/pkg/core/deployer/providers/ucloud-ucdn/ucloud_ucdn.go +++ b/internal/pkg/core/deployer/providers/ucloud-ucdn/ucloud_ucdn.go @@ -65,7 +65,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/ucloud-us3/ucloud_us3.go b/internal/pkg/core/deployer/providers/ucloud-us3/ucloud_us3.go index 5564e6a8..42a51cb4 100644 --- a/internal/pkg/core/deployer/providers/ucloud-us3/ucloud_us3.go +++ b/internal/pkg/core/deployer/providers/ucloud-us3/ucloud_us3.go @@ -67,7 +67,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/unicloud-webhost/unicloud_webhost.go b/internal/pkg/core/deployer/providers/unicloud-webhost/unicloud_webhost.go index e24708bd..82946bf1 100644 --- a/internal/pkg/core/deployer/providers/unicloud-webhost/unicloud_webhost.go +++ b/internal/pkg/core/deployer/providers/unicloud-webhost/unicloud_webhost.go @@ -52,7 +52,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/upyun-cdn/upyun_cdn.go b/internal/pkg/core/deployer/providers/upyun-cdn/upyun_cdn.go index 4c9987a3..2fbe52b8 100644 --- a/internal/pkg/core/deployer/providers/upyun-cdn/upyun_cdn.go +++ b/internal/pkg/core/deployer/providers/upyun-cdn/upyun_cdn.go @@ -60,7 +60,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/volcengine-alb/volcengine_alb.go b/internal/pkg/core/deployer/providers/volcengine-alb/volcengine_alb.go index b17ae729..e4d76ab1 100644 --- a/internal/pkg/core/deployer/providers/volcengine-alb/volcengine_alb.go +++ b/internal/pkg/core/deployer/providers/volcengine-alb/volcengine_alb.go @@ -74,7 +74,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/volcengine-cdn/volcengine_cdn.go b/internal/pkg/core/deployer/providers/volcengine-cdn/volcengine_cdn.go index e9b2c325..e67e8885 100644 --- a/internal/pkg/core/deployer/providers/volcengine-cdn/volcengine_cdn.go +++ b/internal/pkg/core/deployer/providers/volcengine-cdn/volcengine_cdn.go @@ -59,7 +59,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/volcengine-certcenter/volcengine_certcenter.go b/internal/pkg/core/deployer/providers/volcengine-certcenter/volcengine_certcenter.go index 3989a000..8bb40d5b 100644 --- a/internal/pkg/core/deployer/providers/volcengine-certcenter/volcengine_certcenter.go +++ b/internal/pkg/core/deployer/providers/volcengine-certcenter/volcengine_certcenter.go @@ -50,7 +50,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/volcengine-clb/volcengine_clb.go b/internal/pkg/core/deployer/providers/volcengine-clb/volcengine_clb.go index 3b6a37bf..bc2dc9e0 100644 --- a/internal/pkg/core/deployer/providers/volcengine-clb/volcengine_clb.go +++ b/internal/pkg/core/deployer/providers/volcengine-clb/volcengine_clb.go @@ -70,7 +70,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/volcengine-dcdn/volcengine_dcdn.go b/internal/pkg/core/deployer/providers/volcengine-dcdn/volcengine_dcdn.go index 707ccde3..82021205 100644 --- a/internal/pkg/core/deployer/providers/volcengine-dcdn/volcengine_dcdn.go +++ b/internal/pkg/core/deployer/providers/volcengine-dcdn/volcengine_dcdn.go @@ -64,7 +64,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/volcengine-imagex/volcengine_imagex.go b/internal/pkg/core/deployer/providers/volcengine-imagex/volcengine_imagex.go index 2f419752..a7c974b4 100644 --- a/internal/pkg/core/deployer/providers/volcengine-imagex/volcengine_imagex.go +++ b/internal/pkg/core/deployer/providers/volcengine-imagex/volcengine_imagex.go @@ -65,7 +65,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/volcengine-live/volcengine_live.go b/internal/pkg/core/deployer/providers/volcengine-live/volcengine_live.go index 46c0b9dc..3195d810 100644 --- a/internal/pkg/core/deployer/providers/volcengine-live/volcengine_live.go +++ b/internal/pkg/core/deployer/providers/volcengine-live/volcengine_live.go @@ -60,7 +60,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/volcengine-tos/volcengine_tos.go b/internal/pkg/core/deployer/providers/volcengine-tos/volcengine_tos.go index 365d95f2..674106e1 100644 --- a/internal/pkg/core/deployer/providers/volcengine-tos/volcengine_tos.go +++ b/internal/pkg/core/deployer/providers/volcengine-tos/volcengine_tos.go @@ -64,7 +64,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/wangsu-cdn/wangsu_cdn.go b/internal/pkg/core/deployer/providers/wangsu-cdn/wangsu_cdn.go index 43c65de2..f889b996 100644 --- a/internal/pkg/core/deployer/providers/wangsu-cdn/wangsu_cdn.go +++ b/internal/pkg/core/deployer/providers/wangsu-cdn/wangsu_cdn.go @@ -59,7 +59,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/wangsu-cdnpro/wangsu_cdnpro.go b/internal/pkg/core/deployer/providers/wangsu-cdnpro/wangsu_cdnpro.go index 4d5f2e10..0780f80d 100644 --- a/internal/pkg/core/deployer/providers/wangsu-cdnpro/wangsu_cdnpro.go +++ b/internal/pkg/core/deployer/providers/wangsu-cdnpro/wangsu_cdnpro.go @@ -68,7 +68,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/wangsu-certificate/wangsu_certificate.go b/internal/pkg/core/deployer/providers/wangsu-certificate/wangsu_certificate.go index 3f691489..51fa7076 100644 --- a/internal/pkg/core/deployer/providers/wangsu-certificate/wangsu_certificate.go +++ b/internal/pkg/core/deployer/providers/wangsu-certificate/wangsu_certificate.go @@ -61,7 +61,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/deployer/providers/webhook/webhook.go b/internal/pkg/core/deployer/providers/webhook/webhook.go index b25c129a..7ad6d6b0 100644 --- a/internal/pkg/core/deployer/providers/webhook/webhook.go +++ b/internal/pkg/core/deployer/providers/webhook/webhook.go @@ -61,7 +61,7 @@ func NewDeployer(config *DeployerConfig) (*DeployerProvider, error) { func (d *DeployerProvider) WithLogger(logger *slog.Logger) deployer.Deployer { if logger == nil { - d.logger = slog.Default() + d.logger = slog.New(slog.DiscardHandler) } else { d.logger = logger } diff --git a/internal/pkg/core/notifier/providers/bark/bark.go b/internal/pkg/core/notifier/providers/bark/bark.go index fb3298ec..f82fd180 100644 --- a/internal/pkg/core/notifier/providers/bark/bark.go +++ b/internal/pkg/core/notifier/providers/bark/bark.go @@ -42,7 +42,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/notifier/providers/dingtalkbot/dingtalkbot.go b/internal/pkg/core/notifier/providers/dingtalkbot/dingtalkbot.go index d6d8b096..d13380a6 100644 --- a/internal/pkg/core/notifier/providers/dingtalkbot/dingtalkbot.go +++ b/internal/pkg/core/notifier/providers/dingtalkbot/dingtalkbot.go @@ -38,7 +38,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/notifier/providers/discordbot/discordbot.go b/internal/pkg/core/notifier/providers/discordbot/discordbot.go index 20e7d304..e4b15aae 100644 --- a/internal/pkg/core/notifier/providers/discordbot/discordbot.go +++ b/internal/pkg/core/notifier/providers/discordbot/discordbot.go @@ -41,7 +41,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/notifier/providers/email/email.go b/internal/pkg/core/notifier/providers/email/email.go index 69d39012..b2802c7f 100644 --- a/internal/pkg/core/notifier/providers/email/email.go +++ b/internal/pkg/core/notifier/providers/email/email.go @@ -50,7 +50,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/notifier/providers/gotify/gotify.go b/internal/pkg/core/notifier/providers/gotify/gotify.go index aa7d36a0..0e96e9f7 100644 --- a/internal/pkg/core/notifier/providers/gotify/gotify.go +++ b/internal/pkg/core/notifier/providers/gotify/gotify.go @@ -44,7 +44,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/notifier/providers/larkbot/larkbot.go b/internal/pkg/core/notifier/providers/larkbot/larkbot.go index 7d3e8a55..01bfeb1c 100644 --- a/internal/pkg/core/notifier/providers/larkbot/larkbot.go +++ b/internal/pkg/core/notifier/providers/larkbot/larkbot.go @@ -35,7 +35,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/notifier/providers/mattermost/mattermost.go b/internal/pkg/core/notifier/providers/mattermost/mattermost.go index 70c6effe..b725b961 100644 --- a/internal/pkg/core/notifier/providers/mattermost/mattermost.go +++ b/internal/pkg/core/notifier/providers/mattermost/mattermost.go @@ -46,7 +46,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/notifier/providers/pushover/pushover.go b/internal/pkg/core/notifier/providers/pushover/pushover.go index 48238608..7367688b 100644 --- a/internal/pkg/core/notifier/providers/pushover/pushover.go +++ b/internal/pkg/core/notifier/providers/pushover/pushover.go @@ -41,7 +41,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/notifier/providers/pushplus/pushplus.go b/internal/pkg/core/notifier/providers/pushplus/pushplus.go index 025e1620..a2e3de0e 100644 --- a/internal/pkg/core/notifier/providers/pushplus/pushplus.go +++ b/internal/pkg/core/notifier/providers/pushplus/pushplus.go @@ -40,7 +40,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/notifier/providers/serverchan/serverchan.go b/internal/pkg/core/notifier/providers/serverchan/serverchan.go index 0eb9bc24..5ee42785 100644 --- a/internal/pkg/core/notifier/providers/serverchan/serverchan.go +++ b/internal/pkg/core/notifier/providers/serverchan/serverchan.go @@ -39,7 +39,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/notifier/providers/slackbot/slackbot.go b/internal/pkg/core/notifier/providers/slackbot/slackbot.go index a453f8f1..221235fc 100644 --- a/internal/pkg/core/notifier/providers/slackbot/slackbot.go +++ b/internal/pkg/core/notifier/providers/slackbot/slackbot.go @@ -41,7 +41,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/notifier/providers/telegrambot/telegrambot.go b/internal/pkg/core/notifier/providers/telegrambot/telegrambot.go index ef99c66b..31463a0c 100644 --- a/internal/pkg/core/notifier/providers/telegrambot/telegrambot.go +++ b/internal/pkg/core/notifier/providers/telegrambot/telegrambot.go @@ -41,7 +41,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/notifier/providers/webhook/webhook.go b/internal/pkg/core/notifier/providers/webhook/webhook.go index acc0caab..507cc812 100644 --- a/internal/pkg/core/notifier/providers/webhook/webhook.go +++ b/internal/pkg/core/notifier/providers/webhook/webhook.go @@ -60,7 +60,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/notifier/providers/wecombot/wecombot.go b/internal/pkg/core/notifier/providers/wecombot/wecombot.go index d6f86ef5..c6ad2daa 100644 --- a/internal/pkg/core/notifier/providers/wecombot/wecombot.go +++ b/internal/pkg/core/notifier/providers/wecombot/wecombot.go @@ -39,7 +39,7 @@ func NewNotifier(config *NotifierConfig) (*NotifierProvider, error) { func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { if logger == nil { - n.logger = slog.Default() + n.logger = slog.New(slog.DiscardHandler) } else { n.logger = logger } diff --git a/internal/pkg/core/uploader/providers/1panel-ssl/1panel_ssl.go b/internal/pkg/core/uploader/providers/1panel-ssl/1panel_ssl.go index ca3c7303..bc36e565 100644 --- a/internal/pkg/core/uploader/providers/1panel-ssl/1panel_ssl.go +++ b/internal/pkg/core/uploader/providers/1panel-ssl/1panel_ssl.go @@ -52,7 +52,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go b/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go index f5f490a3..ecf4c8cf 100644 --- a/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go +++ b/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go @@ -54,7 +54,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go b/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go index 933bc51e..b331df05 100644 --- a/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go +++ b/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go @@ -57,7 +57,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/aws-acm/aws_acm.go b/internal/pkg/core/uploader/providers/aws-acm/aws_acm.go index 05cc70e3..32b0a2e4 100644 --- a/internal/pkg/core/uploader/providers/aws-acm/aws_acm.go +++ b/internal/pkg/core/uploader/providers/aws-acm/aws_acm.go @@ -51,7 +51,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/azure-keyvault/azure_keyvault.go b/internal/pkg/core/uploader/providers/azure-keyvault/azure_keyvault.go index 5ac68d69..3d0ec5b5 100644 --- a/internal/pkg/core/uploader/providers/azure-keyvault/azure_keyvault.go +++ b/internal/pkg/core/uploader/providers/azure-keyvault/azure_keyvault.go @@ -58,7 +58,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/baiducloud-cert/baiducloud_cert.go b/internal/pkg/core/uploader/providers/baiducloud-cert/baiducloud_cert.go index 727aa03f..c7ae8304 100644 --- a/internal/pkg/core/uploader/providers/baiducloud-cert/baiducloud_cert.go +++ b/internal/pkg/core/uploader/providers/baiducloud-cert/baiducloud_cert.go @@ -46,7 +46,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/byteplus-cdn/byteplus_cdn.go b/internal/pkg/core/uploader/providers/byteplus-cdn/byteplus_cdn.go index 1235893c..e54b01c6 100644 --- a/internal/pkg/core/uploader/providers/byteplus-cdn/byteplus_cdn.go +++ b/internal/pkg/core/uploader/providers/byteplus-cdn/byteplus_cdn.go @@ -49,7 +49,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/dogecloud/dogecloud.go b/internal/pkg/core/uploader/providers/dogecloud/dogecloud.go index ca98fc90..aa76f621 100644 --- a/internal/pkg/core/uploader/providers/dogecloud/dogecloud.go +++ b/internal/pkg/core/uploader/providers/dogecloud/dogecloud.go @@ -44,7 +44,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/gcore-cdn/gcore_cdn.go b/internal/pkg/core/uploader/providers/gcore-cdn/gcore_cdn.go index 5987136e..276baff8 100644 --- a/internal/pkg/core/uploader/providers/gcore-cdn/gcore_cdn.go +++ b/internal/pkg/core/uploader/providers/gcore-cdn/gcore_cdn.go @@ -46,7 +46,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go b/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go index b205e97e..5858a9c0 100644 --- a/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go +++ b/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go @@ -59,7 +59,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go b/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go index 9f47442e..acba2b65 100644 --- a/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go +++ b/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go @@ -54,7 +54,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/huaweicloud-waf/huaweicloud_waf.go b/internal/pkg/core/uploader/providers/huaweicloud-waf/huaweicloud_waf.go index a1cbe1df..809ccddd 100644 --- a/internal/pkg/core/uploader/providers/huaweicloud-waf/huaweicloud_waf.go +++ b/internal/pkg/core/uploader/providers/huaweicloud-waf/huaweicloud_waf.go @@ -59,7 +59,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/jdcloud-ssl/jdcloud_ssl.go b/internal/pkg/core/uploader/providers/jdcloud-ssl/jdcloud_ssl.go index b26755a6..91ea632e 100644 --- a/internal/pkg/core/uploader/providers/jdcloud-ssl/jdcloud_ssl.go +++ b/internal/pkg/core/uploader/providers/jdcloud-ssl/jdcloud_ssl.go @@ -52,7 +52,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/qiniu-sslcert/qiniu_sslcert.go b/internal/pkg/core/uploader/providers/qiniu-sslcert/qiniu_sslcert.go index 8dc2fefe..07343371 100644 --- a/internal/pkg/core/uploader/providers/qiniu-sslcert/qiniu_sslcert.go +++ b/internal/pkg/core/uploader/providers/qiniu-sslcert/qiniu_sslcert.go @@ -48,7 +48,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/rainyun-sslcenter/rainyun_sslcenter.go b/internal/pkg/core/uploader/providers/rainyun-sslcenter/rainyun_sslcenter.go index cb493110..4ea70ba0 100644 --- a/internal/pkg/core/uploader/providers/rainyun-sslcenter/rainyun_sslcenter.go +++ b/internal/pkg/core/uploader/providers/rainyun-sslcenter/rainyun_sslcenter.go @@ -44,7 +44,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/tencentcloud-ssl/tencentcloud_ssl.go b/internal/pkg/core/uploader/providers/tencentcloud-ssl/tencentcloud_ssl.go index 59067de4..5a96a951 100644 --- a/internal/pkg/core/uploader/providers/tencentcloud-ssl/tencentcloud_ssl.go +++ b/internal/pkg/core/uploader/providers/tencentcloud-ssl/tencentcloud_ssl.go @@ -46,7 +46,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/ucloud-ussl/ucloud_ussl.go b/internal/pkg/core/uploader/providers/ucloud-ussl/ucloud_ussl.go index 90eb1683..90b40754 100644 --- a/internal/pkg/core/uploader/providers/ucloud-ussl/ucloud_ussl.go +++ b/internal/pkg/core/uploader/providers/ucloud-ussl/ucloud_ussl.go @@ -56,7 +56,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/upyun-ssl/upyun_ssl.go b/internal/pkg/core/uploader/providers/upyun-ssl/upyun_ssl.go index 7a8bd3a0..1669e56b 100644 --- a/internal/pkg/core/uploader/providers/upyun-ssl/upyun_ssl.go +++ b/internal/pkg/core/uploader/providers/upyun-ssl/upyun_ssl.go @@ -44,7 +44,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/volcengine-cdn/volcengine_cdn.go b/internal/pkg/core/uploader/providers/volcengine-cdn/volcengine_cdn.go index b529e84a..59fca8f9 100644 --- a/internal/pkg/core/uploader/providers/volcengine-cdn/volcengine_cdn.go +++ b/internal/pkg/core/uploader/providers/volcengine-cdn/volcengine_cdn.go @@ -50,7 +50,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/volcengine-certcenter/volcengine_certcenter.go b/internal/pkg/core/uploader/providers/volcengine-certcenter/volcengine_certcenter.go index 99511ebf..fd5ce670 100644 --- a/internal/pkg/core/uploader/providers/volcengine-certcenter/volcengine_certcenter.go +++ b/internal/pkg/core/uploader/providers/volcengine-certcenter/volcengine_certcenter.go @@ -49,7 +49,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/volcengine-live/volcengine_live.go b/internal/pkg/core/uploader/providers/volcengine-live/volcengine_live.go index de5ec27d..11948f04 100644 --- a/internal/pkg/core/uploader/providers/volcengine-live/volcengine_live.go +++ b/internal/pkg/core/uploader/providers/volcengine-live/volcengine_live.go @@ -47,7 +47,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } diff --git a/internal/pkg/core/uploader/providers/wangsu-certificate/wangsu_certificate.go b/internal/pkg/core/uploader/providers/wangsu-certificate/wangsu_certificate.go index b512be09..e401810a 100644 --- a/internal/pkg/core/uploader/providers/wangsu-certificate/wangsu_certificate.go +++ b/internal/pkg/core/uploader/providers/wangsu-certificate/wangsu_certificate.go @@ -50,7 +50,7 @@ func NewUploader(config *UploaderConfig) (*UploaderProvider, error) { func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { if logger == nil { - u.logger = slog.Default() + u.logger = slog.New(slog.DiscardHandler) } else { u.logger = logger } From f0af36b59eb8a6595a8c660f9af7ee00323aa014 Mon Sep 17 00:00:00 2001 From: Fu Diwei Date: Wed, 28 May 2025 22:43:18 +0800 Subject: [PATCH 8/8] refactor: clean code --- internal/pkg/core/deployer/deployer.go | 2 +- internal/pkg/core/notifier/notifier.go | 2 +- internal/pkg/core/notifier/providers/bark/bark.go | 2 +- .../notifier/providers/dingtalkbot/dingtalkbot.go | 2 +- .../notifier/providers/discordbot/discordbot.go | 2 +- .../pkg/core/notifier/providers/email/email.go | 8 ++++---- .../pkg/core/notifier/providers/gotify/gotify.go | 2 +- .../pkg/core/notifier/providers/larkbot/larkbot.go | 2 +- .../notifier/providers/mattermost/mattermost.go | 2 +- .../core/notifier/providers/pushover/pushover.go | 2 +- .../core/notifier/providers/pushplus/pushplus.go | 2 +- .../notifier/providers/serverchan/serverchan.go | 2 +- .../core/notifier/providers/slackbot/slackbot.go | 2 +- .../notifier/providers/telegrambot/telegrambot.go | 2 +- .../pkg/core/notifier/providers/webhook/webhook.go | 2 +- .../core/notifier/providers/wecombot/wecombot.go | 2 +- .../uploader/providers/1panel-ssl/1panel_ssl.go | 4 ++-- .../uploader/providers/aliyun-cas/aliyun_cas.go | 2 +- .../uploader/providers/aliyun-slb/aliyun_slb.go | 2 +- .../pkg/core/uploader/providers/aws-acm/aws_acm.go | 2 +- .../providers/azure-keyvault/azure_keyvault.go | 2 +- .../providers/baiducloud-cert/baiducloud_cert.go | 2 +- .../providers/byteplus-cdn/byteplus_cdn.go | 2 +- .../core/uploader/providers/dogecloud/dogecloud.go | 2 +- .../core/uploader/providers/gcore-cdn/gcore_cdn.go | 2 +- .../providers/huaweicloud-elb/huaweicloud_elb.go | 2 +- .../providers/huaweicloud-scm/huaweicloud_scm.go | 2 +- .../providers/huaweicloud-waf/huaweicloud_waf.go | 2 +- .../uploader/providers/jdcloud-ssl/jdcloud_ssl.go | 2 +- .../providers/qiniu-sslcert/qiniu_sslcert.go | 2 +- .../rainyun-sslcenter/rainyun_sslcenter.go | 4 ++-- .../providers/tencentcloud-ssl/tencentcloud_ssl.go | 2 +- .../uploader/providers/ucloud-ussl/ucloud_ussl.go | 4 ++-- .../core/uploader/providers/upyun-ssl/upyun_ssl.go | 2 +- .../providers/volcengine-cdn/volcengine_cdn.go | 2 +- .../volcengine-certcenter/volcengine_certcenter.go | 2 +- .../providers/volcengine-live/volcengine_live.go | 2 +- .../wangsu-certificate/wangsu_certificate.go | 2 +- internal/pkg/core/uploader/uploader.go | 2 +- internal/pkg/sdk3rd/qiniu/auth.go | 4 ++-- internal/pkg/utils/cert/converter.go | 10 +++++----- internal/pkg/utils/cert/extractor.go | 6 +++--- internal/pkg/utils/cert/parser.go | 14 +++++++------- 43 files changed, 62 insertions(+), 62 deletions(-) diff --git a/internal/pkg/core/deployer/deployer.go b/internal/pkg/core/deployer/deployer.go index 67ce7ef7..85a4e156 100644 --- a/internal/pkg/core/deployer/deployer.go +++ b/internal/pkg/core/deployer/deployer.go @@ -20,7 +20,7 @@ type Deployer interface { // 出参: // - res:部署结果。 // - err: 错误。 - Deploy(ctx context.Context, certPEM string, privkeyPEM string) (res *DeployResult, err error) + Deploy(ctx context.Context, certPEM string, privkeyPEM string) (_res *DeployResult, _err error) } // 表示证书部署结果的数据结构。 diff --git a/internal/pkg/core/notifier/notifier.go b/internal/pkg/core/notifier/notifier.go index 876b5d48..f04084aa 100644 --- a/internal/pkg/core/notifier/notifier.go +++ b/internal/pkg/core/notifier/notifier.go @@ -19,7 +19,7 @@ type Notifier interface { // 出参: // - res:发送结果。 // - err: 错误。 - Notify(ctx context.Context, subject string, message string) (res *NotifyResult, err error) + Notify(ctx context.Context, subject string, message string) (_res *NotifyResult, _err error) } // 表示通知发送结果的数据结构。 diff --git a/internal/pkg/core/notifier/providers/bark/bark.go b/internal/pkg/core/notifier/providers/bark/bark.go index f82fd180..805a72b0 100644 --- a/internal/pkg/core/notifier/providers/bark/bark.go +++ b/internal/pkg/core/notifier/providers/bark/bark.go @@ -49,7 +49,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { const defaultServerURL = "https://api.day.app/" serverUrl := defaultServerURL if n.config.ServerUrl != "" { diff --git a/internal/pkg/core/notifier/providers/dingtalkbot/dingtalkbot.go b/internal/pkg/core/notifier/providers/dingtalkbot/dingtalkbot.go index d13380a6..81358ef4 100644 --- a/internal/pkg/core/notifier/providers/dingtalkbot/dingtalkbot.go +++ b/internal/pkg/core/notifier/providers/dingtalkbot/dingtalkbot.go @@ -45,7 +45,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { webhookUrl, err := url.Parse(n.config.WebhookUrl) if err != nil { return nil, fmt.Errorf("dingtalk api error: invalid webhook url: %w", err) diff --git a/internal/pkg/core/notifier/providers/discordbot/discordbot.go b/internal/pkg/core/notifier/providers/discordbot/discordbot.go index e4b15aae..704e7c79 100644 --- a/internal/pkg/core/notifier/providers/discordbot/discordbot.go +++ b/internal/pkg/core/notifier/providers/discordbot/discordbot.go @@ -48,7 +48,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { // REF: https://discord.com/developers/docs/resources/message#create-message req := n.httpClient.R(). SetContext(ctx). diff --git a/internal/pkg/core/notifier/providers/email/email.go b/internal/pkg/core/notifier/providers/email/email.go index b2802c7f..c8405554 100644 --- a/internal/pkg/core/notifier/providers/email/email.go +++ b/internal/pkg/core/notifier/providers/email/email.go @@ -57,7 +57,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { var smtpAuth smtp.Auth if n.config.Username != "" || n.config.Password != "" { smtpAuth = smtp.PlainAuth("", n.config.Username, n.config.Password, n.config.SmtpHost) @@ -76,10 +76,11 @@ func (n *NotifierProvider) Notify(ctx context.Context, subject string, message s var yak *mailyak.MailYak if n.config.SmtpTls { - yak, err = mailyak.NewWithTLS(smtpAddr, smtpAuth, newTlsConfig()) + yakWithTls, err := mailyak.NewWithTLS(smtpAddr, smtpAuth, newTlsConfig()) if err != nil { return nil, err } + yak = yakWithTls } else { yak = mailyak.New(smtpAddr, smtpAuth) } @@ -89,8 +90,7 @@ func (n *NotifierProvider) Notify(ctx context.Context, subject string, message s yak.Subject(subject) yak.Plain().Set(message) - err = yak.Send() - if err != nil { + if err := yak.Send(); err != nil { return nil, err } diff --git a/internal/pkg/core/notifier/providers/gotify/gotify.go b/internal/pkg/core/notifier/providers/gotify/gotify.go index 0e96e9f7..75d8737b 100644 --- a/internal/pkg/core/notifier/providers/gotify/gotify.go +++ b/internal/pkg/core/notifier/providers/gotify/gotify.go @@ -51,7 +51,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { serverUrl := strings.TrimRight(n.config.ServerUrl, "/") // REF: https://gotify.net/api-docs#/message/createMessage diff --git a/internal/pkg/core/notifier/providers/larkbot/larkbot.go b/internal/pkg/core/notifier/providers/larkbot/larkbot.go index 01bfeb1c..8c5022c0 100644 --- a/internal/pkg/core/notifier/providers/larkbot/larkbot.go +++ b/internal/pkg/core/notifier/providers/larkbot/larkbot.go @@ -42,7 +42,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { bot := lark.NewNotificationBot(n.config.WebhookUrl) content := lark.NewPostBuilder(). Title(subject). diff --git a/internal/pkg/core/notifier/providers/mattermost/mattermost.go b/internal/pkg/core/notifier/providers/mattermost/mattermost.go index b725b961..de72d192 100644 --- a/internal/pkg/core/notifier/providers/mattermost/mattermost.go +++ b/internal/pkg/core/notifier/providers/mattermost/mattermost.go @@ -53,7 +53,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { serverUrl := strings.TrimRight(n.config.ServerUrl, "/") // REF: https://developers.mattermost.com/api-documentation/#/operations/Login diff --git a/internal/pkg/core/notifier/providers/pushover/pushover.go b/internal/pkg/core/notifier/providers/pushover/pushover.go index 7367688b..aedf8d3a 100644 --- a/internal/pkg/core/notifier/providers/pushover/pushover.go +++ b/internal/pkg/core/notifier/providers/pushover/pushover.go @@ -48,7 +48,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { // REF: https://pushover.net/api req := n.httpClient.R(). SetContext(ctx). diff --git a/internal/pkg/core/notifier/providers/pushplus/pushplus.go b/internal/pkg/core/notifier/providers/pushplus/pushplus.go index a2e3de0e..9f565ce5 100644 --- a/internal/pkg/core/notifier/providers/pushplus/pushplus.go +++ b/internal/pkg/core/notifier/providers/pushplus/pushplus.go @@ -47,7 +47,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { // REF: https://pushplus.plus/doc/guide/api.html#%E4%B8%80%E3%80%81%E5%8F%91%E9%80%81%E6%B6%88%E6%81%AF%E6%8E%A5%E5%8F%A3 req := n.httpClient.R(). SetContext(ctx). diff --git a/internal/pkg/core/notifier/providers/serverchan/serverchan.go b/internal/pkg/core/notifier/providers/serverchan/serverchan.go index 5ee42785..ea6adf2b 100644 --- a/internal/pkg/core/notifier/providers/serverchan/serverchan.go +++ b/internal/pkg/core/notifier/providers/serverchan/serverchan.go @@ -46,7 +46,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { // REF: https://sct.ftqq.com/ req := n.httpClient.R(). SetContext(ctx). diff --git a/internal/pkg/core/notifier/providers/slackbot/slackbot.go b/internal/pkg/core/notifier/providers/slackbot/slackbot.go index 221235fc..92db106c 100644 --- a/internal/pkg/core/notifier/providers/slackbot/slackbot.go +++ b/internal/pkg/core/notifier/providers/slackbot/slackbot.go @@ -48,7 +48,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { // REF: https://docs.slack.dev/messaging/sending-and-scheduling-messages#publishing req := n.httpClient.R(). SetContext(ctx). diff --git a/internal/pkg/core/notifier/providers/telegrambot/telegrambot.go b/internal/pkg/core/notifier/providers/telegrambot/telegrambot.go index 31463a0c..80d03a21 100644 --- a/internal/pkg/core/notifier/providers/telegrambot/telegrambot.go +++ b/internal/pkg/core/notifier/providers/telegrambot/telegrambot.go @@ -48,7 +48,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { // REF: https://core.telegram.org/bots/api#sendmessage req := n.httpClient.R(). SetContext(ctx). diff --git a/internal/pkg/core/notifier/providers/webhook/webhook.go b/internal/pkg/core/notifier/providers/webhook/webhook.go index 507cc812..523f7b4d 100644 --- a/internal/pkg/core/notifier/providers/webhook/webhook.go +++ b/internal/pkg/core/notifier/providers/webhook/webhook.go @@ -67,7 +67,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { // 处理 Webhook URL webhookUrl, err := url.Parse(n.config.WebhookUrl) if err != nil { diff --git a/internal/pkg/core/notifier/providers/wecombot/wecombot.go b/internal/pkg/core/notifier/providers/wecombot/wecombot.go index c6ad2daa..93b03c4d 100644 --- a/internal/pkg/core/notifier/providers/wecombot/wecombot.go +++ b/internal/pkg/core/notifier/providers/wecombot/wecombot.go @@ -46,7 +46,7 @@ func (n *NotifierProvider) WithLogger(logger *slog.Logger) notifier.Notifier { return n } -func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (res *notifier.NotifyResult, err error) { +func (n *NotifierProvider) Notify(ctx context.Context, subject string, message string) (*notifier.NotifyResult, error) { // REF: https://developer.work.weixin.qq.com/document/path/91770 req := n.httpClient.R(). SetContext(ctx). diff --git a/internal/pkg/core/uploader/providers/1panel-ssl/1panel_ssl.go b/internal/pkg/core/uploader/providers/1panel-ssl/1panel_ssl.go index bc36e565..7391129d 100644 --- a/internal/pkg/core/uploader/providers/1panel-ssl/1panel_ssl.go +++ b/internal/pkg/core/uploader/providers/1panel-ssl/1panel_ssl.go @@ -59,7 +59,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 遍历证书列表,避免重复上传 if res, err := u.getCertIfExists(ctx, certPEM, privkeyPEM); err != nil { return nil, err @@ -94,7 +94,7 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE } } -func (u *UploaderProvider) getCertIfExists(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) getCertIfExists(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { searchWebsiteSSLPageNumber := int32(1) searchWebsiteSSLPageSize := int32(100) for { diff --git a/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go b/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go index ecf4c8cf..ea0968eb 100644 --- a/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go +++ b/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go @@ -61,7 +61,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go b/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go index b331df05..dac9c7bd 100644 --- a/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go +++ b/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go @@ -64,7 +64,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/aws-acm/aws_acm.go b/internal/pkg/core/uploader/providers/aws-acm/aws_acm.go index 32b0a2e4..f68ebadc 100644 --- a/internal/pkg/core/uploader/providers/aws-acm/aws_acm.go +++ b/internal/pkg/core/uploader/providers/aws-acm/aws_acm.go @@ -58,7 +58,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/azure-keyvault/azure_keyvault.go b/internal/pkg/core/uploader/providers/azure-keyvault/azure_keyvault.go index 3d0ec5b5..eb67fd2f 100644 --- a/internal/pkg/core/uploader/providers/azure-keyvault/azure_keyvault.go +++ b/internal/pkg/core/uploader/providers/azure-keyvault/azure_keyvault.go @@ -65,7 +65,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/baiducloud-cert/baiducloud_cert.go b/internal/pkg/core/uploader/providers/baiducloud-cert/baiducloud_cert.go index c7ae8304..b0fca821 100644 --- a/internal/pkg/core/uploader/providers/baiducloud-cert/baiducloud_cert.go +++ b/internal/pkg/core/uploader/providers/baiducloud-cert/baiducloud_cert.go @@ -53,7 +53,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/byteplus-cdn/byteplus_cdn.go b/internal/pkg/core/uploader/providers/byteplus-cdn/byteplus_cdn.go index e54b01c6..a654db31 100644 --- a/internal/pkg/core/uploader/providers/byteplus-cdn/byteplus_cdn.go +++ b/internal/pkg/core/uploader/providers/byteplus-cdn/byteplus_cdn.go @@ -56,7 +56,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/dogecloud/dogecloud.go b/internal/pkg/core/uploader/providers/dogecloud/dogecloud.go index aa76f621..1b0b963f 100644 --- a/internal/pkg/core/uploader/providers/dogecloud/dogecloud.go +++ b/internal/pkg/core/uploader/providers/dogecloud/dogecloud.go @@ -51,7 +51,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 生成新证书名(需符合多吉云命名规则) var certId, certName string certName = fmt.Sprintf("certimate-%d", time.Now().UnixMilli()) diff --git a/internal/pkg/core/uploader/providers/gcore-cdn/gcore_cdn.go b/internal/pkg/core/uploader/providers/gcore-cdn/gcore_cdn.go index 276baff8..f3127602 100644 --- a/internal/pkg/core/uploader/providers/gcore-cdn/gcore_cdn.go +++ b/internal/pkg/core/uploader/providers/gcore-cdn/gcore_cdn.go @@ -53,7 +53,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 生成新证书名(需符合 Gcore 命名规则) var certId, certName string certName = fmt.Sprintf("certimate_%d", time.Now().UnixMilli()) diff --git a/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go b/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go index 5858a9c0..d429c259 100644 --- a/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go +++ b/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go @@ -66,7 +66,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go b/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go index acba2b65..4e35562e 100644 --- a/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go +++ b/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go @@ -61,7 +61,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/huaweicloud-waf/huaweicloud_waf.go b/internal/pkg/core/uploader/providers/huaweicloud-waf/huaweicloud_waf.go index 809ccddd..789876ba 100644 --- a/internal/pkg/core/uploader/providers/huaweicloud-waf/huaweicloud_waf.go +++ b/internal/pkg/core/uploader/providers/huaweicloud-waf/huaweicloud_waf.go @@ -66,7 +66,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/jdcloud-ssl/jdcloud_ssl.go b/internal/pkg/core/uploader/providers/jdcloud-ssl/jdcloud_ssl.go index 91ea632e..44ed7f29 100644 --- a/internal/pkg/core/uploader/providers/jdcloud-ssl/jdcloud_ssl.go +++ b/internal/pkg/core/uploader/providers/jdcloud-ssl/jdcloud_ssl.go @@ -59,7 +59,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/qiniu-sslcert/qiniu_sslcert.go b/internal/pkg/core/uploader/providers/qiniu-sslcert/qiniu_sslcert.go index 07343371..99a1a0b5 100644 --- a/internal/pkg/core/uploader/providers/qiniu-sslcert/qiniu_sslcert.go +++ b/internal/pkg/core/uploader/providers/qiniu-sslcert/qiniu_sslcert.go @@ -55,7 +55,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/rainyun-sslcenter/rainyun_sslcenter.go b/internal/pkg/core/uploader/providers/rainyun-sslcenter/rainyun_sslcenter.go index 4ea70ba0..613fc7a9 100644 --- a/internal/pkg/core/uploader/providers/rainyun-sslcenter/rainyun_sslcenter.go +++ b/internal/pkg/core/uploader/providers/rainyun-sslcenter/rainyun_sslcenter.go @@ -51,7 +51,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { if res, err := u.getCertIfExists(ctx, certPEM); err != nil { return nil, err } else if res != nil { @@ -80,7 +80,7 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE } } -func (u *UploaderProvider) getCertIfExists(ctx context.Context, certPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) getCertIfExists(ctx context.Context, certPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/tencentcloud-ssl/tencentcloud_ssl.go b/internal/pkg/core/uploader/providers/tencentcloud-ssl/tencentcloud_ssl.go index 5a96a951..db4e92f4 100644 --- a/internal/pkg/core/uploader/providers/tencentcloud-ssl/tencentcloud_ssl.go +++ b/internal/pkg/core/uploader/providers/tencentcloud-ssl/tencentcloud_ssl.go @@ -53,7 +53,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 上传新证书 // REF: https://cloud.tencent.com/document/product/400/41665 uploadCertificateReq := tcssl.NewUploadCertificateRequest() diff --git a/internal/pkg/core/uploader/providers/ucloud-ussl/ucloud_ussl.go b/internal/pkg/core/uploader/providers/ucloud-ussl/ucloud_ussl.go index 90b40754..acfbb214 100644 --- a/internal/pkg/core/uploader/providers/ucloud-ussl/ucloud_ussl.go +++ b/internal/pkg/core/uploader/providers/ucloud-ussl/ucloud_ussl.go @@ -63,7 +63,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 生成新证书名(需符合优刻得命名规则) var certId, certName string certName = fmt.Sprintf("certimate-%d", time.Now().UnixMilli()) @@ -111,7 +111,7 @@ func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPE }, nil } -func (u *UploaderProvider) getCertIfExists(ctx context.Context, certPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) getCertIfExists(ctx context.Context, certPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/upyun-ssl/upyun_ssl.go b/internal/pkg/core/uploader/providers/upyun-ssl/upyun_ssl.go index 1669e56b..6b45e130 100644 --- a/internal/pkg/core/uploader/providers/upyun-ssl/upyun_ssl.go +++ b/internal/pkg/core/uploader/providers/upyun-ssl/upyun_ssl.go @@ -51,7 +51,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 上传证书 uploadHttpsCertificateReq := &upyunsdk.UploadHttpsCertificateRequest{ Certificate: certPEM, diff --git a/internal/pkg/core/uploader/providers/volcengine-cdn/volcengine_cdn.go b/internal/pkg/core/uploader/providers/volcengine-cdn/volcengine_cdn.go index 59fca8f9..00ac07ae 100644 --- a/internal/pkg/core/uploader/providers/volcengine-cdn/volcengine_cdn.go +++ b/internal/pkg/core/uploader/providers/volcengine-cdn/volcengine_cdn.go @@ -57,7 +57,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/volcengine-certcenter/volcengine_certcenter.go b/internal/pkg/core/uploader/providers/volcengine-certcenter/volcengine_certcenter.go index fd5ce670..9accc17d 100644 --- a/internal/pkg/core/uploader/providers/volcengine-certcenter/volcengine_certcenter.go +++ b/internal/pkg/core/uploader/providers/volcengine-certcenter/volcengine_certcenter.go @@ -56,7 +56,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 上传证书 // REF: https://www.volcengine.com/docs/6638/1365580 importCertificateReq := &veccsdk.ImportCertificateInput{ diff --git a/internal/pkg/core/uploader/providers/volcengine-live/volcengine_live.go b/internal/pkg/core/uploader/providers/volcengine-live/volcengine_live.go index 11948f04..d758fbb4 100644 --- a/internal/pkg/core/uploader/providers/volcengine-live/volcengine_live.go +++ b/internal/pkg/core/uploader/providers/volcengine-live/volcengine_live.go @@ -54,7 +54,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/providers/wangsu-certificate/wangsu_certificate.go b/internal/pkg/core/uploader/providers/wangsu-certificate/wangsu_certificate.go index e401810a..59eb4ca2 100644 --- a/internal/pkg/core/uploader/providers/wangsu-certificate/wangsu_certificate.go +++ b/internal/pkg/core/uploader/providers/wangsu-certificate/wangsu_certificate.go @@ -57,7 +57,7 @@ func (u *UploaderProvider) WithLogger(logger *slog.Logger) uploader.Uploader { return u } -func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *uploader.UploadResult, err error) { +func (u *UploaderProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*uploader.UploadResult, error) { // 解析证书内容 certX509, err := certutil.ParseCertificateFromPEM(certPEM) if err != nil { diff --git a/internal/pkg/core/uploader/uploader.go b/internal/pkg/core/uploader/uploader.go index 34d2813a..0a1681a7 100644 --- a/internal/pkg/core/uploader/uploader.go +++ b/internal/pkg/core/uploader/uploader.go @@ -21,7 +21,7 @@ type Uploader interface { // 出参: // - res:上传结果。 // - err: 错误。 - Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *UploadResult, err error) + Upload(ctx context.Context, certPEM string, privkeyPEM string) (_res *UploadResult, _err error) } // 表示证书上传结果的数据结构,包含上传后的证书 ID、名称和其他数据。 diff --git a/internal/pkg/sdk3rd/qiniu/auth.go b/internal/pkg/sdk3rd/qiniu/auth.go index 7f053f56..6df13752 100644 --- a/internal/pkg/sdk3rd/qiniu/auth.go +++ b/internal/pkg/sdk3rd/qiniu/auth.go @@ -18,10 +18,10 @@ func newTransport(mac *auth.Credentials, tr http.RoundTripper) *transport { return &transport{tr, mac} } -func (t *transport) RoundTrip(req *http.Request) (resp *http.Response, err error) { +func (t *transport) RoundTrip(req *http.Request) (*http.Response, error) { token, err := t.mac.SignRequestV2(req) if err != nil { - return + return nil, err } req.Header.Set("Authorization", "Qiniu "+token) diff --git a/internal/pkg/utils/cert/converter.go b/internal/pkg/utils/cert/converter.go index b726e86d..0d7e4c53 100644 --- a/internal/pkg/utils/cert/converter.go +++ b/internal/pkg/utils/cert/converter.go @@ -16,7 +16,7 @@ import ( // 出参: // - certPEM: 证书 PEM 内容。 // - err: 错误。 -func ConvertCertificateToPEM(cert *x509.Certificate) (certPEM string, err error) { +func ConvertCertificateToPEM(cert *x509.Certificate) (_certPEM string, _err error) { if cert == nil { return "", errors.New("`cert` is nil") } @@ -37,14 +37,14 @@ func ConvertCertificateToPEM(cert *x509.Certificate) (certPEM string, err error) // 出参: // - privkeyPEM: 私钥 PEM 内容。 // - err: 错误。 -func ConvertECPrivateKeyToPEM(privkey *ecdsa.PrivateKey) (privkeyPEM string, err error) { +func ConvertECPrivateKeyToPEM(privkey *ecdsa.PrivateKey) (_privkeyPEM string, _err error) { if privkey == nil { return "", errors.New("`privkey` is nil") } - data, err := x509.MarshalECPrivateKey(privkey) - if err != nil { - return "", fmt.Errorf("failed to marshal EC private key: %w", err) + data, _err := x509.MarshalECPrivateKey(privkey) + if _err != nil { + return "", fmt.Errorf("failed to marshal EC private key: %w", _err) } block := &pem.Block{ diff --git a/internal/pkg/utils/cert/extractor.go b/internal/pkg/utils/cert/extractor.go index 94d0a8da..a4077d37 100644 --- a/internal/pkg/utils/cert/extractor.go +++ b/internal/pkg/utils/cert/extractor.go @@ -14,7 +14,7 @@ import ( // - serverCertPEM: 服务器证书的 PEM 内容。 // - intermediaCertPEM: 中间证书的 PEM 内容。 // - err: 错误。 -func ExtractCertificatesFromPEM(certPEM string) (serverCertPEM string, intermediaCertPEM string, err error) { +func ExtractCertificatesFromPEM(certPEM string) (_serverCertPEM string, _intermediaCertPEM string, _err error) { pemBlocks := make([]*pem.Block, 0) pemData := []byte(certPEM) for { @@ -27,8 +27,8 @@ func ExtractCertificatesFromPEM(certPEM string) (serverCertPEM string, intermedi pemData = rest } - serverCertPEM = "" - intermediaCertPEM = "" + serverCertPEM := "" + intermediaCertPEM := "" if len(pemBlocks) == 0 { return "", "", errors.New("failed to decode PEM block") diff --git a/internal/pkg/utils/cert/parser.go b/internal/pkg/utils/cert/parser.go index eb743f78..3ecb8639 100644 --- a/internal/pkg/utils/cert/parser.go +++ b/internal/pkg/utils/cert/parser.go @@ -21,7 +21,7 @@ import ( // 出参: // - cert: x509.Certificate 对象。 // - err: 错误。 -func ParseCertificateFromPEM(certPEM string) (cert *x509.Certificate, err error) { +func ParseCertificateFromPEM(certPEM string) (_cert *x509.Certificate, _err error) { pemData := []byte(certPEM) block, _ := pem.Decode(pemData) @@ -29,7 +29,7 @@ func ParseCertificateFromPEM(certPEM string) (cert *x509.Certificate, err error) return nil, errors.New("failed to decode PEM block") } - cert, err = x509.ParseCertificate(block.Bytes) + cert, err := x509.ParseCertificate(block.Bytes) if err != nil { return nil, fmt.Errorf("failed to parse certificate: %w", err) } @@ -45,7 +45,7 @@ func ParseCertificateFromPEM(certPEM string) (cert *x509.Certificate, err error) // 出参: // - privkey: crypto.PrivateKey 对象,可能是 rsa.PrivateKey、ecdsa.PrivateKey 或 ed25519.PrivateKey。 // - err: 错误。 -func ParsePrivateKeyFromPEM(privkeyPEM string) (privkey crypto.PrivateKey, err error) { +func ParsePrivateKeyFromPEM(privkeyPEM string) (_privkey crypto.PrivateKey, _err error) { pemData := []byte(privkeyPEM) return certcrypto.ParsePEMPrivateKey(pemData) } @@ -58,7 +58,7 @@ func ParsePrivateKeyFromPEM(privkeyPEM string) (privkey crypto.PrivateKey, err e // 出参: // - privkey: ecdsa.PrivateKey 对象。 // - err: 错误。 -func ParseECPrivateKeyFromPEM(privkeyPEM string) (privkey *ecdsa.PrivateKey, err error) { +func ParseECPrivateKeyFromPEM(privkeyPEM string) (_privkey *ecdsa.PrivateKey, _err error) { pemData := []byte(privkeyPEM) block, _ := pem.Decode(pemData) @@ -66,7 +66,7 @@ func ParseECPrivateKeyFromPEM(privkeyPEM string) (privkey *ecdsa.PrivateKey, err return nil, errors.New("failed to decode PEM block") } - privkey, err = x509.ParseECPrivateKey(block.Bytes) + privkey, err := x509.ParseECPrivateKey(block.Bytes) if err != nil { return nil, fmt.Errorf("failed to parse private key: %w", err) } @@ -82,7 +82,7 @@ func ParseECPrivateKeyFromPEM(privkeyPEM string) (privkey *ecdsa.PrivateKey, err // 出参: // - privkey: rsa.PrivateKey 对象。 // - err: 错误。 -func ParsePKCS1PrivateKeyFromPEM(privkeyPEM string) (privkey *rsa.PrivateKey, err error) { +func ParsePKCS1PrivateKeyFromPEM(privkeyPEM string) (_privkey *rsa.PrivateKey, _err error) { pemData := []byte(privkeyPEM) block, _ := pem.Decode(pemData) @@ -90,7 +90,7 @@ func ParsePKCS1PrivateKeyFromPEM(privkeyPEM string) (privkey *rsa.PrivateKey, er return nil, errors.New("failed to decode PEM block") } - privkey, err = x509.ParsePKCS1PrivateKey(block.Bytes) + privkey, err := x509.ParsePKCS1PrivateKey(block.Bytes) if err != nil { return nil, fmt.Errorf("failed to parse private key: %w", err) }