diff --git a/internal/deployer/aliyun_alb.go b/internal/deployer/aliyun_alb.go index cd6bddb9..e4e131bf 100644 --- a/internal/deployer/aliyun_alb.go +++ b/internal/deployer/aliyun_alb.go @@ -13,6 +13,7 @@ import ( "github.com/usual2970/certimate/internal/domain" "github.com/usual2970/certimate/internal/pkg/core/uploader" + uploaderAliyunCas "github.com/usual2970/certimate/internal/pkg/core/uploader/providers/aliyun-cas" ) type AliyunALBDeployer struct { @@ -38,7 +39,7 @@ func NewAliyunALBDeployer(option *DeployerOption) (Deployer, error) { return nil, xerrors.Wrap(err, "failed to create sdk client") } - uploader, err := uploader.NewAliyunCASUploader(&uploader.AliyunCASUploaderConfig{ + uploader, err := uploaderAliyunCas.New(&uploaderAliyunCas.AliyunCASUploaderConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, Region: option.DeployConfig.GetConfigAsString("region"), diff --git a/internal/deployer/aliyun_clb.go b/internal/deployer/aliyun_clb.go index 9669001b..3796a1ba 100644 --- a/internal/deployer/aliyun_clb.go +++ b/internal/deployer/aliyun_clb.go @@ -13,6 +13,7 @@ import ( "github.com/usual2970/certimate/internal/domain" "github.com/usual2970/certimate/internal/pkg/core/uploader" + uploaderAliyunSlb "github.com/usual2970/certimate/internal/pkg/core/uploader/providers/aliyun-slb" ) type AliyunCLBDeployer struct { @@ -38,7 +39,7 @@ func NewAliyunCLBDeployer(option *DeployerOption) (Deployer, error) { return nil, xerrors.Wrap(err, "failed to create sdk client") } - uploader, err := uploader.NewAliyunSLBUploader(&uploader.AliyunSLBUploaderConfig{ + uploader, err := uploaderAliyunSlb.New(&uploaderAliyunSlb.AliyunSLBUploaderConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, Region: option.DeployConfig.GetConfigAsString("region"), diff --git a/internal/deployer/aliyun_nlb.go b/internal/deployer/aliyun_nlb.go index 1e771744..56b06d39 100644 --- a/internal/deployer/aliyun_nlb.go +++ b/internal/deployer/aliyun_nlb.go @@ -13,6 +13,7 @@ import ( "github.com/usual2970/certimate/internal/domain" "github.com/usual2970/certimate/internal/pkg/core/uploader" + uploaderAliyunCas "github.com/usual2970/certimate/internal/pkg/core/uploader/providers/aliyun-cas" ) type AliyunNLBDeployer struct { @@ -38,7 +39,7 @@ func NewAliyunNLBDeployer(option *DeployerOption) (Deployer, error) { return nil, xerrors.Wrap(err, "failed to create sdk client") } - uploader, err := uploader.NewAliyunCASUploader(&uploader.AliyunCASUploaderConfig{ + uploader, err := uploaderAliyunCas.New(&uploaderAliyunCas.AliyunCASUploaderConfig{ AccessKeyId: access.AccessKeyId, AccessKeySecret: access.AccessKeySecret, Region: option.DeployConfig.GetConfigAsString("region"), diff --git a/internal/deployer/huaweicloud_cdn.go b/internal/deployer/huaweicloud_cdn.go index 3406b65a..d3d4014f 100644 --- a/internal/deployer/huaweicloud_cdn.go +++ b/internal/deployer/huaweicloud_cdn.go @@ -13,6 +13,7 @@ import ( "github.com/usual2970/certimate/internal/domain" "github.com/usual2970/certimate/internal/pkg/core/uploader" + uploaderHcScm "github.com/usual2970/certimate/internal/pkg/core/uploader/providers/huaweicloud-scm" "github.com/usual2970/certimate/internal/pkg/utils/cast" hcCdnEx "github.com/usual2970/certimate/internal/pkg/vendors/huaweicloud-cdn-sdk" ) @@ -40,7 +41,7 @@ func NewHuaweiCloudCDNDeployer(option *DeployerOption) (Deployer, error) { return nil, xerrors.Wrap(err, "failed to create sdk client") } - uploader, err := uploader.NewHuaweiCloudSCMUploader(&uploader.HuaweiCloudSCMUploaderConfig{ + uploader, err := uploaderHcScm.New(&uploaderHcScm.HuaweiCloudSCMUploaderConfig{ AccessKeyId: access.AccessKeyId, SecretAccessKey: access.SecretAccessKey, Region: "", diff --git a/internal/deployer/huaweicloud_elb.go b/internal/deployer/huaweicloud_elb.go index e813610f..b7658660 100644 --- a/internal/deployer/huaweicloud_elb.go +++ b/internal/deployer/huaweicloud_elb.go @@ -20,6 +20,7 @@ import ( "github.com/usual2970/certimate/internal/domain" "github.com/usual2970/certimate/internal/pkg/core/uploader" + uploaderHcElb "github.com/usual2970/certimate/internal/pkg/core/uploader/providers/huaweicloud-elb" "github.com/usual2970/certimate/internal/pkg/utils/cast" ) @@ -46,7 +47,7 @@ func NewHuaweiCloudELBDeployer(option *DeployerOption) (Deployer, error) { return nil, xerrors.Wrap(err, "failed to create sdk client") } - uploader, err := uploader.NewHuaweiCloudELBUploader(&uploader.HuaweiCloudELBUploaderConfig{ + uploader, err := uploaderHcElb.New(&uploaderHcElb.HuaweiCloudELBUploaderConfig{ AccessKeyId: access.AccessKeyId, SecretAccessKey: access.SecretAccessKey, Region: option.DeployConfig.GetConfigAsString("region"), diff --git a/internal/deployer/qiniu_cdn.go b/internal/deployer/qiniu_cdn.go index d782a3e0..a88bcf21 100644 --- a/internal/deployer/qiniu_cdn.go +++ b/internal/deployer/qiniu_cdn.go @@ -10,6 +10,7 @@ import ( "github.com/usual2970/certimate/internal/domain" "github.com/usual2970/certimate/internal/pkg/core/uploader" + uploaderQiniu "github.com/usual2970/certimate/internal/pkg/core/uploader/providers/qiniu-sslcert" qiniuEx "github.com/usual2970/certimate/internal/pkg/vendors/qiniu-sdk" ) @@ -35,7 +36,7 @@ func NewQiniuCDNDeployer(option *DeployerOption) (Deployer, error) { return nil, xerrors.Wrap(err, "failed to create sdk client") } - uploader, err := uploader.NewQiniuSSLCertUploader(&uploader.QiniuSSLCertUploaderConfig{ + uploader, err := uploaderQiniu.New(&uploaderQiniu.QiniuSSLCertUploaderConfig{ AccessKey: access.AccessKey, SecretKey: access.SecretKey, }) diff --git a/internal/deployer/tencent_cdn.go b/internal/deployer/tencent_cdn.go index a1912c74..a0a44b6a 100644 --- a/internal/deployer/tencent_cdn.go +++ b/internal/deployer/tencent_cdn.go @@ -15,6 +15,7 @@ import ( "github.com/usual2970/certimate/internal/domain" "github.com/usual2970/certimate/internal/pkg/core/uploader" + uploaderTcSsl "github.com/usual2970/certimate/internal/pkg/core/uploader/providers/tencentcloud-ssl" ) type TencentCDNDeployer struct { @@ -44,7 +45,7 @@ func NewTencentCDNDeployer(option *DeployerOption) (Deployer, error) { return nil, xerrors.Wrap(err, "failed to create sdk clients") } - uploader, err := uploader.NewTencentCloudSSLUploader(&uploader.TencentCloudSSLUploaderConfig{ + uploader, err := uploaderTcSsl.New(&uploaderTcSsl.TencentCloudSSLUploaderConfig{ SecretId: access.SecretId, SecretKey: access.SecretKey, }) diff --git a/internal/deployer/tencent_clb.go b/internal/deployer/tencent_clb.go index 51b2bfb1..0a0c4b82 100644 --- a/internal/deployer/tencent_clb.go +++ b/internal/deployer/tencent_clb.go @@ -14,6 +14,7 @@ import ( "github.com/usual2970/certimate/internal/domain" "github.com/usual2970/certimate/internal/pkg/core/uploader" + uploaderTcSsl "github.com/usual2970/certimate/internal/pkg/core/uploader/providers/tencentcloud-ssl" ) type TencentCLBDeployer struct { @@ -44,7 +45,7 @@ func NewTencentCLBDeployer(option *DeployerOption) (Deployer, error) { return nil, xerrors.Wrap(err, "failed to create sdk clients") } - uploader, err := uploader.NewTencentCloudSSLUploader(&uploader.TencentCloudSSLUploaderConfig{ + uploader, err := uploaderTcSsl.New(&uploaderTcSsl.TencentCloudSSLUploaderConfig{ SecretId: access.SecretId, SecretKey: access.SecretKey, }) diff --git a/internal/deployer/tencent_cos.go b/internal/deployer/tencent_cos.go index 3f0c403a..71039b87 100644 --- a/internal/deployer/tencent_cos.go +++ b/internal/deployer/tencent_cos.go @@ -13,6 +13,7 @@ import ( "github.com/usual2970/certimate/internal/domain" "github.com/usual2970/certimate/internal/pkg/core/uploader" + uploaderTcSsl "github.com/usual2970/certimate/internal/pkg/core/uploader/providers/tencentcloud-ssl" ) type TencentCOSDeployer struct { @@ -37,7 +38,7 @@ func NewTencentCOSDeployer(option *DeployerOption) (Deployer, error) { return nil, xerrors.Wrap(err, "failed to create sdk clients") } - uploader, err := uploader.NewTencentCloudSSLUploader(&uploader.TencentCloudSSLUploaderConfig{ + uploader, err := uploaderTcSsl.New(&uploaderTcSsl.TencentCloudSSLUploaderConfig{ SecretId: access.SecretId, SecretKey: access.SecretKey, }) diff --git a/internal/deployer/tencent_ecdn.go b/internal/deployer/tencent_ecdn.go index 6d526a3d..a61c5680 100644 --- a/internal/deployer/tencent_ecdn.go +++ b/internal/deployer/tencent_ecdn.go @@ -14,6 +14,7 @@ import ( "github.com/usual2970/certimate/internal/domain" "github.com/usual2970/certimate/internal/pkg/core/uploader" + uploaderTcSsl "github.com/usual2970/certimate/internal/pkg/core/uploader/providers/tencentcloud-ssl" ) type TencentECDNDeployer struct { @@ -43,7 +44,7 @@ func NewTencentECDNDeployer(option *DeployerOption) (Deployer, error) { return nil, xerrors.Wrap(err, "failed to create sdk clients") } - uploader, err := uploader.NewTencentCloudSSLUploader(&uploader.TencentCloudSSLUploaderConfig{ + uploader, err := uploaderTcSsl.New(&uploaderTcSsl.TencentCloudSSLUploaderConfig{ SecretId: access.SecretId, SecretKey: access.SecretKey, }) diff --git a/internal/deployer/tencent_teo.go b/internal/deployer/tencent_teo.go index d9d8e433..583089dd 100644 --- a/internal/deployer/tencent_teo.go +++ b/internal/deployer/tencent_teo.go @@ -14,6 +14,7 @@ import ( "github.com/usual2970/certimate/internal/domain" "github.com/usual2970/certimate/internal/pkg/core/uploader" + uploaderTcSsl "github.com/usual2970/certimate/internal/pkg/core/uploader/providers/tencentcloud-ssl" ) type TencentTEODeployer struct { @@ -43,7 +44,7 @@ func NewTencentTEODeployer(option *DeployerOption) (Deployer, error) { return nil, xerrors.Wrap(err, "failed to create sdk clients") } - uploader, err := uploader.NewTencentCloudSSLUploader(&uploader.TencentCloudSSLUploaderConfig{ + uploader, err := uploaderTcSsl.New(&uploaderTcSsl.TencentCloudSSLUploaderConfig{ SecretId: access.SecretId, SecretKey: access.SecretKey, }) diff --git a/internal/pkg/core/uploader/uploader_aliyun_cas.go b/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go similarity index 94% rename from internal/pkg/core/uploader/uploader_aliyun_cas.go rename to internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go index a6e23c40..65e7275d 100644 --- a/internal/pkg/core/uploader/uploader_aliyun_cas.go +++ b/internal/pkg/core/uploader/providers/aliyun-cas/aliyun_cas.go @@ -1,4 +1,4 @@ -package uploader +package aliyuncas import ( "context" @@ -11,6 +11,7 @@ import ( "github.com/alibabacloud-go/tea/tea" xerrors "github.com/pkg/errors" + "github.com/usual2970/certimate/internal/pkg/core/uploader" "github.com/usual2970/certimate/internal/pkg/utils/x509" ) @@ -25,7 +26,7 @@ type AliyunCASUploader struct { sdkClient *aliyunCas.Client } -func NewAliyunCASUploader(config *AliyunCASUploaderConfig) (Uploader, error) { +func New(config *AliyunCASUploaderConfig) (*AliyunCASUploader, error) { client, err := (&AliyunCASUploader{}).createSdkClient( config.AccessKeyId, config.AccessKeySecret, @@ -41,7 +42,7 @@ func NewAliyunCASUploader(config *AliyunCASUploaderConfig) (Uploader, error) { }, nil } -func (u *AliyunCASUploader) Upload(ctx context.Context, certPem string, privkeyPem string) (res *UploadResult, err error) { +func (u *AliyunCASUploader) Upload(ctx context.Context, certPem string, privkeyPem string) (res *uploader.UploadResult, err error) { // 解析证书内容 certX509, err := x509.ParseCertificateFromPEM(certPem) if err != nil { @@ -89,7 +90,7 @@ func (u *AliyunCASUploader) Upload(ctx context.Context, certPem string, privkeyP // 如果已存在相同证书,直接返回已有的证书信息 if isSameCert { - return &UploadResult{ + return &uploader.UploadResult{ CertId: fmt.Sprintf("%d", tea.Int64Value(certDetail.CertificateId)), CertName: *certDetail.Name, }, nil @@ -125,7 +126,7 @@ func (u *AliyunCASUploader) Upload(ctx context.Context, certPem string, privkeyP } certId = fmt.Sprintf("%d", tea.Int64Value(uploadUserCertificateResp.Body.CertId)) - return &UploadResult{ + return &uploader.UploadResult{ CertId: certId, CertName: certName, }, nil diff --git a/internal/pkg/core/uploader/uploader_aliyun_slb.go b/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go similarity index 93% rename from internal/pkg/core/uploader/uploader_aliyun_slb.go rename to internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go index 6f25d128..a782a2a3 100644 --- a/internal/pkg/core/uploader/uploader_aliyun_slb.go +++ b/internal/pkg/core/uploader/providers/aliyun-slb/aliyun_slb.go @@ -1,4 +1,4 @@ -package uploader +package aliyunslb import ( "context" @@ -13,6 +13,7 @@ import ( "github.com/alibabacloud-go/tea/tea" xerrors "github.com/pkg/errors" + "github.com/usual2970/certimate/internal/pkg/core/uploader" "github.com/usual2970/certimate/internal/pkg/utils/x509" ) @@ -27,7 +28,7 @@ type AliyunSLBUploader struct { sdkClient *aliyunSlb.Client } -func NewAliyunSLBUploader(config *AliyunSLBUploaderConfig) (Uploader, error) { +func New(config *AliyunSLBUploaderConfig) (*AliyunSLBUploader, error) { client, err := (&AliyunSLBUploader{}).createSdkClient( config.AccessKeyId, config.AccessKeySecret, @@ -43,7 +44,7 @@ func NewAliyunSLBUploader(config *AliyunSLBUploaderConfig) (Uploader, error) { }, nil } -func (u *AliyunSLBUploader) Upload(ctx context.Context, certPem string, privkeyPem string) (res *UploadResult, err error) { +func (u *AliyunSLBUploader) Upload(ctx context.Context, certPem string, privkeyPem string) (res *uploader.UploadResult, err error) { // 解析证书内容 certX509, err := x509.ParseCertificateFromPEM(certPem) if err != nil { @@ -69,7 +70,7 @@ func (u *AliyunSLBUploader) Upload(ctx context.Context, certPem string, privkeyP strings.EqualFold(certX509.Subject.CommonName, *certDetail.CommonName) // 如果已存在相同证书,直接返回已有的证书信息 if isSameCert { - return &UploadResult{ + return &uploader.UploadResult{ CertId: *certDetail.ServerCertificateId, CertName: *certDetail.ServerCertificateName, }, nil @@ -95,7 +96,7 @@ func (u *AliyunSLBUploader) Upload(ctx context.Context, certPem string, privkeyP } certId = *uploadServerCertificateResp.Body.ServerCertificateId - return &UploadResult{ + return &uploader.UploadResult{ CertId: certId, CertName: certName, }, nil diff --git a/internal/pkg/core/uploader/uploader_huaweicloud_elb.go b/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go similarity index 95% rename from internal/pkg/core/uploader/uploader_huaweicloud_elb.go rename to internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go index 840db8cf..caba0175 100644 --- a/internal/pkg/core/uploader/uploader_huaweicloud_elb.go +++ b/internal/pkg/core/uploader/providers/huaweicloud-elb/huaweicloud_elb.go @@ -1,4 +1,4 @@ -package uploader +package huaweicloudelb import ( "context" @@ -16,6 +16,7 @@ import ( hcIamRegion "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/iam/v3/region" xerrors "github.com/pkg/errors" + "github.com/usual2970/certimate/internal/pkg/core/uploader" "github.com/usual2970/certimate/internal/pkg/utils/cast" "github.com/usual2970/certimate/internal/pkg/utils/x509" ) @@ -31,7 +32,7 @@ type HuaweiCloudELBUploader struct { sdkClient *hcElb.ElbClient } -func NewHuaweiCloudELBUploader(config *HuaweiCloudELBUploaderConfig) (Uploader, error) { +func New(config *HuaweiCloudELBUploaderConfig) (*HuaweiCloudELBUploader, error) { client, err := (&HuaweiCloudELBUploader{}).createSdkClient( config.AccessKeyId, config.SecretAccessKey, @@ -47,7 +48,7 @@ func NewHuaweiCloudELBUploader(config *HuaweiCloudELBUploaderConfig) (Uploader, }, nil } -func (u *HuaweiCloudELBUploader) Upload(ctx context.Context, certPem string, privkeyPem string) (res *UploadResult, err error) { +func (u *HuaweiCloudELBUploader) Upload(ctx context.Context, certPem string, privkeyPem string) (res *uploader.UploadResult, err error) { // 解析证书内容 newCert, err := x509.ParseCertificateFromPEM(certPem) if err != nil { @@ -86,7 +87,7 @@ func (u *HuaweiCloudELBUploader) Upload(ctx context.Context, certPem string, pri // 如果已存在相同证书,直接返回已有的证书信息 if isSameCert { - return &UploadResult{ + return &uploader.UploadResult{ CertId: certDetail.Id, CertName: certDetail.Name, }, nil @@ -135,7 +136,7 @@ func (u *HuaweiCloudELBUploader) Upload(ctx context.Context, certPem string, pri certId = createCertificateResp.Certificate.Id certName = createCertificateResp.Certificate.Name - return &UploadResult{ + return &uploader.UploadResult{ CertId: certId, CertName: certName, }, nil diff --git a/internal/pkg/core/uploader/uploader_huaweicloud_scm.go b/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go similarity index 93% rename from internal/pkg/core/uploader/uploader_huaweicloud_scm.go rename to internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go index 5cc0d153..29a4ccf2 100644 --- a/internal/pkg/core/uploader/uploader_huaweicloud_scm.go +++ b/internal/pkg/core/uploader/providers/huaweicloud-scm/huaweicloud_scm.go @@ -1,4 +1,4 @@ -package uploader +package huaweicloudscm import ( "context" @@ -11,6 +11,7 @@ import ( hcScmRegion "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/scm/v3/region" xerrors "github.com/pkg/errors" + "github.com/usual2970/certimate/internal/pkg/core/uploader" "github.com/usual2970/certimate/internal/pkg/utils/cast" "github.com/usual2970/certimate/internal/pkg/utils/x509" ) @@ -26,7 +27,7 @@ type HuaweiCloudSCMUploader struct { sdkClient *hcScm.ScmClient } -func NewHuaweiCloudSCMUploader(config *HuaweiCloudSCMUploaderConfig) (Uploader, error) { +func New(config *HuaweiCloudSCMUploaderConfig) (*HuaweiCloudSCMUploader, error) { client, err := (&HuaweiCloudSCMUploader{}).createSdkClient( config.AccessKeyId, config.SecretAccessKey, @@ -42,7 +43,7 @@ func NewHuaweiCloudSCMUploader(config *HuaweiCloudSCMUploaderConfig) (Uploader, }, nil } -func (u *HuaweiCloudSCMUploader) Upload(ctx context.Context, certPem string, privkeyPem string) (res *UploadResult, err error) { +func (u *HuaweiCloudSCMUploader) Upload(ctx context.Context, certPem string, privkeyPem string) (res *uploader.UploadResult, err error) { // 解析证书内容 certX509, err := x509.ParseCertificateFromPEM(certPem) if err != nil { @@ -94,7 +95,7 @@ func (u *HuaweiCloudSCMUploader) Upload(ctx context.Context, certPem string, pri // 如果已存在相同证书,直接返回已有的证书信息 if isSameCert { - return &UploadResult{ + return &uploader.UploadResult{ CertId: certDetail.Id, CertName: certDetail.Name, }, nil @@ -132,7 +133,7 @@ func (u *HuaweiCloudSCMUploader) Upload(ctx context.Context, certPem string, pri } certId = *importCertificateResp.CertificateId - return &UploadResult{ + return &uploader.UploadResult{ CertId: certId, CertName: certName, }, nil diff --git a/internal/pkg/core/uploader/uploader_qiniu_sslcert.go b/internal/pkg/core/uploader/providers/qiniu-sslcert/qiniu_sslcert.go similarity index 86% rename from internal/pkg/core/uploader/uploader_qiniu_sslcert.go rename to internal/pkg/core/uploader/providers/qiniu-sslcert/qiniu_sslcert.go index edf72ac2..247d4f2c 100644 --- a/internal/pkg/core/uploader/uploader_qiniu_sslcert.go +++ b/internal/pkg/core/uploader/providers/qiniu-sslcert/qiniu_sslcert.go @@ -1,4 +1,4 @@ -package uploader +package qiniusslcert import ( "context" @@ -8,6 +8,7 @@ import ( xerrors "github.com/pkg/errors" "github.com/qiniu/go-sdk/v7/auth" + "github.com/usual2970/certimate/internal/pkg/core/uploader" "github.com/usual2970/certimate/internal/pkg/utils/x509" qiniuEx "github.com/usual2970/certimate/internal/pkg/vendors/qiniu-sdk" ) @@ -22,7 +23,7 @@ type QiniuSSLCertUploader struct { sdkClient *qiniuEx.Client } -func NewQiniuSSLCertUploader(config *QiniuSSLCertUploaderConfig) (Uploader, error) { +func New(config *QiniuSSLCertUploaderConfig) (*QiniuSSLCertUploader, error) { client, err := (&QiniuSSLCertUploader{}).createSdkClient( config.AccessKey, config.SecretKey, @@ -37,7 +38,7 @@ func NewQiniuSSLCertUploader(config *QiniuSSLCertUploaderConfig) (Uploader, erro }, nil } -func (u *QiniuSSLCertUploader) Upload(ctx context.Context, certPem string, privkeyPem string) (res *UploadResult, err error) { +func (u *QiniuSSLCertUploader) Upload(ctx context.Context, certPem string, privkeyPem string) (res *uploader.UploadResult, err error) { // 解析证书内容 certX509, err := x509.ParseCertificateFromPEM(certPem) if err != nil { @@ -56,7 +57,7 @@ func (u *QiniuSSLCertUploader) Upload(ctx context.Context, certPem string, privk } certId = uploadSslCertResp.CertID - return &UploadResult{ + return &uploader.UploadResult{ CertId: certId, CertName: certName, }, nil diff --git a/internal/pkg/core/uploader/uploader_tencentcloud_ssl.go b/internal/pkg/core/uploader/providers/tencentcloud-ssl/tencentcloud_ssl.go similarity index 83% rename from internal/pkg/core/uploader/uploader_tencentcloud_ssl.go rename to internal/pkg/core/uploader/providers/tencentcloud-ssl/tencentcloud_ssl.go index b8344346..35b08607 100644 --- a/internal/pkg/core/uploader/uploader_tencentcloud_ssl.go +++ b/internal/pkg/core/uploader/providers/tencentcloud-ssl/tencentcloud_ssl.go @@ -1,4 +1,4 @@ -package uploader +package tencentcloudssl import ( "context" @@ -7,6 +7,8 @@ import ( "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common" "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/profile" tcSsl "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ssl/v20191205" + + "github.com/usual2970/certimate/internal/pkg/core/uploader" ) type TencentCloudSSLUploaderConfig struct { @@ -19,7 +21,7 @@ type TencentCloudSSLUploader struct { sdkClient *tcSsl.Client } -func NewTencentCloudSSLUploader(config *TencentCloudSSLUploaderConfig) (Uploader, error) { +func New(config *TencentCloudSSLUploaderConfig) (*TencentCloudSSLUploader, error) { client, err := (&TencentCloudSSLUploader{}).createSdkClient( config.SecretId, config.SecretKey, @@ -34,7 +36,7 @@ func NewTencentCloudSSLUploader(config *TencentCloudSSLUploaderConfig) (Uploader }, nil } -func (u *TencentCloudSSLUploader) Upload(ctx context.Context, certPem string, privkeyPem string) (res *UploadResult, err error) { +func (u *TencentCloudSSLUploader) Upload(ctx context.Context, certPem string, privkeyPem string) (res *uploader.UploadResult, err error) { // 上传新证书 // REF: https://cloud.tencent.com/document/product/400/41665 uploadCertificateReq := tcSsl.NewUploadCertificateRequest() @@ -46,8 +48,8 @@ func (u *TencentCloudSSLUploader) Upload(ctx context.Context, certPem string, pr return nil, xerrors.Wrap(err, "failed to execute sdk request 'ssl.UploadCertificate'") } - certId := *describeCertificateDetailResp.Response.CertificateId - return &UploadResult{ + certId := *uploadCertificateResp.Response.CertificateId + return &uploader.UploadResult{ CertId: certId, CertName: "", }, nil