mirror of
https://github.com/certd/certd.git
synced 2026-05-17 22:07:34 +08:00
chore: 雷池支持上传证书
This commit is contained in:
+19
-12
@@ -51,7 +51,7 @@ export class SafelineDeployToWebsitePlugin extends AbstractTaskPlugin {
|
|||||||
title: "雷池证书",
|
title: "雷池证书",
|
||||||
typeName: "SafelineDeployToWebsitePlugin",
|
typeName: "SafelineDeployToWebsitePlugin",
|
||||||
action: SafelineDeployToWebsitePlugin.prototype.onGetCertIds.name,
|
action: SafelineDeployToWebsitePlugin.prototype.onGetCertIds.name,
|
||||||
helper: "请选择要更新的雷池的证书Id,需要先手动到雷池控制台上传一次",
|
helper: "请选择要更新的雷池的证书Id,需要先手动到雷池控制台上传一次\n如果输入0,则表示新增证书,运行一次之后可以在雷池中使用该证书,最后记得在此处选择新上传的这个证书id,后续将进行自动更新",
|
||||||
required: true,
|
required: true,
|
||||||
})
|
})
|
||||||
)
|
)
|
||||||
@@ -69,19 +69,26 @@ export class SafelineDeployToWebsitePlugin extends AbstractTaskPlugin {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async uploadCert(certId: number) {
|
async uploadCert(certId: number) {
|
||||||
await this.doRequest({
|
const data:any = {
|
||||||
|
manual: {
|
||||||
|
crt: this.cert.crt,
|
||||||
|
key: this.cert.key,
|
||||||
|
},
|
||||||
|
type: 2,
|
||||||
|
};
|
||||||
|
let type = "新增"
|
||||||
|
// @ts-ignore
|
||||||
|
if (certId !== "0" && certId >0) {
|
||||||
|
//@ts-ignore
|
||||||
|
data.id = parseInt(certId)
|
||||||
|
type = "更新"
|
||||||
|
}
|
||||||
|
const res = await this.doRequest({
|
||||||
url: "/api/open/cert",
|
url: "/api/open/cert",
|
||||||
method: "post",
|
method: "post",
|
||||||
data: {
|
data:data
|
||||||
id: certId,
|
|
||||||
manual: {
|
|
||||||
crt: this.cert.crt,
|
|
||||||
key: this.cert.key,
|
|
||||||
},
|
|
||||||
type: 2,
|
|
||||||
},
|
|
||||||
});
|
});
|
||||||
this.logger.info(`证书<${certId}>更新成功`);
|
this.logger.info(`证书<${certId}>${type}成功,ID:${res}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
async doRequest(config: HttpRequestConfig<any>) {
|
async doRequest(config: HttpRequestConfig<any>) {
|
||||||
@@ -109,7 +116,7 @@ export class SafelineDeployToWebsitePlugin extends AbstractTaskPlugin {
|
|||||||
});
|
});
|
||||||
const nodes = res?.nodes;
|
const nodes = res?.nodes;
|
||||||
if (!nodes || nodes.length === 0) {
|
if (!nodes || nodes.length === 0) {
|
||||||
throw new Error("没有找到证书,请先在雷池控制台中手动上传证书,并关联防护站点,后续才可以自动更新");
|
throw new Error("没有找到证书,请先在雷池控制台中手动上传证书,并关联防护站点或控制台面板使用该证书,后续才可以自动更新");
|
||||||
}
|
}
|
||||||
const options = nodes.map(item => {
|
const options = nodes.map(item => {
|
||||||
return {
|
return {
|
||||||
|
|||||||
Reference in New Issue
Block a user