mirror of https://github.com/certd/certd
perf: 优化插件开发,dnsProvider无需写http logger 变量
parent
7c5166c8bb
commit
fcbb5e46a1
|
@ -102,6 +102,7 @@ export abstract class AbstractTaskPlugin implements ITaskPlugin {
|
||||||
_result: TaskResult = { clearLastStatus: false, files: [], pipelineVars: {}, pipelinePrivateVars: {} };
|
_result: TaskResult = { clearLastStatus: false, files: [], pipelineVars: {}, pipelinePrivateVars: {} };
|
||||||
ctx!: TaskInstanceContext;
|
ctx!: TaskInstanceContext;
|
||||||
logger!: ILogger;
|
logger!: ILogger;
|
||||||
|
http!: HttpClient;
|
||||||
accessService!: IAccessService;
|
accessService!: IAccessService;
|
||||||
|
|
||||||
clearLastStatus() {
|
clearLastStatus() {
|
||||||
|
@ -122,6 +123,7 @@ export abstract class AbstractTaskPlugin implements ITaskPlugin {
|
||||||
this.ctx = ctx;
|
this.ctx = ctx;
|
||||||
this.logger = ctx.logger;
|
this.logger = ctx.logger;
|
||||||
this.accessService = ctx.accessService;
|
this.accessService = ctx.accessService;
|
||||||
|
this.http = ctx.http;
|
||||||
}
|
}
|
||||||
|
|
||||||
async getAccess<T = any>(accessId: string) {
|
async getAccess<T = any>(accessId: string) {
|
||||||
|
|
|
@ -2,12 +2,17 @@ import { CreateRecordOptions, DnsProviderContext, DnsProviderDefine, IDnsProvide
|
||||||
import psl from "psl";
|
import psl from "psl";
|
||||||
import { dnsProviderRegistry } from "./registry.js";
|
import { dnsProviderRegistry } from "./registry.js";
|
||||||
import { Decorator } from "@certd/pipeline";
|
import { Decorator } from "@certd/pipeline";
|
||||||
|
import { HttpClient, ILogger } from "@certd/basic";
|
||||||
|
|
||||||
export abstract class AbstractDnsProvider<T = any> implements IDnsProvider<T> {
|
export abstract class AbstractDnsProvider<T = any> implements IDnsProvider<T> {
|
||||||
ctx!: DnsProviderContext;
|
ctx!: DnsProviderContext;
|
||||||
|
http!: HttpClient;
|
||||||
|
logger!: ILogger;
|
||||||
|
|
||||||
setCtx(ctx: DnsProviderContext) {
|
setCtx(ctx: DnsProviderContext) {
|
||||||
this.ctx = ctx;
|
this.ctx = ctx;
|
||||||
|
this.logger = ctx.logger;
|
||||||
|
this.http = ctx.http;
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract createRecord(options: CreateRecordOptions): Promise<T>;
|
abstract createRecord(options: CreateRecordOptions): Promise<T>;
|
||||||
|
|
|
@ -92,7 +92,6 @@ export abstract class CertApplyBasePlugin extends AbstractTaskPlugin {
|
||||||
csrInfo!: string;
|
csrInfo!: string;
|
||||||
|
|
||||||
userContext!: IContext;
|
userContext!: IContext;
|
||||||
http!: HttpClient;
|
|
||||||
lastStatus!: Step;
|
lastStatus!: Step;
|
||||||
|
|
||||||
@TaskOutput({
|
@TaskOutput({
|
||||||
|
@ -102,7 +101,6 @@ export abstract class CertApplyBasePlugin extends AbstractTaskPlugin {
|
||||||
|
|
||||||
async onInstance() {
|
async onInstance() {
|
||||||
this.userContext = this.ctx.userContext;
|
this.userContext = this.ctx.userContext;
|
||||||
this.http = this.ctx.http;
|
|
||||||
this.lastStatus = this.ctx.lastStatus as Step;
|
this.lastStatus = this.ctx.lastStatus as Step;
|
||||||
await this.onInit();
|
await this.onInit();
|
||||||
}
|
}
|
||||||
|
|
|
@ -96,7 +96,6 @@ export class CertApplyLegoPlugin extends CertApplyBasePlugin {
|
||||||
this.accessService = this.ctx.accessService;
|
this.accessService = this.ctx.accessService;
|
||||||
this.logger = this.ctx.logger;
|
this.logger = this.ctx.logger;
|
||||||
this.userContext = this.ctx.userContext;
|
this.userContext = this.ctx.userContext;
|
||||||
this.http = this.ctx.http;
|
|
||||||
this.lastStatus = this.ctx.lastStatus as Step;
|
this.lastStatus = this.ctx.lastStatus as Step;
|
||||||
if (this.legoEabAccessId) {
|
if (this.legoEabAccessId) {
|
||||||
this.eab = await this.accessService.getById(this.legoEabAccessId);
|
this.eab = await this.accessService.getById(this.legoEabAccessId);
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
||||||
import { Autowire } from '@certd/pipeline';
|
import { Autowire } from '@certd/pipeline';
|
||||||
import { ILogger } from '@certd/basic';
|
|
||||||
|
|
||||||
import { AliyunAccess, AliyunClient } from '@certd/plugin-plus';
|
import { AliyunAccess, AliyunClient } from '@certd/plugin-plus';
|
||||||
|
|
||||||
|
@ -14,8 +13,6 @@ export class AliyunDnsProvider extends AbstractDnsProvider {
|
||||||
client: any;
|
client: any;
|
||||||
@Autowire()
|
@Autowire()
|
||||||
access!: AliyunAccess;
|
access!: AliyunAccess;
|
||||||
@Autowire()
|
|
||||||
logger!: ILogger;
|
|
||||||
async onInstance() {
|
async onInstance() {
|
||||||
const access: any = this.access;
|
const access: any = this.access;
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import { AbstractTaskPlugin, HttpClient, IsTaskPlugin, pluginGroups, RunStrategy, TaskInput } from '@certd/pipeline';
|
import { AbstractTaskPlugin, IsTaskPlugin, pluginGroups, RunStrategy, TaskInput } from '@certd/pipeline';
|
||||||
import { CertInfo } from '@certd/plugin-cert';
|
import { CertInfo } from '@certd/plugin-cert';
|
||||||
import { CacheflyAccess } from '../access.js';
|
import { CacheflyAccess } from '../access.js';
|
||||||
|
|
||||||
|
@ -35,12 +35,9 @@ export class CacheFlyPlugin extends AbstractTaskPlugin {
|
||||||
required: true,
|
required: true,
|
||||||
})
|
})
|
||||||
accessId!: string;
|
accessId!: string;
|
||||||
http!: HttpClient;
|
|
||||||
private readonly baseApi = 'https://api.cachefly.com';
|
private readonly baseApi = 'https://api.cachefly.com';
|
||||||
|
|
||||||
async onInstance() {
|
async onInstance() {}
|
||||||
this.http = this.ctx.http;
|
|
||||||
}
|
|
||||||
|
|
||||||
private async doRequestApi(url: string, data: any = null, method = 'post', token: string | null = null) {
|
private async doRequestApi(url: string, data: any = null, method = 'post', token: string | null = null) {
|
||||||
const headers = {
|
const headers = {
|
||||||
|
|
|
@ -1,6 +1,4 @@
|
||||||
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
||||||
import { Autowire } from '@certd/pipeline';
|
|
||||||
import { HttpClient, ILogger } from '@certd/basic';
|
|
||||||
|
|
||||||
import { CloudflareAccess } from './access.js';
|
import { CloudflareAccess } from './access.js';
|
||||||
|
|
||||||
|
@ -27,15 +25,11 @@ export type CloudflareRecord = {
|
||||||
})
|
})
|
||||||
export class CloudflareDnsProvider extends AbstractDnsProvider<CloudflareRecord> {
|
export class CloudflareDnsProvider extends AbstractDnsProvider<CloudflareRecord> {
|
||||||
// 通过Autowire传递context
|
// 通过Autowire传递context
|
||||||
@Autowire()
|
|
||||||
logger!: ILogger;
|
|
||||||
access!: CloudflareAccess;
|
access!: CloudflareAccess;
|
||||||
http!: HttpClient;
|
|
||||||
async onInstance() {
|
async onInstance() {
|
||||||
//一些初始化的操作
|
//一些初始化的操作
|
||||||
// 也可以通过ctx成员变量传递context, 与Autowire效果一样
|
// 也可以通过ctx成员变量传递context, 与Autowire效果一样
|
||||||
this.access = this.ctx.access as CloudflareAccess;
|
this.access = this.ctx.access as CloudflareAccess;
|
||||||
this.http = this.ctx.http;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async getZoneId(domain: string) {
|
async getZoneId(domain: string) {
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
||||||
import { Autowire } from '@certd/pipeline';
|
import { Autowire } from '@certd/pipeline';
|
||||||
import { HttpClient, ILogger } from '@certd/basic';
|
|
||||||
|
|
||||||
import { DemoAccess } from './access.js';
|
import { DemoAccess } from './access.js';
|
||||||
import { isDev } from '../../utils/env.js';
|
import { isDev } from '../../utils/env.js';
|
||||||
|
@ -22,13 +21,9 @@ export class DemoDnsProvider extends AbstractDnsProvider<DemoRecord> {
|
||||||
// 通过Autowire注入工具对象
|
// 通过Autowire注入工具对象
|
||||||
@Autowire()
|
@Autowire()
|
||||||
access!: DemoAccess;
|
access!: DemoAccess;
|
||||||
@Autowire()
|
|
||||||
logger!: ILogger;
|
|
||||||
http!: HttpClient;
|
|
||||||
|
|
||||||
async onInstance() {
|
async onInstance() {
|
||||||
// 也可以通过ctx成员变量传递context, 与Autowire效果一样
|
// 也可以通过ctx成员变量传递context, 与Autowire效果一样
|
||||||
this.http = this.ctx.http;
|
|
||||||
this.logger.debug('access', this.access);
|
this.logger.debug('access', this.access);
|
||||||
//初始化的操作
|
//初始化的操作
|
||||||
//...
|
//...
|
||||||
|
|
|
@ -120,6 +120,16 @@ export class DemoTestPlugin extends AbstractTaskPlugin {
|
||||||
this.logger.info('select:', select);
|
this.logger.info('select:', select);
|
||||||
this.logger.info('switch:', this.switch);
|
this.logger.info('switch:', this.switch);
|
||||||
this.logger.info('授权id:', accessId);
|
this.logger.info('授权id:', accessId);
|
||||||
|
|
||||||
|
const res = await this.http.request({
|
||||||
|
url: 'https://api.demo.com',
|
||||||
|
method: 'GET',
|
||||||
|
});
|
||||||
|
if (res.code !== 0) {
|
||||||
|
//检查res是否报错,你需要抛异常,来结束插件执行,否则会判定为执行成功,下次执行时会跳过本任务
|
||||||
|
throw new Error(res.message);
|
||||||
|
}
|
||||||
|
this.logger.info('部署成功:', res);
|
||||||
}
|
}
|
||||||
|
|
||||||
//此方法演示,如何让前端在添加插件时可以从后端获取选项,这里是后端返回选项的方法
|
//此方法演示,如何让前端在添加插件时可以从后端获取选项,这里是后端返回选项的方法
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import { AbstractTaskPlugin, HttpClient, IsTaskPlugin, pluginGroups, RunStrategy, TaskInput } from '@certd/pipeline';
|
import { AbstractTaskPlugin, IsTaskPlugin, pluginGroups, RunStrategy, TaskInput } from '@certd/pipeline';
|
||||||
import { CertInfo } from '@certd/plugin-cert';
|
import { CertInfo } from '@certd/plugin-cert';
|
||||||
import { GcoreAccess } from '../access.js';
|
import { GcoreAccess } from '../access.js';
|
||||||
|
|
||||||
|
@ -45,17 +45,14 @@ export class GcoreflushPlugin extends AbstractTaskPlugin {
|
||||||
required: true,
|
required: true,
|
||||||
})
|
})
|
||||||
accessId!: string;
|
accessId!: string;
|
||||||
http!: HttpClient;
|
|
||||||
private readonly baseApi = 'https://api.gcore.com';
|
private readonly baseApi = 'https://api.gcore.com';
|
||||||
|
|
||||||
async onInstance() {
|
async onInstance() {}
|
||||||
this.http = this.ctx.http;
|
|
||||||
}
|
|
||||||
|
|
||||||
private async doRequestApi(url: string, data: any = null, method = 'post', token: string | null = null) {
|
private async doRequestApi(url: string, data: any = null, method = 'post', token: string | null = null) {
|
||||||
const headers = {
|
const headers = {
|
||||||
'Content-Type': 'application/json',
|
'Content-Type': 'application/json',
|
||||||
...(token ? { 'authorization': `Bearer ${token}` } : {}),
|
...(token ? { authorization: `Bearer ${token}` } : {}),
|
||||||
};
|
};
|
||||||
const res = await this.http.request<any, any>({
|
const res = await this.http.request<any, any>({
|
||||||
url,
|
url,
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import { AbstractTaskPlugin, HttpClient, IsTaskPlugin, pluginGroups, RunStrategy, TaskInput } from '@certd/pipeline';
|
import { AbstractTaskPlugin, IsTaskPlugin, pluginGroups, RunStrategy, TaskInput } from '@certd/pipeline';
|
||||||
import { CertInfo } from '@certd/plugin-cert';
|
import { CertInfo } from '@certd/plugin-cert';
|
||||||
import { GcoreAccess } from '../access.js';
|
import { GcoreAccess } from '../access.js';
|
||||||
|
|
||||||
|
@ -41,17 +41,14 @@ export class GcoreuploadPlugin extends AbstractTaskPlugin {
|
||||||
required: true,
|
required: true,
|
||||||
})
|
})
|
||||||
accessId!: string;
|
accessId!: string;
|
||||||
http!: HttpClient;
|
|
||||||
private readonly baseApi = 'https://api.gcore.com';
|
private readonly baseApi = 'https://api.gcore.com';
|
||||||
|
|
||||||
async onInstance() {
|
async onInstance() {}
|
||||||
this.http = this.ctx.http;
|
|
||||||
}
|
|
||||||
|
|
||||||
private async doRequestApi(url: string, data: any = null, method = 'post', token: string | null = null) {
|
private async doRequestApi(url: string, data: any = null, method = 'post', token: string | null = null) {
|
||||||
const headers = {
|
const headers = {
|
||||||
'Content-Type': 'application/json',
|
'Content-Type': 'application/json',
|
||||||
...(token ? { 'authorization': `Bearer ${token}` } : {}),
|
...(token ? { authorization: `Bearer ${token}` } : {}),
|
||||||
};
|
};
|
||||||
const res = await this.http.request<any, any>({
|
const res = await this.http.request<any, any>({
|
||||||
url,
|
url,
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
import * as _ from 'lodash-es';
|
import * as _ from 'lodash-es';
|
||||||
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
||||||
import { Autowire } from '@certd/pipeline';
|
import { Autowire } from '@certd/pipeline';
|
||||||
import { ILogger } from '@certd/basic';
|
|
||||||
|
|
||||||
import { HuaweiAccess } from '../access/index.js';
|
import { HuaweiAccess } from '../access/index.js';
|
||||||
import { ApiRequestOptions, HuaweiYunClient } from '@certd/lib-huawei';
|
import { ApiRequestOptions, HuaweiYunClient } from '@certd/lib-huawei';
|
||||||
|
@ -20,8 +19,6 @@ export class HuaweiDnsProvider extends AbstractDnsProvider {
|
||||||
client!: HuaweiYunClient;
|
client!: HuaweiYunClient;
|
||||||
@Autowire()
|
@Autowire()
|
||||||
access!: HuaweiAccess;
|
access!: HuaweiAccess;
|
||||||
@Autowire()
|
|
||||||
logger!: ILogger;
|
|
||||||
domainEndpoint = 'https://domains-external.myhuaweicloud.com';
|
domainEndpoint = 'https://domains-external.myhuaweicloud.com';
|
||||||
dnsEndpoint = 'https://dns.cn-south-1.myhuaweicloud.com';
|
dnsEndpoint = 'https://dns.cn-south-1.myhuaweicloud.com';
|
||||||
async onInstance() {
|
async onInstance() {
|
||||||
|
|
|
@ -1,6 +1,4 @@
|
||||||
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
||||||
import { Autowire } from '@certd/pipeline';
|
|
||||||
import { HttpClient, ILogger } from '@certd/basic';
|
|
||||||
import qs from 'qs';
|
import qs from 'qs';
|
||||||
import { NamesiloAccess } from './access.js';
|
import { NamesiloAccess } from './access.js';
|
||||||
import { merge } from 'lodash-es';
|
import { merge } from 'lodash-es';
|
||||||
|
@ -19,15 +17,11 @@ export type NamesiloRecord = {
|
||||||
})
|
})
|
||||||
export class NamesiloDnsProvider extends AbstractDnsProvider<NamesiloRecord> {
|
export class NamesiloDnsProvider extends AbstractDnsProvider<NamesiloRecord> {
|
||||||
// 通过Autowire传递context
|
// 通过Autowire传递context
|
||||||
@Autowire()
|
|
||||||
logger!: ILogger;
|
|
||||||
access!: NamesiloAccess;
|
access!: NamesiloAccess;
|
||||||
http!: HttpClient;
|
|
||||||
async onInstance() {
|
async onInstance() {
|
||||||
//一些初始化的操作
|
//一些初始化的操作
|
||||||
// 也可以通过ctx成员变量传递context, 与Autowire效果一样
|
// 也可以通过ctx成员变量传递context, 与Autowire效果一样
|
||||||
this.access = this.ctx.access as NamesiloAccess;
|
this.access = this.ctx.access as NamesiloAccess;
|
||||||
this.http = this.ctx.http;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private async doRequest(url: string, params: any = null) {
|
private async doRequest(url: string, params: any = null) {
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
import { Autowire } from '@certd/pipeline';
|
import { Autowire } from '@certd/pipeline';
|
||||||
import { HttpClient, ILogger } from '@certd/basic';
|
|
||||||
|
|
||||||
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
||||||
import * as _ from 'lodash-es';
|
import * as _ from 'lodash-es';
|
||||||
|
@ -13,13 +12,8 @@ import { DnspodAccess } from '../access/index.js';
|
||||||
deprecated: 'dnspod已废弃,请换成腾讯云',
|
deprecated: 'dnspod已废弃,请换成腾讯云',
|
||||||
})
|
})
|
||||||
export class DnspodDnsProvider extends AbstractDnsProvider {
|
export class DnspodDnsProvider extends AbstractDnsProvider {
|
||||||
@Autowire()
|
|
||||||
http!: HttpClient;
|
|
||||||
|
|
||||||
@Autowire()
|
@Autowire()
|
||||||
access!: DnspodAccess;
|
access!: DnspodAccess;
|
||||||
@Autowire()
|
|
||||||
logger!: ILogger;
|
|
||||||
|
|
||||||
loginToken: any;
|
loginToken: any;
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
import { Autowire } from '@certd/pipeline';
|
import { Autowire } from '@certd/pipeline';
|
||||||
import { HttpClient, ILogger } from '@certd/basic';
|
|
||||||
|
|
||||||
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
||||||
import { TencentAccess } from '@certd/plugin-plus';
|
import { TencentAccess } from '@certd/plugin-plus';
|
||||||
|
@ -11,13 +10,8 @@ import { TencentAccess } from '@certd/plugin-plus';
|
||||||
accessType: 'tencent',
|
accessType: 'tencent',
|
||||||
})
|
})
|
||||||
export class TencentDnsProvider extends AbstractDnsProvider {
|
export class TencentDnsProvider extends AbstractDnsProvider {
|
||||||
@Autowire()
|
|
||||||
http!: HttpClient;
|
|
||||||
|
|
||||||
@Autowire()
|
@Autowire()
|
||||||
access!: TencentAccess;
|
access!: TencentAccess;
|
||||||
@Autowire()
|
|
||||||
logger!: ILogger;
|
|
||||||
|
|
||||||
client!: any;
|
client!: any;
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
import { AbstractDnsProvider, CreateRecordOptions, IsDnsProvider, RemoveRecordOptions } from '@certd/plugin-cert';
|
||||||
import { Autowire } from '@certd/pipeline';
|
import { Autowire } from '@certd/pipeline';
|
||||||
import { HttpClient, ILogger } from '@certd/basic';
|
|
||||||
|
|
||||||
|
|
||||||
import { WestAccess } from './access.js';
|
import { WestAccess } from './access.js';
|
||||||
|
|
||||||
|
@ -26,13 +24,9 @@ export class WestDnsProvider extends AbstractDnsProvider<westRecord> {
|
||||||
// 通过Autowire注入工具对象
|
// 通过Autowire注入工具对象
|
||||||
@Autowire()
|
@Autowire()
|
||||||
access!: WestAccess;
|
access!: WestAccess;
|
||||||
@Autowire()
|
|
||||||
logger!: ILogger;
|
|
||||||
http!: HttpClient;
|
|
||||||
|
|
||||||
async onInstance() {
|
async onInstance() {
|
||||||
// 也可以通过ctx成员变量传递context, 与Autowire效果一样
|
// 也可以通过ctx成员变量传递context, 与Autowire效果一样
|
||||||
this.http = this.ctx.http;
|
|
||||||
this.logger.debug('access:', this.access);
|
this.logger.debug('access:', this.access);
|
||||||
//初始化的操作
|
//初始化的操作
|
||||||
//...
|
//...
|
||||||
|
@ -45,7 +39,7 @@ export class WestDnsProvider extends AbstractDnsProvider<westRecord> {
|
||||||
} else {
|
} else {
|
||||||
data.apidomainkey = this.access.apidomainkey;
|
data.apidomainkey = this.access.apidomainkey;
|
||||||
}
|
}
|
||||||
const res = await this.http.request<any, any>({
|
const res = await this.ctx.http.request<any, any>({
|
||||||
url,
|
url,
|
||||||
method,
|
method,
|
||||||
data,
|
data,
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
import { AbstractTaskPlugin, IsTaskPlugin, pluginGroups, RunStrategy, TaskInput } from '@certd/pipeline';
|
import { AbstractTaskPlugin, IsTaskPlugin, pluginGroups, RunStrategy, TaskInput } from '@certd/pipeline';
|
||||||
import { CertInfo } from '@certd/plugin-cert';
|
import { CertInfo } from '@certd/plugin-cert';
|
||||||
import { WoaiAccess } from '../access.js';
|
import { WoaiAccess } from '../access.js';
|
||||||
import { HttpClient } from '@certd/basic';
|
|
||||||
|
|
||||||
@IsTaskPlugin({
|
@IsTaskPlugin({
|
||||||
name: 'WoaiCDN',
|
name: 'WoaiCDN',
|
||||||
|
@ -43,12 +42,9 @@ export class WoaiCdnPlugin extends AbstractTaskPlugin {
|
||||||
required: true,
|
required: true,
|
||||||
})
|
})
|
||||||
accessId!: string;
|
accessId!: string;
|
||||||
http!: HttpClient;
|
|
||||||
private readonly baseApi = 'https://console.edeg.51vs.club';
|
private readonly baseApi = 'https://console.edeg.51vs.club';
|
||||||
|
|
||||||
async onInstance() {
|
async onInstance() {}
|
||||||
this.http = this.ctx.http;
|
|
||||||
}
|
|
||||||
|
|
||||||
private async doRequestApi(url: string, data: any = null, method = 'post', token: string | null = null) {
|
private async doRequestApi(url: string, data: any = null, method = 'post', token: string | null = null) {
|
||||||
const headers = {
|
const headers = {
|
||||||
|
|
Loading…
Reference in New Issue