mirror of
https://github.com/certd/certd.git
synced 2026-04-28 07:57:25 +08:00
chore: acepanel
This commit is contained in:
@@ -6,21 +6,22 @@ import url from "url";
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* AcePanel授权
|
||||||
*/
|
*/
|
||||||
@IsAccess({
|
@IsAccess({
|
||||||
name: "acepanel",
|
name: "acepanel",
|
||||||
title: "ACEPanel授权",
|
title: "AcePanel授权",
|
||||||
desc: "",
|
desc: "",
|
||||||
icon: "svg:icon-lucky"
|
icon: "svg:icon-lucky"
|
||||||
})
|
})
|
||||||
export class AcepanelAccess extends BaseAccess {
|
export class AcePanelAccess extends BaseAccess {
|
||||||
|
|
||||||
@AccessInput({
|
@AccessInput({
|
||||||
title: "ACEPanel管理地址",
|
title: "AcePanel管理地址",
|
||||||
component: {
|
component: {
|
||||||
placeholder: "http://127.0.0.1:25475/entrance",
|
placeholder: "http://127.0.0.1:25475/entrance",
|
||||||
},
|
},
|
||||||
helper:"请输入ACEPanel管理地址,格式为http://127.0.0.1:25475/entrance, 要带安全入口,最后面不要加/",
|
helper:"请输入AcePanel管理地址,格式为http://127.0.0.1:25475/entrance, 要带安全入口,最后面不要加/",
|
||||||
required: true,
|
required: true,
|
||||||
})
|
})
|
||||||
endpoint = '';
|
endpoint = '';
|
||||||
@@ -239,4 +240,4 @@ export class AcepanelAccess extends BaseAccess {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
new AcepanelAccess();
|
new AcePanelAccess();
|
||||||
|
|||||||
+11
-11
@@ -1,12 +1,12 @@
|
|||||||
import {IsTaskPlugin, PageSearch, pluginGroups, RunStrategy, TaskInput} from "@certd/pipeline";
|
import { IsTaskPlugin, PageSearch, pluginGroups, RunStrategy, TaskInput } from "@certd/pipeline";
|
||||||
import {CertApplyPluginNames, CertInfo} from "@certd/plugin-cert";
|
import { CertApplyPluginNames, CertInfo } from "@certd/plugin-cert";
|
||||||
import {createCertDomainGetterInputDefine, createRemoteSelectInputDefine} from "@certd/plugin-lib";
|
import { createCertDomainGetterInputDefine, createRemoteSelectInputDefine } from "@certd/plugin-lib";
|
||||||
import {AcepanelAccess} from "../access.js";
|
|
||||||
import { AbstractPlusTaskPlugin } from "@certd/plugin-plus";
|
import { AbstractPlusTaskPlugin } from "@certd/plugin-plus";
|
||||||
|
import { AcePanelAccess } from "../access.js";
|
||||||
|
|
||||||
@IsTaskPlugin({
|
@IsTaskPlugin({
|
||||||
name: "AcepanelDeployToWebsite",
|
name: "AcePanelDeployToWebsite",
|
||||||
title: "ACEPanel-部署到网站",
|
title: "AcePanel-部署到网站",
|
||||||
desc: "上传证书并部署到指定网站",
|
desc: "上传证书并部署到指定网站",
|
||||||
icon: "svg:icon-lucky",
|
icon: "svg:icon-lucky",
|
||||||
group: pluginGroups.panel.key,
|
group: pluginGroups.panel.key,
|
||||||
@@ -18,7 +18,7 @@ import { AbstractPlusTaskPlugin } from "@certd/plugin-plus";
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
export class AcepanelDeployToWebsite extends AbstractPlusTaskPlugin {
|
export class AcePanelDeployToWebsite extends AbstractPlusTaskPlugin {
|
||||||
@TaskInput({
|
@TaskInput({
|
||||||
title: "域名证书",
|
title: "域名证书",
|
||||||
helper: "请选择前置任务输出的域名证书",
|
helper: "请选择前置任务输出的域名证书",
|
||||||
@@ -46,7 +46,7 @@ export class AcepanelDeployToWebsite extends AbstractPlusTaskPlugin {
|
|||||||
createRemoteSelectInputDefine({
|
createRemoteSelectInputDefine({
|
||||||
title: "部署网站",
|
title: "部署网站",
|
||||||
helper: "选择需要部署证书的网站",
|
helper: "选择需要部署证书的网站",
|
||||||
action: AcepanelDeployToWebsite.prototype.onGetWebsiteList.name,
|
action: AcePanelDeployToWebsite.prototype.onGetWebsiteList.name,
|
||||||
pager: false,
|
pager: false,
|
||||||
search: false
|
search: false
|
||||||
})
|
})
|
||||||
@@ -57,7 +57,7 @@ export class AcepanelDeployToWebsite extends AbstractPlusTaskPlugin {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async onGetWebsiteList(data: PageSearch = {}) {
|
async onGetWebsiteList(data: PageSearch = {}) {
|
||||||
const access = await this.getAccess<AcepanelAccess>(this.accessId);
|
const access = await this.getAccess<AcePanelAccess>(this.accessId);
|
||||||
const res = await access.getWebSiteList(data);
|
const res = await access.getWebSiteList(data);
|
||||||
const items = res.data.items;
|
const items = res.data.items;
|
||||||
if (!items || items.length === 0) {
|
if (!items || items.length === 0) {
|
||||||
@@ -76,7 +76,7 @@ export class AcepanelDeployToWebsite extends AbstractPlusTaskPlugin {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async execute(): Promise<void> {
|
async execute(): Promise<void> {
|
||||||
const access = await this.getAccess<AcepanelAccess>(this.accessId);
|
const access = await this.getAccess<AcePanelAccess>(this.accessId);
|
||||||
|
|
||||||
// 上传证书
|
// 上传证书
|
||||||
this.logger.info("开始上传证书");
|
this.logger.info("开始上传证书");
|
||||||
@@ -99,4 +99,4 @@ export class AcepanelDeployToWebsite extends AbstractPlusTaskPlugin {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
new AcepanelDeployToWebsite();
|
new AcePanelDeployToWebsite();
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
import {IsTaskPlugin, pluginGroups, RunStrategy, TaskInput} from "@certd/pipeline";
|
import {IsTaskPlugin, pluginGroups, RunStrategy, TaskInput} from "@certd/pipeline";
|
||||||
import {CertApplyPluginNames, CertInfo} from "@certd/plugin-cert";
|
import {CertApplyPluginNames, CertInfo} from "@certd/plugin-cert";
|
||||||
import {AcepanelAccess} from "../access.js";
|
import {AcePanelAccess} from "../access.js";
|
||||||
import { AbstractPlusTaskPlugin } from "@certd/plugin-plus";
|
import { AbstractPlusTaskPlugin } from "@certd/plugin-plus";
|
||||||
|
|
||||||
@IsTaskPlugin({
|
@IsTaskPlugin({
|
||||||
name: "AcepanelPanelCert",
|
name: "AcePanelPanelCert",
|
||||||
title: "ACEPanel-面板证书",
|
title: "AcePanel-面板证书",
|
||||||
desc: "部署ACEPanel面板证书",
|
desc: "部署AcePanel面板证书",
|
||||||
icon: "svg:icon-lucky",
|
icon: "svg:icon-lucky",
|
||||||
group: pluginGroups.panel.key,
|
group: pluginGroups.panel.key,
|
||||||
needPlus: true,
|
needPlus: true,
|
||||||
@@ -17,7 +17,7 @@ import { AbstractPlusTaskPlugin } from "@certd/plugin-plus";
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
export class AcepanelPanelCert extends AbstractPlusTaskPlugin {
|
export class AcePanelPanelCert extends AbstractPlusTaskPlugin {
|
||||||
@TaskInput({
|
@TaskInput({
|
||||||
title: "域名证书",
|
title: "域名证书",
|
||||||
helper: "请选择前置任务输出的域名证书",
|
helper: "请选择前置任务输出的域名证书",
|
||||||
@@ -42,7 +42,7 @@ export class AcepanelPanelCert extends AbstractPlusTaskPlugin {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async execute(): Promise<void> {
|
async execute(): Promise<void> {
|
||||||
const access = await this.getAccess<AcepanelAccess>(this.accessId);
|
const access = await this.getAccess<AcePanelAccess>(this.accessId);
|
||||||
|
|
||||||
this.logger.info("开始部署面板证书");
|
this.logger.info("开始部署面板证书");
|
||||||
await access.updatePanelCert(this.cert.crt, this.cert.key);
|
await access.updatePanelCert(this.cert.crt, this.cert.key);
|
||||||
@@ -50,4 +50,4 @@ export class AcepanelPanelCert extends AbstractPlusTaskPlugin {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
new AcepanelPanelCert();
|
new AcePanelPanelCert();
|
||||||
|
|||||||
Reference in New Issue
Block a user