mirror of
https://github.com/woodchen-ink/certimate.git
synced 2025-07-18 09:21:56 +08:00
refactor: clean code
This commit is contained in:
parent
2829ac89ca
commit
86bf8cd3d0
@ -137,7 +137,7 @@ func (d *SSLDeployerProvider) Deploy(ctx context.Context, certPEM string, privke
|
|||||||
|
|
||||||
func (d *SSLDeployerProvider) getDomainsByCertId(ctx context.Context, cloudCertId string) ([]string, error) {
|
func (d *SSLDeployerProvider) getDomainsByCertId(ctx context.Context, cloudCertId string) ([]string, error) {
|
||||||
// 获取证书中的可用域名
|
// 获取证书中的可用域名
|
||||||
// REF: https://cloud.tencent.com/document/product/228/42491
|
// REF: https://cloud.tencent.com/document/api/228/42491
|
||||||
describeCertDomainsReq := tccdn.NewDescribeCertDomainsRequest()
|
describeCertDomainsReq := tccdn.NewDescribeCertDomainsRequest()
|
||||||
describeCertDomainsReq.CertId = common.StringPtr(cloudCertId)
|
describeCertDomainsReq.CertId = common.StringPtr(cloudCertId)
|
||||||
describeCertDomainsReq.Product = common.StringPtr("cdn")
|
describeCertDomainsReq.Product = common.StringPtr("cdn")
|
||||||
@ -159,7 +159,7 @@ func (d *SSLDeployerProvider) getDomainsByCertId(ctx context.Context, cloudCertI
|
|||||||
|
|
||||||
func (d *SSLDeployerProvider) updateDomainHttpsServerCert(ctx context.Context, domain string, cloudCertId string) error {
|
func (d *SSLDeployerProvider) updateDomainHttpsServerCert(ctx context.Context, domain string, cloudCertId string) error {
|
||||||
// 查询域名详细配置
|
// 查询域名详细配置
|
||||||
// REF: https://cloud.tencent.com/document/product/228/41117
|
// REF: https://cloud.tencent.com/document/api/228/41117
|
||||||
describeDomainsConfigReq := tccdn.NewDescribeDomainsConfigRequest()
|
describeDomainsConfigReq := tccdn.NewDescribeDomainsConfigRequest()
|
||||||
describeDomainsConfigReq.Filters = []*tccdn.DomainFilter{
|
describeDomainsConfigReq.Filters = []*tccdn.DomainFilter{
|
||||||
{
|
{
|
||||||
@ -184,7 +184,7 @@ func (d *SSLDeployerProvider) updateDomainHttpsServerCert(ctx context.Context, d
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 更新加速域名配置
|
// 更新加速域名配置
|
||||||
// REF: https://cloud.tencent.com/document/product/228/41116
|
// REF: https://cloud.tencent.com/document/api/228/41116
|
||||||
updateDomainConfigReq := tccdn.NewUpdateDomainConfigRequest()
|
updateDomainConfigReq := tccdn.NewUpdateDomainConfigRequest()
|
||||||
updateDomainConfigReq.Domain = common.StringPtr(domain)
|
updateDomainConfigReq.Domain = common.StringPtr(domain)
|
||||||
updateDomainConfigReq.Https = domainConfig.Https
|
updateDomainConfigReq.Https = domainConfig.Https
|
||||||
|
@ -23,10 +23,10 @@ type SSLDeployerProviderConfig struct {
|
|||||||
SecretId string `json:"secretId"`
|
SecretId string `json:"secretId"`
|
||||||
// 腾讯云 SecretKey。
|
// 腾讯云 SecretKey。
|
||||||
SecretKey string `json:"secretKey"`
|
SecretKey string `json:"secretKey"`
|
||||||
// 腾讯云地域。
|
|
||||||
Region string `json:"region"`
|
|
||||||
// 腾讯云接口端点。
|
// 腾讯云接口端点。
|
||||||
Endpoint string `json:"endpoint,omitempty"`
|
Endpoint string `json:"endpoint,omitempty"`
|
||||||
|
// 腾讯云地域。
|
||||||
|
Region string `json:"region"`
|
||||||
// 部署资源类型。
|
// 部署资源类型。
|
||||||
ResourceType ResourceType `json:"resourceType"`
|
ResourceType ResourceType `json:"resourceType"`
|
||||||
// 负载均衡器 ID。
|
// 负载均衡器 ID。
|
||||||
@ -141,7 +141,7 @@ func (d *SSLDeployerProvider) deployViaSslService(ctx context.Context, cloudCert
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 证书部署到 CLB 实例
|
// 证书部署到 CLB 实例
|
||||||
// REF: https://cloud.tencent.com/document/product/400/91667
|
// REF: https://cloud.tencent.com/document/api/400/91667
|
||||||
deployCertificateInstanceReq := tcssl.NewDeployCertificateInstanceRequest()
|
deployCertificateInstanceReq := tcssl.NewDeployCertificateInstanceRequest()
|
||||||
deployCertificateInstanceReq.CertificateId = common.StringPtr(cloudCertId)
|
deployCertificateInstanceReq.CertificateId = common.StringPtr(cloudCertId)
|
||||||
deployCertificateInstanceReq.ResourceType = common.StringPtr("clb")
|
deployCertificateInstanceReq.ResourceType = common.StringPtr("clb")
|
||||||
@ -318,7 +318,7 @@ func (d *SSLDeployerProvider) modifyListenerCertificate(ctx context.Context, clo
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 修改监听器属性
|
// 修改监听器属性
|
||||||
// REF: https://cloud.tencent.com/document/product/214/30681
|
// REF: https://cloud.tencent.com/document/api/214/30681
|
||||||
modifyListenerReq := tcclb.NewModifyListenerRequest()
|
modifyListenerReq := tcclb.NewModifyListenerRequest()
|
||||||
modifyListenerReq.LoadBalancerId = common.StringPtr(cloudLoadbalancerId)
|
modifyListenerReq.LoadBalancerId = common.StringPtr(cloudLoadbalancerId)
|
||||||
modifyListenerReq.ListenerId = common.StringPtr(cloudListenerId)
|
modifyListenerReq.ListenerId = common.StringPtr(cloudListenerId)
|
||||||
|
@ -94,7 +94,7 @@ func (d *SSLDeployerProvider) Deploy(ctx context.Context, certPEM string, privke
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 证书部署到 COS 实例
|
// 证书部署到 COS 实例
|
||||||
// REF: https://cloud.tencent.com/document/product/400/91667
|
// REF: https://cloud.tencent.com/document/api/400/91667
|
||||||
deployCertificateInstanceReq := tcssl.NewDeployCertificateInstanceRequest()
|
deployCertificateInstanceReq := tcssl.NewDeployCertificateInstanceRequest()
|
||||||
deployCertificateInstanceReq.CertificateId = common.StringPtr(upres.CertId)
|
deployCertificateInstanceReq.CertificateId = common.StringPtr(upres.CertId)
|
||||||
deployCertificateInstanceReq.ResourceType = common.StringPtr("cos")
|
deployCertificateInstanceReq.ResourceType = common.StringPtr("cos")
|
||||||
|
@ -90,7 +90,7 @@ func (d *SSLDeployerProvider) Deploy(ctx context.Context, certPEM string, privke
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 绑定证书对应的播放域名
|
// 绑定证书对应的播放域名
|
||||||
// REF: https://cloud.tencent.com/document/product/267/78655
|
// REF: https://cloud.tencent.com/document/api/267/78655
|
||||||
modifyLiveDomainCertBindingsReq := tclive.NewModifyLiveDomainCertBindingsRequest()
|
modifyLiveDomainCertBindingsReq := tclive.NewModifyLiveDomainCertBindingsRequest()
|
||||||
modifyLiveDomainCertBindingsReq.DomainInfos = []*tclive.LiveCertDomainInfo{
|
modifyLiveDomainCertBindingsReq.DomainInfos = []*tclive.LiveCertDomainInfo{
|
||||||
{
|
{
|
||||||
|
@ -137,7 +137,7 @@ func (d *SSLDeployerProvider) Deploy(ctx context.Context, certPEM string, privke
|
|||||||
|
|
||||||
func (d *SSLDeployerProvider) getDomainsByCertId(cloudCertId string) ([]string, error) {
|
func (d *SSLDeployerProvider) getDomainsByCertId(cloudCertId string) ([]string, error) {
|
||||||
// 获取证书中的可用域名
|
// 获取证书中的可用域名
|
||||||
// REF: https://cloud.tencent.com/document/product/228/42491
|
// REF: https://cloud.tencent.com/document/api/228/42491
|
||||||
describeCertDomainsReq := tccdn.NewDescribeCertDomainsRequest()
|
describeCertDomainsReq := tccdn.NewDescribeCertDomainsRequest()
|
||||||
describeCertDomainsReq.CertId = common.StringPtr(cloudCertId)
|
describeCertDomainsReq.CertId = common.StringPtr(cloudCertId)
|
||||||
describeCertDomainsReq.Product = common.StringPtr("ecdn")
|
describeCertDomainsReq.Product = common.StringPtr("ecdn")
|
||||||
@ -159,7 +159,7 @@ func (d *SSLDeployerProvider) getDomainsByCertId(cloudCertId string) ([]string,
|
|||||||
|
|
||||||
func (d *SSLDeployerProvider) updateDomainHttpsServerCert(ctx context.Context, domain string, cloudCertId string) error {
|
func (d *SSLDeployerProvider) updateDomainHttpsServerCert(ctx context.Context, domain string, cloudCertId string) error {
|
||||||
// 查询域名详细配置
|
// 查询域名详细配置
|
||||||
// REF: https://cloud.tencent.com/document/product/228/41117
|
// REF: https://cloud.tencent.com/document/api/228/41117
|
||||||
describeDomainsConfigReq := tccdn.NewDescribeDomainsConfigRequest()
|
describeDomainsConfigReq := tccdn.NewDescribeDomainsConfigRequest()
|
||||||
describeDomainsConfigReq.Filters = []*tccdn.DomainFilter{
|
describeDomainsConfigReq.Filters = []*tccdn.DomainFilter{
|
||||||
{
|
{
|
||||||
@ -184,7 +184,7 @@ func (d *SSLDeployerProvider) updateDomainHttpsServerCert(ctx context.Context, d
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 更新加速域名配置
|
// 更新加速域名配置
|
||||||
// REF: https://cloud.tencent.com/document/product/228/41116
|
// REF: https://cloud.tencent.com/document/api/228/41116
|
||||||
updateDomainConfigReq := tccdn.NewUpdateDomainConfigRequest()
|
updateDomainConfigReq := tccdn.NewUpdateDomainConfigRequest()
|
||||||
updateDomainConfigReq.Domain = common.StringPtr(domain)
|
updateDomainConfigReq.Domain = common.StringPtr(domain)
|
||||||
updateDomainConfigReq.Https = domainConfig.Https
|
updateDomainConfigReq.Https = domainConfig.Https
|
||||||
|
@ -95,7 +95,7 @@ func (d *SSLDeployerProvider) Deploy(ctx context.Context, certPEM string, privke
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 配置域名证书
|
// 配置域名证书
|
||||||
// REF: https://cloud.tencent.com/document/product/1552/80764
|
// REF: https://cloud.tencent.com/document/api/1552/80764
|
||||||
modifyHostsCertificateReq := tcteo.NewModifyHostsCertificateRequest()
|
modifyHostsCertificateReq := tcteo.NewModifyHostsCertificateRequest()
|
||||||
modifyHostsCertificateReq.ZoneId = common.StringPtr(d.config.ZoneId)
|
modifyHostsCertificateReq.ZoneId = common.StringPtr(d.config.ZoneId)
|
||||||
modifyHostsCertificateReq.Mode = common.StringPtr("sslcert")
|
modifyHostsCertificateReq.Mode = common.StringPtr("sslcert")
|
||||||
|
@ -121,7 +121,7 @@ func (d *SSLDeployerProvider) deployToListener(ctx context.Context, cloudCertId
|
|||||||
|
|
||||||
func (d *SSLDeployerProvider) modifyHttpsListenerCertificate(ctx context.Context, cloudListenerId, cloudCertId string) error {
|
func (d *SSLDeployerProvider) modifyHttpsListenerCertificate(ctx context.Context, cloudListenerId, cloudCertId string) error {
|
||||||
// 查询 HTTPS 监听器信息
|
// 查询 HTTPS 监听器信息
|
||||||
// REF: https://cloud.tencent.com/document/product/608/37001
|
// REF: https://cloud.tencent.com/document/api/608/37001
|
||||||
describeHTTPSListenersReq := tcgaap.NewDescribeHTTPSListenersRequest()
|
describeHTTPSListenersReq := tcgaap.NewDescribeHTTPSListenersRequest()
|
||||||
describeHTTPSListenersReq.ListenerId = common.StringPtr(cloudListenerId)
|
describeHTTPSListenersReq.ListenerId = common.StringPtr(cloudListenerId)
|
||||||
describeHTTPSListenersReq.Offset = common.Uint64Ptr(0)
|
describeHTTPSListenersReq.Offset = common.Uint64Ptr(0)
|
||||||
@ -135,7 +135,7 @@ func (d *SSLDeployerProvider) modifyHttpsListenerCertificate(ctx context.Context
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 修改 HTTPS 监听器配置
|
// 修改 HTTPS 监听器配置
|
||||||
// REF: https://cloud.tencent.com/document/product/608/36996
|
// REF: https://cloud.tencent.com/document/api/608/36996
|
||||||
modifyHTTPSListenerAttributeReq := tcgaap.NewModifyHTTPSListenerAttributeRequest()
|
modifyHTTPSListenerAttributeReq := tcgaap.NewModifyHTTPSListenerAttributeRequest()
|
||||||
modifyHTTPSListenerAttributeReq.ProxyId = xtypes.ToPtrOrZeroNil(d.config.ProxyId)
|
modifyHTTPSListenerAttributeReq.ProxyId = xtypes.ToPtrOrZeroNil(d.config.ProxyId)
|
||||||
modifyHTTPSListenerAttributeReq.ListenerId = common.StringPtr(cloudListenerId)
|
modifyHTTPSListenerAttributeReq.ListenerId = common.StringPtr(cloudListenerId)
|
||||||
|
@ -84,7 +84,7 @@ func (d *SSLDeployerProvider) Deploy(ctx context.Context, certPEM string, privke
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 查看云函数自定义域名详情
|
// 查看云函数自定义域名详情
|
||||||
// REF: https://cloud.tencent.com/document/product/583/111924
|
// REF: https://cloud.tencent.com/document/api/583/111924
|
||||||
getCustomDomainReq := tcscf.NewGetCustomDomainRequest()
|
getCustomDomainReq := tcscf.NewGetCustomDomainRequest()
|
||||||
getCustomDomainReq.Domain = common.StringPtr(d.config.Domain)
|
getCustomDomainReq.Domain = common.StringPtr(d.config.Domain)
|
||||||
getCustomDomainResp, err := d.sdkClient.GetCustomDomain(getCustomDomainReq)
|
getCustomDomainResp, err := d.sdkClient.GetCustomDomain(getCustomDomainReq)
|
||||||
@ -102,7 +102,7 @@ func (d *SSLDeployerProvider) Deploy(ctx context.Context, certPEM string, privke
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 更新云函数自定义域名
|
// 更新云函数自定义域名
|
||||||
// REF: https://cloud.tencent.com/document/product/583/111922
|
// REF: https://cloud.tencent.com/document/api/583/111922
|
||||||
updateCustomDomainReq := tcscf.NewUpdateCustomDomainRequest()
|
updateCustomDomainReq := tcscf.NewUpdateCustomDomainRequest()
|
||||||
updateCustomDomainReq.Domain = common.StringPtr(d.config.Domain)
|
updateCustomDomainReq.Domain = common.StringPtr(d.config.Domain)
|
||||||
updateCustomDomainReq.CertConfig = &tcscf.CertConf{
|
updateCustomDomainReq.CertConfig = &tcscf.CertConf{
|
||||||
|
@ -24,10 +24,10 @@ type SSLDeployerProviderConfig struct {
|
|||||||
Endpoint string `json:"endpoint,omitempty"`
|
Endpoint string `json:"endpoint,omitempty"`
|
||||||
// 腾讯云地域。
|
// 腾讯云地域。
|
||||||
Region string `json:"region"`
|
Region string `json:"region"`
|
||||||
// 腾讯云云资源类型。
|
// 云资源类型。
|
||||||
ResourceType string `json:"resourceType"`
|
ResourceType string `json:"resourceType"`
|
||||||
// 腾讯云云资源 ID 数组。
|
// 云资源 ID 数组。
|
||||||
ResourceIds []string `json:"resourceIds"`
|
ResourceIds []string `json:"resourceIds,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type SSLDeployerProvider struct {
|
type SSLDeployerProvider struct {
|
||||||
@ -93,7 +93,7 @@ func (d *SSLDeployerProvider) Deploy(ctx context.Context, certPEM string, privke
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 证书部署到云资源实例列表
|
// 证书部署到云资源实例列表
|
||||||
// REF: https://cloud.tencent.com/document/product/400/91667
|
// REF: https://cloud.tencent.com/document/api/400/91667
|
||||||
deployCertificateInstanceReq := tcssl.NewDeployCertificateInstanceRequest()
|
deployCertificateInstanceReq := tcssl.NewDeployCertificateInstanceRequest()
|
||||||
deployCertificateInstanceReq.CertificateId = common.StringPtr(upres.CertId)
|
deployCertificateInstanceReq.CertificateId = common.StringPtr(upres.CertId)
|
||||||
deployCertificateInstanceReq.ResourceType = common.StringPtr(d.config.ResourceType)
|
deployCertificateInstanceReq.ResourceType = common.StringPtr(d.config.ResourceType)
|
||||||
|
@ -56,7 +56,7 @@ func (m *SSLManagerProvider) SetLogger(logger *slog.Logger) {
|
|||||||
|
|
||||||
func (m *SSLManagerProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*core.SSLManageUploadResult, error) {
|
func (m *SSLManagerProvider) Upload(ctx context.Context, certPEM string, privkeyPEM string) (*core.SSLManageUploadResult, error) {
|
||||||
// 上传新证书
|
// 上传新证书
|
||||||
// REF: https://cloud.tencent.com/document/product/400/41665
|
// REF: https://cloud.tencent.com/document/api/400/41665
|
||||||
uploadCertificateReq := tcssl.NewUploadCertificateRequest()
|
uploadCertificateReq := tcssl.NewUploadCertificateRequest()
|
||||||
uploadCertificateReq.CertificatePublicKey = common.StringPtr(certPEM)
|
uploadCertificateReq.CertificatePublicKey = common.StringPtr(certPEM)
|
||||||
uploadCertificateReq.CertificatePrivateKey = common.StringPtr(privkeyPEM)
|
uploadCertificateReq.CertificatePrivateKey = common.StringPtr(privkeyPEM)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user