From 965dc2cb476f690af716f291c6b20ba98be0c8f0 Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Sat, 12 Apr 2025 23:58:38 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E9=98=BF=E9=87=8C?= =?UTF-8?q?=E4=BA=91cdn=E8=AF=81=E4=B9=A6=E9=83=A8=E7=BD=B2=E5=A4=B1?= =?UTF-8?q?=E8=B4=A5=E9=97=AE=E9=A2=98=EF=BC=8C=E5=A2=9E=E5=8A=A0certname?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E4=BC=A0=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加证书所在地域选择功能,默认为 cn-hangzhou(杭州) - 国际站用户可选择 ap-southeast-1(新加坡)地域 - 优化证书上传和设置流程,增加证书名称和地域参数 --- .../plugin/deploy-to-cdn/index.ts | 26 +++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/packages/ui/certd-server/src/plugins/plugin-aliyun/plugin/deploy-to-cdn/index.ts b/packages/ui/certd-server/src/plugins/plugin-aliyun/plugin/deploy-to-cdn/index.ts index fa5d94fb..65e29876 100644 --- a/packages/ui/certd-server/src/plugins/plugin-aliyun/plugin/deploy-to-cdn/index.ts +++ b/packages/ui/certd-server/src/plugins/plugin-aliyun/plugin/deploy-to-cdn/index.ts @@ -68,12 +68,29 @@ export class DeployCertToAliyunCDN extends AbstractTaskPlugin { ) domainName!: string | string[]; + @TaskInput({ + title: '证书所在地域', + helper: 'cn-hangzhou和ap-southeast-1,默认cn-hangzhou。国际站用户建议使用ap-southeast-1。', + value:"cn-hangzhou", + component: { + name: 'a-select', + options:[ + {value:'cn-hangzhou',label:'中国大陆'}, + {value:'ap-southeast-1',label:'新加坡'} + ] + }, + required: true, + }) + certRegion:string + @TaskInput({ title: '证书名称', helper: '上传后将以此名称作为前缀备注', }) certName!: string; + + async onInstance() {} async execute(): Promise { this.logger.info('开始部署证书到阿里云cdn'); @@ -89,9 +106,12 @@ export class DeployCertToAliyunCDN extends AbstractTaskPlugin { } let certId: any = this.cert; + + const certName = this.appendTimeSuffix(this.certName); + if (typeof this.cert === 'object') { certId = await sslClient.uploadCert({ - name: this.appendTimeSuffix(this.certName), + name:certName, cert: this.cert, }); } @@ -105,6 +125,8 @@ export class DeployCertToAliyunCDN extends AbstractTaskPlugin { await this.SetCdnDomainSSLCertificate(client, { CertId: certId, DomainName: domain, + CertName: certName, + CertRegion:this.certRegion || 'cn-hangzhou', }); } @@ -122,7 +144,7 @@ export class DeployCertToAliyunCDN extends AbstractTaskPlugin { return client; } - async SetCdnDomainSSLCertificate(client: any, params: { CertId: number; DomainName: string }) { + async SetCdnDomainSSLCertificate(client: any, params: { CertId: number; DomainName: string,CertName:string,CertRegion:string }) { const requestOption = { method: 'POST', formatParams: false,