Compare commits

...

5 Commits

Author SHA1 Message Date
xiaojunnuo c5d285f755 Merge branch 'v2-dev' of https://github.com/certd/certd into v2-dev 2026-03-25 12:48:56 +08:00
xiaojunnuo b1eb706925 fix: 修复cname校验报该授权无权限的bug 2026-03-25 12:48:47 +08:00
xiaojunnuo 5a01634ca3 build: release 2026-03-23 00:23:32 +08:00
xiaojunnuo 487676ce13 build: publish 2026-03-23 00:07:52 +08:00
xiaojunnuo 0280ca7b1a build: trigger build image 2026-03-23 00:07:40 +08:00
17 changed files with 41 additions and 26 deletions
+16
View File
@@ -3,6 +3,22 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [1.39.6](https://github.com/certd/certd/compare/v1.39.5...v1.39.6) (2026-03-22)
### Bug Fixes
* 修复模版id不正确导致修改到错误的模版流水线bug ([b1ff163](https://github.com/certd/certd/commit/b1ff163a2828b205297408d5aed21cf1eff335e8))
* 修复批量执行按钮无效的bug ([49703f0](https://github.com/certd/certd/commit/49703f08e55b303851086d9f36aca562d7999be6))
* remote-select默认pageSize设置为50,阿里云WAF不支持pageSize100 ([285532d](https://github.com/certd/certd/commit/285532d4318b90d0d7f8154f070274c0a0ec0269))
### Performance Improvements
* 火山引擎部署alb证书插件支持部署扩展证书以及删除已过期扩展证书 ([ffd2e81](https://github.com/certd/certd/commit/ffd2e8149e3a06bf3eec456ff85dbed793af9e90))
* 企业模式下面增加个人数据迁移的引导 ([431afd6](https://github.com/certd/certd/commit/431afd618f547cecf9a29433f46d4367619e2ecf))
* 新增阿里云证书清理插件 ([4b7eeaa](https://github.com/certd/certd/commit/4b7eeaa6e0a14d2e461c7c473a920a0966b1fe8e))
* 优化远程数据选择框,选择数据时不刷新闪烁 ([7f6a8bc](https://github.com/certd/certd/commit/7f6a8bc87e364685defe7f039264b2de064806c5))
* 支持复制粘贴任务步骤 ([acc2df2](https://github.com/certd/certd/commit/acc2df29def017fb8165f931b41ef95414966afc))
## [1.39.5](https://github.com/certd/certd/compare/v1.39.4...v1.39.5) (2026-03-18)
### Bug Fixes
+1 -1
View File
@@ -70,5 +70,5 @@
"bugs": {
"url": "https://github.com/publishlab/node-acme-client/issues"
},
"gitHead": "5f9341ad8edd08bb553c2d04e71f0838032e727f"
"gitHead": "b0ccab41e17cb16c87bfc0ec3b052d5e8a5d8435"
}
+1 -1
View File
@@ -47,5 +47,5 @@
"tslib": "^2.8.1",
"typescript": "^5.4.2"
},
"gitHead": "5f9341ad8edd08bb553c2d04e71f0838032e727f"
"gitHead": "b0ccab41e17cb16c87bfc0ec3b052d5e8a5d8435"
}
+1 -1
View File
@@ -45,5 +45,5 @@
"tslib": "^2.8.1",
"typescript": "^5.4.2"
},
"gitHead": "5f9341ad8edd08bb553c2d04e71f0838032e727f"
"gitHead": "b0ccab41e17cb16c87bfc0ec3b052d5e8a5d8435"
}
+1 -1
View File
@@ -24,5 +24,5 @@
"prettier": "^2.8.8",
"tslib": "^2.8.1"
},
"gitHead": "5f9341ad8edd08bb553c2d04e71f0838032e727f"
"gitHead": "b0ccab41e17cb16c87bfc0ec3b052d5e8a5d8435"
}
+1 -1
View File
@@ -31,5 +31,5 @@
"tslib": "^2.8.1",
"typescript": "^5.4.2"
},
"gitHead": "5f9341ad8edd08bb553c2d04e71f0838032e727f"
"gitHead": "b0ccab41e17cb16c87bfc0ec3b052d5e8a5d8435"
}
+1 -1
View File
@@ -56,5 +56,5 @@
"fetch"
]
},
"gitHead": "5f9341ad8edd08bb553c2d04e71f0838032e727f"
"gitHead": "b0ccab41e17cb16c87bfc0ec3b052d5e8a5d8435"
}
+1 -1
View File
@@ -32,5 +32,5 @@
"tslib": "^2.8.1",
"typescript": "^5.4.2"
},
"gitHead": "5f9341ad8edd08bb553c2d04e71f0838032e727f"
"gitHead": "b0ccab41e17cb16c87bfc0ec3b052d5e8a5d8435"
}
+1 -1
View File
@@ -64,5 +64,5 @@
"typeorm": "^0.3.11",
"typescript": "^5.4.2"
},
"gitHead": "5f9341ad8edd08bb553c2d04e71f0838032e727f"
"gitHead": "b0ccab41e17cb16c87bfc0ec3b052d5e8a5d8435"
}
@@ -3,8 +3,8 @@ import { IAccessService } from '@certd/pipeline';
export class AccessGetter implements IAccessService {
userId: number;
projectId?: number;
getter: <T>(id: any, userId?: number, projectId?: number) => Promise<T>;
constructor(userId: number, projectId: number, getter: (id: any, userId: number, projectId?: number) => Promise<any>) {
getter: <T>(id: any, userId?: number, projectId?: number, ignorePermission?: boolean) => Promise<T>;
constructor(userId: number, projectId: number, getter: (id: any, userId: number, projectId?: number, ignorePermission?: boolean) => Promise<any>) {
this.userId = userId;
this.projectId = projectId;
this.getter = getter;
+1 -1
View File
@@ -46,5 +46,5 @@
"typeorm": "^0.3.11",
"typescript": "^5.4.2"
},
"gitHead": "5f9341ad8edd08bb553c2d04e71f0838032e727f"
"gitHead": "b0ccab41e17cb16c87bfc0ec3b052d5e8a5d8435"
}
+1 -1
View File
@@ -38,5 +38,5 @@
"tslib": "^2.8.1",
"typescript": "^5.4.2"
},
"gitHead": "5f9341ad8edd08bb553c2d04e71f0838032e727f"
"gitHead": "b0ccab41e17cb16c87bfc0ec3b052d5e8a5d8435"
}
+1 -1
View File
@@ -57,5 +57,5 @@
"tslib": "^2.8.1",
"typescript": "^5.4.2"
},
"gitHead": "5f9341ad8edd08bb553c2d04e71f0838032e727f"
"gitHead": "b0ccab41e17cb16c87bfc0ec3b052d5e8a5d8435"
}
@@ -20,7 +20,7 @@ import * as commercial from '@certd/commercial-core';
import * as upload from '@midwayjs/upload';
import { setLogger } from '@certd/acme-client';
import {HiddenMiddleware} from "./middleware/hidden.js";
import * as swagger from '@midwayjs/swagger';
// import * as swagger from '@midwayjs/swagger';
//@ts-ignore
// process.env.UV_THREADPOOL_SIZE = 2
process.on('uncaughtException', error => {
@@ -62,10 +62,10 @@ process.on('uncaughtException', error => {
upload,
libServer,
commercial,
{
component: swagger,
enabledEnvironment: ['local']
},
// {
// component: swagger,
// enabledEnvironment: ['local']
// },
{
component: info,
enabledEnvironment: ['local'],
@@ -8,7 +8,7 @@ import {
SysSettingsService,
ValidateException
} from "@certd/lib-server";
import { CnameProvider, CnameRecord, IAccessService } from "@certd/pipeline";
import { CnameProvider, CnameRecord } from "@certd/pipeline";
import { createDnsProvider, DomainParser, IDnsProvider } from "@certd/plugin-cert";
import { Inject, Provide, Scope, ScopeEnum } from "@midwayjs/core";
import { InjectEntityModel } from "@midwayjs/typeorm";
@@ -252,7 +252,6 @@ export class CnameRecordService extends BaseService<CnameRecordEntity> {
}
await this.getByDomain(bean.domain, bean.userId,bean.projectId);
const taskService = this.taskServiceBuilder.create({ userId: bean.userId, projectId: bean.projectId });
const subDomainGetter = await taskService.getSubDomainsGetter();
const domainParser = new DomainParser(subDomainGetter);
@@ -290,10 +289,10 @@ export class CnameRecordService extends BaseService<CnameRecordEntity> {
});
}
const serviceGetter = this.taskServiceBuilder.create({ userId: bean.userId, projectId: bean.projectId });
const accessGetter:IAccessService = await serviceGetter.get("accessService");
const access = await accessGetter.getById(cnameProvider.accessId);
const context = { access, logger, http, utils, domainParser, serviceGetter };
const record = await this.getWithAccessByDomain(bean.domain, bean.userId,bean.projectId);
const access = record.cnameProvider.access
const context = { access, logger, http, utils, domainParser, serviceGetter:taskService };
const dnsProvider: IDnsProvider = await createDnsProvider({
dnsProviderType: cnameProvider.dnsProviderType,
context
+1 -1
View File
@@ -1 +1 @@
00:52
00:07
+1 -1
View File
@@ -1 +1 @@
01:11
00:23