perf: 添加阿里云 ESA证书部署插件

- 新增 AliyunDeployCertToESA 插件类,实现证书上传和部署到阿里云 ESA 功能
- 优化证书名称生成逻辑,支持通配符域名
- 重构部分代码,提高可复用性和可维护性
- 更新相关依赖版本,确保兼容性
This commit is contained in:
xiaojunnuo
2025-05-22 23:21:32 +08:00
parent 7984b625ba
commit 1db1ffde99
13 changed files with 420 additions and 71 deletions
@@ -1,7 +1,7 @@
import { AbstractTaskPlugin, IsTaskPlugin, pluginGroups, RunStrategy, TaskInput, TaskOutput } from '@certd/pipeline';
import { AliyunAccess } from '@certd/plugin-lib';
import { AliyunSslClient } from '@certd/plugin-lib';
import { CertApplyPluginNames} from '@certd/plugin-cert';
import { CertApplyPluginNames, CertReader } from "@certd/plugin-cert";
/**
* 华东1(杭州) cn-hangzhou cas.aliyuncs.com cas-vpc.cn-hangzhou.aliyuncs.com
* 马来西亚(吉隆坡) ap-southeast-3 cas.ap-southeast-3.aliyuncs.com cas-vpc.ap-southeast-3.aliyuncs.com
@@ -97,8 +97,9 @@ export class UploadCertToAliyun extends AbstractTaskPlugin {
logger: this.logger,
endpoint,
});
const certName = this.buildCertName(CertReader.getMainDomain(this.cert.crt))
this.aliyunCertId = await client.uploadCert({
name: this.appendTimeSuffix('certd'),
name: certName,
cert: this.cert,
});
}