diff --git a/.gitignore b/.gitignore index 61b05105..65958ab5 100644 --- a/.gitignore +++ b/.gitignore @@ -17,6 +17,7 @@ gen /test/*.private.* /*.log +nohup.out /packages/ui/*/.idea /packages/ui/*/node_modules diff --git a/CHANGELOG.md b/CHANGELOG.md index 8d46a63e..26413cd1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,16 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/certd/certd/compare/v1.34.2...v1.34.3) (2025-05-15) + +### Performance Improvements + +* 宝塔插件、1panel 改成完全免费版 ([a53b6cd](https://github.com/certd/certd/commit/a53b6cd28ff2ce5662ada82379ea44a06b179b81)) +* 添加 FlexCDN 更新证书插件 ([bf040d4](https://github.com/certd/certd/commit/bf040d4c428d29c06fbaca5e29100e0c583b2b0b)) +* 小助手可以关闭 ([3e2101a](https://github.com/certd/certd/commit/3e2101aa5b56548614102e900d59819ce8c7e97c)) +* 支持部署到maoyun cdn ([68f333f](https://github.com/certd/certd/commit/68f333fb87ce85eed27436ecb0f76351c0ccb0d1)) +* 支持AI分析报错 ([aa96859](https://github.com/certd/certd/commit/aa96859798166426e485947a6590464de189de05)) + ## [1.34.2](https://github.com/certd/certd/compare/v1.34.1...v1.34.2) (2025-05-11) ### Bug Fixes diff --git a/README.md b/README.md index d2ce75e3..13eee2ba 100644 --- a/README.md +++ b/README.md @@ -149,14 +149,14 @@ https://afdian.com/a/greper 专业版特权对比 -| 功能 | 免费版 | 专业版 | -|---------|--------------------|-----------------------------| -| 免费证书申请 | 免费无限制 | 免费无限制 | -| 域名数量 | 无限制 | 无限制 | -| 证书流水线条数 | 无限制 | 无限制 | -| 站点证书监控 | 限制1条 | 无限制 | -| 自动部署插件 | 阿里云CDN、腾讯云、七牛CDN、主机部署等 | 支持群晖、宝塔、1Panel等,持续开发中 | -| 通知 | 邮件通知、自定义webhook | 邮件免配置、企微、飞书、anpush、server酱等 | +| 功能 | 免费版 | 专业版 | +|---------|---------------------------------------|--------------------------------| +| 免费证书申请 | 免费无限制 | 免费无限制 | +| 域名数量 | 无限制 | 无限制 | +| 证书流水线条数 | 无限制 | 无限制 | +| 站点证书监控 | 限制1条 | 无限制 | +| 自动部署插件 | 阿里云CDN、腾讯云、七牛CDN、主机部署、宝塔、1Panel等大部分插件 | 群晖 | +| 通知 | 邮件通知、自定义webhook | 邮件免配置、企微、钉钉、飞书、anpush、server酱等 | ************************ diff --git a/build.trigger b/build.trigger index f19ef6e2..ffbe06fa 100644 --- a/build.trigger +++ b/build.trigger @@ -1 +1 @@ -20:28 +00:14 diff --git a/docs/.vitepress/config.ts b/docs/.vitepress/config.ts index 02847ebc..8b796c63 100644 --- a/docs/.vitepress/config.ts +++ b/docs/.vitepress/config.ts @@ -106,6 +106,7 @@ export default defineConfig({ { text: "常见问题", items: [ + {text: "QA", link: "/guide/qa/use"}, {text: "常见报错处理", link: "/guide/qa/"}, {text: "群晖证书部署", link: "/guide/use/synology/"}, {text: "腾讯云密钥获取", link: "/guide/use/tencent/"}, diff --git a/docs/guide/changelogs/CHANGELOG.md b/docs/guide/changelogs/CHANGELOG.md index 8d46a63e..26413cd1 100644 --- a/docs/guide/changelogs/CHANGELOG.md +++ b/docs/guide/changelogs/CHANGELOG.md @@ -3,6 +3,16 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/certd/certd/compare/v1.34.2...v1.34.3) (2025-05-15) + +### Performance Improvements + +* 宝塔插件、1panel 改成完全免费版 ([a53b6cd](https://github.com/certd/certd/commit/a53b6cd28ff2ce5662ada82379ea44a06b179b81)) +* 添加 FlexCDN 更新证书插件 ([bf040d4](https://github.com/certd/certd/commit/bf040d4c428d29c06fbaca5e29100e0c583b2b0b)) +* 小助手可以关闭 ([3e2101a](https://github.com/certd/certd/commit/3e2101aa5b56548614102e900d59819ce8c7e97c)) +* 支持部署到maoyun cdn ([68f333f](https://github.com/certd/certd/commit/68f333fb87ce85eed27436ecb0f76351c0ccb0d1)) +* 支持AI分析报错 ([aa96859](https://github.com/certd/certd/commit/aa96859798166426e485947a6590464de189de05)) + ## [1.34.2](https://github.com/certd/certd/compare/v1.34.1...v1.34.2) (2025-05-11) ### Bug Fixes diff --git a/docs/guide/development/demo/access.md b/docs/guide/development/demo/access.md new file mode 100644 index 00000000..550d9184 --- /dev/null +++ b/docs/guide/development/demo/access.md @@ -0,0 +1,88 @@ + +# 授权插件Demo + +```ts +import { AccessInput, BaseAccess, IsAccess } from '@certd/pipeline'; +import { isDev } from '../../utils/env.js'; + +/** + * 这个注解将注册一个授权配置 + * 在certd的后台管理系统中,用户可以选择添加此类型的授权 + */ +@IsAccess({ + name: 'demo', + title: '授权插件示例', + icon: 'clarity:plugin-line', + desc: '', +}) +export class DemoAccess extends BaseAccess { + /** + * 授权属性配置 + */ + @AccessInput({ + title: '密钥Id', + component: { + placeholder: 'demoKeyId', + }, + required: true, + }) + demoKeyId = ''; + + /** + * 授权属性配置 + */ + @AccessInput({ + //标题 + title: '密钥串', + component: { + //input组件的placeholder + placeholder: 'demoKeySecret', + }, + //是否必填 + required: true, + //改属性是否需要加密 + encrypt: true, + }) + //属性名称 + demoKeySecret = ''; +} +new DemoAccess(); +``` + + +# 阿里云授权 +```ts + +import { IsAccess, AccessInput, BaseAccess } from "@certd/pipeline"; + +@IsAccess({ + name: "aliyun", + title: "阿里云授权", + desc: "", + icon: "ant-design:aliyun-outlined", + order: 0, +}) +export class AliyunAccess extends BaseAccess { + @AccessInput({ + title: "accessKeyId", + component: { + placeholder: "accessKeyId", + }, + helper: "登录阿里云控制台->AccessKey管理页面获取。", + required: true, + }) + accessKeyId = ""; + @AccessInput({ + title: "accessKeySecret", + component: { + placeholder: "accessKeySecret", + }, + required: true, + encrypt: true, + helper: "注意:证书申请需要dns解析权限;其他阿里云插件,需要对应的权限,比如证书上传需要证书管理权限;嫌麻烦就用主账号的全量权限的accessKey", + }) + accessKeySecret = ""; +} + +new AliyunAccess(); +``` \ No newline at end of file diff --git a/docs/guide/feature/safe/index.md b/docs/guide/feature/safe/index.md index 6aec4647..b3d2dbdd 100644 --- a/docs/guide/feature/safe/index.md +++ b/docs/guide/feature/safe/index.md @@ -45,4 +45,5 @@ Certd 存储了证书以及授权等敏感数据,所以需要严格保障安 * 请`务必`使用`web应用防火墙`防护本应用,防止XSS、SQL注入等攻击 * 请`务必`做好`服务器本身`的安全防护,防止数据库泄露 * 请`务必`做好[`数据备份`](../../use/backup/),避免数据丢失 +* 请`务必`修改管理员账号用户名,且建议将admin注册为普通用户,且设置为禁用。 * 建议开启[`站点隐藏`](./hidden/)功能 diff --git a/docs/guide/feature/safe/suggest.md b/docs/guide/feature/safe/suggest.md deleted file mode 100644 index e69de29b..00000000 diff --git a/docs/guide/install/source/index.md b/docs/guide/install/source/index.md index 28a9caf0..38f92fd1 100644 --- a/docs/guide/install/source/index.md +++ b/docs/guide/install/source/index.md @@ -1,5 +1,6 @@ # 源码部署 -如果没有`git`和`nodejs`基础,则不推荐 +如果没有开发基础、没有运维基础、没有`git`和`nodejs`基础,强烈不推荐此方式 + ## 一、源码安装 ### 环境要求 @@ -42,8 +43,8 @@ git pull kill -9 $(lsof -t -i:7001) # 重新编译启动 ./start.sh -``` +``` ::: warning 升级certd版本前,切记切记先备份一下数据 ::: diff --git a/docs/guide/qa/images/baota-net.png b/docs/guide/qa/images/baota-net.png new file mode 100644 index 00000000..f21da36c Binary files /dev/null and b/docs/guide/qa/images/baota-net.png differ diff --git a/docs/guide/qa/index.md b/docs/guide/qa/index.md index eae66615..adab1b3e 100644 --- a/docs/guide/qa/index.md +++ b/docs/guide/qa/index.md @@ -16,4 +16,58 @@ services: # # ↓↓↓↓ ------- # 如果你服务器部署在国外,可以用这个替换上面阿里云的公共dns # - 8.8.8.8 # 谷歌公共dns # - 8.8.4.4 -``` \ No newline at end of file +``` + +如果仍然有问题,按如下步骤检查是否能够ping通域名 +```shell +docker exec -it certd /bin/sh +ping www.baidu.com +ping gg.px.certd.handfree.work +ping app.handfree.work +``` + +如果您是宝塔部署的 +可以试试将容器网络加入brige网络,看是否解决问题 +![img.png](images/baota-net.png) + +如果还是不行,请联系我们 + + +## 2. 连接IPv6超时 +docker-compose 需要放开IPv6网络的配置 +```yaml +services: + certd: + networks: + - ip6net +# ↓↓↓↓ -------------------------------------------------------------- 启用ipv6网络,还需要把上面networks的注释放开 +networks: + ip6net: + enable_ipv6: true + ipam: + config: + - subnet: 2001:db8::/64 + +``` + +## 3. SSL_CERT_NOT_MATCH_DOMAIN_ERROR +部署证书任务报类似 `SSL_CERT_NOT_MATCH_DOMAIN_ERROR`错误 +这是由于当前流水线的证书域名与要部署的目标站点的域名不匹配导致的,在申请证书任务中,增加目标站点域名,重新运行流水线即可 + + +## 4. 没有服务器配置文件,请检查是否开启了外网映射! +宝塔网站证书部署报错:`Error: 没有服务器配置文件,请检查是否开启了外网映射!` +解决方案:先手动在宝塔网站中设置一次证书 + + +## 5. 如何查看容器日志 +```shell +docker logs -f --tail 200 certd +``` + + + + + + + diff --git a/docs/guide/qa/use.md b/docs/guide/qa/use.md new file mode 100644 index 00000000..36f3ce4d --- /dev/null +++ b/docs/guide/qa/use.md @@ -0,0 +1,14 @@ +# 使用问题 + + +## 1. 是否支持IP证书 + +因为ACME协议不支持IP证书,所以certd目前也不支持IP证书 + + +## 2. 建议设置多长时间运行一次流水线 +建议每天运行一次,检查证书过期时间 +当证书没过期时,自动跳过部署 +当证书到期前35天(创建流水线时可以修改),将会自动重新申请证书,自动部署 + + diff --git a/docs/guide/use/https/index.md b/docs/guide/use/https/index.md index 5205f988..893f9dfb 100644 --- a/docs/guide/use/https/index.md +++ b/docs/guide/use/https/index.md @@ -17,7 +17,9 @@ CERTD_HTTPS_port=7002 参考Certd顶部的创建证书流水线教程 ### 2、配置复制到本机任务 -将证书复制到certd的证书安装位置 +将证书复制到certd的证书安装位置 +证书路径:`ssl/cert.crt` +私钥路径:`ssl/cert.key` ![](./images/1.png) ![](./images/2.png) diff --git a/lerna.json b/lerna.json index e6073136..a09514dd 100644 --- a/lerna.json +++ b/lerna.json @@ -9,5 +9,5 @@ } }, "npmClient": "pnpm", - "version": "1.34.2" + "version": "1.34.3" } diff --git a/packages/core/acme-client/CHANGELOG.md b/packages/core/acme-client/CHANGELOG.md index 20318b0f..51538e0c 100644 --- a/packages/core/acme-client/CHANGELOG.md +++ b/packages/core/acme-client/CHANGELOG.md @@ -3,6 +3,10 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/publishlab/node-acme-client/compare/v1.34.2...v1.34.3) (2025-05-15) + +**Note:** Version bump only for package @certd/acme-client + ## [1.34.2](https://github.com/publishlab/node-acme-client/compare/v1.34.1...v1.34.2) (2025-05-11) ### Performance Improvements diff --git a/packages/core/acme-client/package.json b/packages/core/acme-client/package.json index f1f96d8b..273cc4ec 100644 --- a/packages/core/acme-client/package.json +++ b/packages/core/acme-client/package.json @@ -3,7 +3,7 @@ "description": "Simple and unopinionated ACME client", "private": false, "author": "nmorsman", - "version": "1.34.2", + "version": "1.34.3", "type": "module", "module": "scr/index.js", "main": "src/index.js", @@ -18,7 +18,7 @@ "types" ], "dependencies": { - "@certd/basic": "^1.34.2", + "@certd/basic": "^1.34.3", "@peculiar/x509": "^1.11.0", "asn1js": "^3.0.5", "axios": "^1.7.2", @@ -69,5 +69,5 @@ "bugs": { "url": "https://github.com/publishlab/node-acme-client/issues" }, - "gitHead": "a1e504c1387e9b0554c8d030cb53c5058e7d683a" + "gitHead": "0b152a3cb8ef13113f9612c1bf555755e6f5b209" } diff --git a/packages/core/basic/CHANGELOG.md b/packages/core/basic/CHANGELOG.md index d4438364..44638ee2 100644 --- a/packages/core/basic/CHANGELOG.md +++ b/packages/core/basic/CHANGELOG.md @@ -3,6 +3,10 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/certd/certd/compare/v1.34.2...v1.34.3) (2025-05-15) + +**Note:** Version bump only for package @certd/basic + ## [1.34.2](https://github.com/certd/certd/compare/v1.34.1...v1.34.2) (2025-05-11) **Note:** Version bump only for package @certd/basic diff --git a/packages/core/basic/build.md b/packages/core/basic/build.md index ae84a845..225578b6 100644 --- a/packages/core/basic/build.md +++ b/packages/core/basic/build.md @@ -1 +1 @@ -20:23 +00:08 diff --git a/packages/core/basic/package.json b/packages/core/basic/package.json index d5ded6e6..0f3c3946 100644 --- a/packages/core/basic/package.json +++ b/packages/core/basic/package.json @@ -1,7 +1,7 @@ { "name": "@certd/basic", "private": false, - "version": "1.34.2", + "version": "1.34.3", "type": "module", "main": "./dist/index.js", "module": "./dist/index.js", @@ -45,5 +45,5 @@ "tslib": "^2.8.1", "typescript": "^5.4.2" }, - "gitHead": "a1e504c1387e9b0554c8d030cb53c5058e7d683a" + "gitHead": "0b152a3cb8ef13113f9612c1bf555755e6f5b209" } diff --git a/packages/core/pipeline/CHANGELOG.md b/packages/core/pipeline/CHANGELOG.md index 5c4a5eee..bd210afa 100644 --- a/packages/core/pipeline/CHANGELOG.md +++ b/packages/core/pipeline/CHANGELOG.md @@ -3,6 +3,10 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/certd/certd/compare/v1.34.2...v1.34.3) (2025-05-15) + +**Note:** Version bump only for package @certd/pipeline + ## [1.34.2](https://github.com/certd/certd/compare/v1.34.1...v1.34.2) (2025-05-11) **Note:** Version bump only for package @certd/pipeline diff --git a/packages/core/pipeline/package.json b/packages/core/pipeline/package.json index 3d15c7ec..556d4156 100644 --- a/packages/core/pipeline/package.json +++ b/packages/core/pipeline/package.json @@ -1,7 +1,7 @@ { "name": "@certd/pipeline", "private": false, - "version": "1.34.2", + "version": "1.34.3", "type": "module", "main": "./dist/index.js", "module": "./dist/index.js", @@ -17,8 +17,8 @@ "pub": "npm publish" }, "dependencies": { - "@certd/basic": "^1.34.2", - "@certd/plus-core": "^1.34.2", + "@certd/basic": "^1.34.3", + "@certd/plus-core": "^1.34.3", "dayjs": "^1.11.7", "lodash-es": "^4.17.21", "reflect-metadata": "^0.1.13" @@ -44,5 +44,5 @@ "tslib": "^2.8.1", "typescript": "^5.4.2" }, - "gitHead": "a1e504c1387e9b0554c8d030cb53c5058e7d683a" + "gitHead": "0b152a3cb8ef13113f9612c1bf555755e6f5b209" } diff --git a/packages/libs/lib-huawei/CHANGELOG.md b/packages/libs/lib-huawei/CHANGELOG.md index b0218fd4..2a2ae3c4 100644 --- a/packages/libs/lib-huawei/CHANGELOG.md +++ b/packages/libs/lib-huawei/CHANGELOG.md @@ -3,6 +3,10 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/certd/certd/compare/v1.34.2...v1.34.3) (2025-05-15) + +**Note:** Version bump only for package @certd/lib-huawei + ## [1.34.2](https://github.com/certd/certd/compare/v1.34.1...v1.34.2) (2025-05-11) **Note:** Version bump only for package @certd/lib-huawei diff --git a/packages/libs/lib-huawei/package.json b/packages/libs/lib-huawei/package.json index d259a921..5be8ee32 100644 --- a/packages/libs/lib-huawei/package.json +++ b/packages/libs/lib-huawei/package.json @@ -1,7 +1,7 @@ { "name": "@certd/lib-huawei", "private": false, - "version": "1.34.2", + "version": "1.34.3", "main": "./dist/bundle.js", "module": "./dist/bundle.js", "types": "./dist/d/index.d.ts", @@ -24,5 +24,5 @@ "prettier": "^2.8.8", "tslib": "^2.8.1" }, - "gitHead": "a1e504c1387e9b0554c8d030cb53c5058e7d683a" + "gitHead": "0b152a3cb8ef13113f9612c1bf555755e6f5b209" } diff --git a/packages/libs/lib-iframe/CHANGELOG.md b/packages/libs/lib-iframe/CHANGELOG.md index 34d85a98..e30f7c84 100644 --- a/packages/libs/lib-iframe/CHANGELOG.md +++ b/packages/libs/lib-iframe/CHANGELOG.md @@ -3,6 +3,10 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/certd/certd/compare/v1.34.2...v1.34.3) (2025-05-15) + +**Note:** Version bump only for package @certd/lib-iframe + ## [1.34.2](https://github.com/certd/certd/compare/v1.34.1...v1.34.2) (2025-05-11) **Note:** Version bump only for package @certd/lib-iframe diff --git a/packages/libs/lib-iframe/package.json b/packages/libs/lib-iframe/package.json index 6a60a163..531aea14 100644 --- a/packages/libs/lib-iframe/package.json +++ b/packages/libs/lib-iframe/package.json @@ -1,7 +1,7 @@ { "name": "@certd/lib-iframe", "private": false, - "version": "1.34.2", + "version": "1.34.3", "type": "module", "main": "./dist/index.js", "module": "./dist/index.js", @@ -31,5 +31,5 @@ "tslib": "^2.8.1", "typescript": "^5.4.2" }, - "gitHead": "a1e504c1387e9b0554c8d030cb53c5058e7d683a" + "gitHead": "0b152a3cb8ef13113f9612c1bf555755e6f5b209" } diff --git a/packages/libs/lib-jdcloud/CHANGELOG.md b/packages/libs/lib-jdcloud/CHANGELOG.md index 467cde7d..b8f76475 100644 --- a/packages/libs/lib-jdcloud/CHANGELOG.md +++ b/packages/libs/lib-jdcloud/CHANGELOG.md @@ -3,6 +3,10 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/certd/certd/compare/v1.34.2...v1.34.3) (2025-05-15) + +**Note:** Version bump only for package @certd/jdcloud + ## [1.34.2](https://github.com/certd/certd/compare/v1.34.1...v1.34.2) (2025-05-11) **Note:** Version bump only for package @certd/jdcloud diff --git a/packages/libs/lib-jdcloud/package.json b/packages/libs/lib-jdcloud/package.json index c2e6fa61..198847e0 100644 --- a/packages/libs/lib-jdcloud/package.json +++ b/packages/libs/lib-jdcloud/package.json @@ -1,6 +1,6 @@ { "name": "@certd/jdcloud", - "version": "1.34.2", + "version": "1.34.3", "description": "jdcloud openApi sdk", "main": "./dist/bundle.js", "module": "./dist/bundle.js", @@ -61,5 +61,5 @@ "fetch" ] }, - "gitHead": "a1e504c1387e9b0554c8d030cb53c5058e7d683a" + "gitHead": "0b152a3cb8ef13113f9612c1bf555755e6f5b209" } diff --git a/packages/libs/lib-k8s/CHANGELOG.md b/packages/libs/lib-k8s/CHANGELOG.md index 20b5a2e9..b4ff75dc 100644 --- a/packages/libs/lib-k8s/CHANGELOG.md +++ b/packages/libs/lib-k8s/CHANGELOG.md @@ -3,6 +3,10 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/certd/certd/compare/v1.34.2...v1.34.3) (2025-05-15) + +**Note:** Version bump only for package @certd/lib-k8s + ## [1.34.2](https://github.com/certd/certd/compare/v1.34.1...v1.34.2) (2025-05-11) **Note:** Version bump only for package @certd/lib-k8s diff --git a/packages/libs/lib-k8s/package.json b/packages/libs/lib-k8s/package.json index 783ffe92..4a36c2a6 100644 --- a/packages/libs/lib-k8s/package.json +++ b/packages/libs/lib-k8s/package.json @@ -1,7 +1,7 @@ { "name": "@certd/lib-k8s", "private": false, - "version": "1.34.2", + "version": "1.34.3", "type": "module", "main": "./dist/index.js", "module": "./dist/index.js", @@ -17,7 +17,7 @@ "pub": "npm publish" }, "dependencies": { - "@certd/basic": "^1.34.2", + "@certd/basic": "^1.34.3", "@kubernetes/client-node": "0.21.0" }, "devDependencies": { @@ -32,5 +32,5 @@ "tslib": "^2.8.1", "typescript": "^5.4.2" }, - "gitHead": "a1e504c1387e9b0554c8d030cb53c5058e7d683a" + "gitHead": "0b152a3cb8ef13113f9612c1bf555755e6f5b209" } diff --git a/packages/libs/lib-server/CHANGELOG.md b/packages/libs/lib-server/CHANGELOG.md index 10ec0d4b..2c9dc0f1 100644 --- a/packages/libs/lib-server/CHANGELOG.md +++ b/packages/libs/lib-server/CHANGELOG.md @@ -3,6 +3,12 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/certd/certd/compare/v1.34.2...v1.34.3) (2025-05-15) + +### Performance Improvements + +* 小助手可以关闭 ([3e2101a](https://github.com/certd/certd/commit/3e2101aa5b56548614102e900d59819ce8c7e97c)) + ## [1.34.2](https://github.com/certd/certd/compare/v1.34.1...v1.34.2) (2025-05-11) ### Performance Improvements diff --git a/packages/libs/lib-server/package.json b/packages/libs/lib-server/package.json index 85e52143..908d83ca 100644 --- a/packages/libs/lib-server/package.json +++ b/packages/libs/lib-server/package.json @@ -1,6 +1,6 @@ { "name": "@certd/lib-server", - "version": "1.34.2", + "version": "1.34.3", "description": "midway with flyway, sql upgrade way ", "private": false, "type": "module", @@ -27,10 +27,10 @@ ], "license": "AGPL", "dependencies": { - "@certd/acme-client": "^1.34.2", - "@certd/basic": "^1.34.2", - "@certd/pipeline": "^1.34.2", - "@certd/plus-core": "^1.34.2", + "@certd/acme-client": "^1.34.3", + "@certd/basic": "^1.34.3", + "@certd/pipeline": "^1.34.3", + "@certd/plus-core": "^1.34.3", "@midwayjs/cache": "~3.14.0", "@midwayjs/core": "~3.20.3", "@midwayjs/i18n": "~3.20.3", @@ -61,5 +61,5 @@ "typeorm": "^0.3.11", "typescript": "^5.4.2" }, - "gitHead": "a1e504c1387e9b0554c8d030cb53c5058e7d683a" + "gitHead": "0b152a3cb8ef13113f9612c1bf555755e6f5b209" } diff --git a/packages/libs/lib-server/src/system/settings/service/models.ts b/packages/libs/lib-server/src/system/settings/service/models.ts index 5c99a0c9..1da84c35 100644 --- a/packages/libs/lib-server/src/system/settings/service/models.ts +++ b/packages/libs/lib-server/src/system/settings/service/models.ts @@ -27,6 +27,7 @@ export class SysPublicSettings extends BaseSettings { icpNo?: string; mpsNo?: string; robots?: boolean = true; + aiChatEnabled = true; } export class SysPrivateSettings extends BaseSettings { diff --git a/packages/libs/midway-flyway-js/CHANGELOG.md b/packages/libs/midway-flyway-js/CHANGELOG.md index 869ccd31..56b14485 100644 --- a/packages/libs/midway-flyway-js/CHANGELOG.md +++ b/packages/libs/midway-flyway-js/CHANGELOG.md @@ -3,6 +3,10 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/certd/certd/compare/v1.34.2...v1.34.3) (2025-05-15) + +**Note:** Version bump only for package @certd/midway-flyway-js + ## [1.34.2](https://github.com/certd/certd/compare/v1.34.1...v1.34.2) (2025-05-11) **Note:** Version bump only for package @certd/midway-flyway-js diff --git a/packages/libs/midway-flyway-js/package.json b/packages/libs/midway-flyway-js/package.json index 51c2cdf2..77d2eff5 100644 --- a/packages/libs/midway-flyway-js/package.json +++ b/packages/libs/midway-flyway-js/package.json @@ -1,6 +1,6 @@ { "name": "@certd/midway-flyway-js", - "version": "1.34.2", + "version": "1.34.3", "description": "midway with flyway, sql upgrade way ", "private": false, "type": "module", @@ -46,5 +46,5 @@ "typeorm": "^0.3.11", "typescript": "^5.4.2" }, - "gitHead": "a1e504c1387e9b0554c8d030cb53c5058e7d683a" + "gitHead": "0b152a3cb8ef13113f9612c1bf555755e6f5b209" } diff --git a/packages/plugins/plugin-cert/CHANGELOG.md b/packages/plugins/plugin-cert/CHANGELOG.md index 928f18bd..dce5e5a0 100644 --- a/packages/plugins/plugin-cert/CHANGELOG.md +++ b/packages/plugins/plugin-cert/CHANGELOG.md @@ -3,6 +3,10 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/certd/certd/compare/v1.34.2...v1.34.3) (2025-05-15) + +**Note:** Version bump only for package @certd/plugin-cert + ## [1.34.2](https://github.com/certd/certd/compare/v1.34.1...v1.34.2) (2025-05-11) **Note:** Version bump only for package @certd/plugin-cert diff --git a/packages/plugins/plugin-cert/package.json b/packages/plugins/plugin-cert/package.json index 263509a5..d35d1dab 100644 --- a/packages/plugins/plugin-cert/package.json +++ b/packages/plugins/plugin-cert/package.json @@ -1,7 +1,7 @@ { "name": "@certd/plugin-cert", "private": false, - "version": "1.34.2", + "version": "1.34.3", "type": "module", "main": "./dist/index.js", "types": "./dist/index.d.ts", @@ -16,10 +16,10 @@ "pub": "npm publish" }, "dependencies": { - "@certd/acme-client": "^1.34.2", - "@certd/basic": "^1.34.2", - "@certd/pipeline": "^1.34.2", - "@certd/plugin-lib": "^1.34.2", + "@certd/acme-client": "^1.34.3", + "@certd/basic": "^1.34.3", + "@certd/pipeline": "^1.34.3", + "@certd/plugin-lib": "^1.34.3", "@google-cloud/publicca": "^1.3.0", "dayjs": "^1.11.7", "jszip": "^3.10.1", @@ -43,5 +43,5 @@ "tslib": "^2.8.1", "typescript": "^5.4.2" }, - "gitHead": "a1e504c1387e9b0554c8d030cb53c5058e7d683a" + "gitHead": "0b152a3cb8ef13113f9612c1bf555755e6f5b209" } diff --git a/packages/plugins/plugin-lib/CHANGELOG.md b/packages/plugins/plugin-lib/CHANGELOG.md index 7c5ba6b9..467506f9 100644 --- a/packages/plugins/plugin-lib/CHANGELOG.md +++ b/packages/plugins/plugin-lib/CHANGELOG.md @@ -3,6 +3,12 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/certd/certd/compare/v1.34.2...v1.34.3) (2025-05-15) + +### Performance Improvements + +* 支持部署到maoyun cdn ([68f333f](https://github.com/certd/certd/commit/68f333fb87ce85eed27436ecb0f76351c0ccb0d1)) + ## [1.34.2](https://github.com/certd/certd/compare/v1.34.1...v1.34.2) (2025-05-11) ### Performance Improvements diff --git a/packages/plugins/plugin-lib/package.json b/packages/plugins/plugin-lib/package.json index 9e6b9fd1..0f3b4e72 100644 --- a/packages/plugins/plugin-lib/package.json +++ b/packages/plugins/plugin-lib/package.json @@ -1,7 +1,7 @@ { "name": "@certd/plugin-lib", "private": false, - "version": "1.34.2", + "version": "1.34.3", "type": "module", "main": "./dist/index.js", "types": "./dist/index.d.ts", @@ -18,8 +18,8 @@ "dependencies": { "@alicloud/pop-core": "^1.7.10", "@aws-sdk/client-s3": "^3.787.0", - "@certd/basic": "^1.34.2", - "@certd/pipeline": "^1.34.2", + "@certd/basic": "^1.34.3", + "@certd/pipeline": "^1.34.3", "@kubernetes/client-node": "0.21.0", "ali-oss": "^6.22.0", "basic-ftp": "^5.0.5", @@ -50,5 +50,5 @@ "tslib": "^2.8.1", "typescript": "^5.4.2" }, - "gitHead": "a1e504c1387e9b0554c8d030cb53c5058e7d683a" + "gitHead": "0b152a3cb8ef13113f9612c1bf555755e6f5b209" } diff --git a/packages/plugins/plugin-lib/src/common/index.ts b/packages/plugins/plugin-lib/src/common/index.ts index ea766648..9226361a 100644 --- a/packages/plugins/plugin-lib/src/common/index.ts +++ b/packages/plugins/plugin-lib/src/common/index.ts @@ -1,87 +1 @@ -import { merge } from "lodash-es"; - -export function createCertDomainGetterInputDefine(opts?: { certInputKey?: string; props?: any }) { - const certInputKey = opts?.certInputKey || "cert"; - return merge( - { - title: "当前证书域名", - component: { - name: "cert-domains-getter", - }, - mergeScript: ` - return { - component:{ - inputKey: ctx.compute(({form})=>{ - return form.${certInputKey} - }), - } - } - `, - required: true, - }, - opts?.props - ); -} - -export function createRemoteSelectInputDefine(opts?: { - title: string; - certDomainsInputKey?: string; - accessIdInputKey?: string; - typeName?: string; - action: string; - type?: string; - watches?: string[]; - helper?: string; - formItem?: any; - mode?: string; - multi?: boolean; - required?: boolean; - rules?: any; - mergeScript?: string; -}) { - const title = opts?.title || "请选择"; - const certDomainsInputKey = opts?.certDomainsInputKey || "certDomains"; - const accessIdInputKey = opts?.accessIdInputKey || "accessId"; - const typeName = opts?.typeName; - const action = opts?.action; - const type = opts?.type || "plugin"; - const watches = opts?.watches || []; - const helper = opts?.helper || "请选择"; - let mode = "tags"; - if (opts.multi === false) { - mode = undefined; - } else { - mode = opts?.mode ?? "tags"; - } - - const item = { - title, - component: { - name: "remote-select", - vModel: "value", - mode, - type, - typeName, - action, - watches: [certDomainsInputKey, accessIdInputKey, ...watches], - }, - rules: opts?.rules, - required: opts.required ?? true, - mergeScript: - opts.mergeScript ?? - ` - return { - component:{ - form: ctx.compute(({form})=>{ - return form - }) - }, - } - `, - helper, - }; - - return merge(item, opts?.formItem); -} - - +export * from "./util.js"; diff --git a/packages/plugins/plugin-lib/src/common/util.ts b/packages/plugins/plugin-lib/src/common/util.ts new file mode 100644 index 00000000..9bf5e42b --- /dev/null +++ b/packages/plugins/plugin-lib/src/common/util.ts @@ -0,0 +1,85 @@ +import { merge } from "lodash-es"; + +export function createCertDomainGetterInputDefine(opts?: { certInputKey?: string; props?: any }) { + const certInputKey = opts?.certInputKey || "cert"; + return merge( + { + title: "当前证书域名", + component: { + name: "cert-domains-getter", + }, + mergeScript: ` + return { + component:{ + inputKey: ctx.compute(({form})=>{ + return form.${certInputKey} + }), + } + } + `, + required: true, + }, + opts?.props + ); +} + +export function createRemoteSelectInputDefine(opts?: { + title: string; + certDomainsInputKey?: string; + accessIdInputKey?: string; + typeName?: string; + action: string; + type?: string; + watches?: string[]; + helper?: string; + formItem?: any; + mode?: string; + multi?: boolean; + required?: boolean; + rules?: any; + mergeScript?: string; +}) { + const title = opts?.title || "请选择"; + const certDomainsInputKey = opts?.certDomainsInputKey || "certDomains"; + const accessIdInputKey = opts?.accessIdInputKey || "accessId"; + const typeName = opts?.typeName; + const action = opts?.action; + const type = opts?.type || "plugin"; + const watches = opts?.watches || []; + const helper = opts?.helper || "请选择"; + let mode = "tags"; + if (opts.multi === false) { + mode = undefined; + } else { + mode = opts?.mode ?? "tags"; + } + + const item = { + title, + component: { + name: "remote-select", + vModel: "value", + mode, + type, + typeName, + action, + watches: [certDomainsInputKey, accessIdInputKey, ...watches], + }, + rules: opts?.rules, + required: opts.required ?? true, + mergeScript: + opts.mergeScript ?? + ` + return { + component:{ + form: ctx.compute(({form})=>{ + return form + }) + }, + } + `, + helper, + }; + + return merge(item, opts?.formItem); +} diff --git a/packages/plugins/plugin-lib/src/ftp/access.ts b/packages/plugins/plugin-lib/src/ftp/access.ts index bfe4450f..d9776fcd 100644 --- a/packages/plugins/plugin-lib/src/ftp/access.ts +++ b/packages/plugins/plugin-lib/src/ftp/access.ts @@ -24,7 +24,7 @@ export class FtpAccess extends BaseAccess { host!: string; @AccessInput({ - title: "host", + title: "端口", value: 21, component: { placeholder: "21", diff --git a/packages/ui/certd-client/CHANGELOG.md b/packages/ui/certd-client/CHANGELOG.md index e3e95d8a..bff5facf 100644 --- a/packages/ui/certd-client/CHANGELOG.md +++ b/packages/ui/certd-client/CHANGELOG.md @@ -3,6 +3,13 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.34.3](https://github.com/certd/certd/compare/v1.34.2...v1.34.3) (2025-05-15) + +### Performance Improvements + +* 小助手可以关闭 ([3e2101a](https://github.com/certd/certd/commit/3e2101aa5b56548614102e900d59819ce8c7e97c)) +* 支持AI分析报错 ([aa96859](https://github.com/certd/certd/commit/aa96859798166426e485947a6590464de189de05)) + ## [1.34.2](https://github.com/certd/certd/compare/v1.34.1...v1.34.2) (2025-05-11) ### Bug Fixes diff --git a/packages/ui/certd-client/package.json b/packages/ui/certd-client/package.json index ee232cb2..6e372b59 100644 --- a/packages/ui/certd-client/package.json +++ b/packages/ui/certd-client/package.json @@ -1,6 +1,6 @@ { "name": "@certd/ui-client", - "version": "1.34.2", + "version": "1.34.3", "private": true, "scripts": { "dev": "vite --open", @@ -102,8 +102,8 @@ "zod-defaults": "^0.1.3" }, "devDependencies": { - "@certd/lib-iframe": "^1.34.2", - "@certd/pipeline": "^1.34.2", + "@certd/lib-iframe": "^1.34.3", + "@certd/pipeline": "^1.34.3", "@rollup/plugin-commonjs": "^25.0.7", "@rollup/plugin-node-resolve": "^15.2.3", "@types/chai": "^4.3.12", diff --git a/packages/ui/certd-client/src/App.vue b/packages/ui/certd-client/src/App.vue index d8f9367f..8887c8bd 100644 --- a/packages/ui/certd-client/src/App.vue +++ b/packages/ui/certd-client/src/App.vue @@ -3,7 +3,7 @@ - + @@ -22,7 +22,7 @@ import AConfigProvider from "ant-design-vue/es/config-provider"; import { Modal } from "ant-design-vue"; import MaxKBChat from "/@/components/ai/index.vue"; import { util } from "/@/utils"; - +import { useSettingStore } from "/@/store/settings"; defineOptions({ name: "App", }); @@ -49,6 +49,7 @@ localeChanged("zh-cn"); provide("fn:router.reload", reload); provide("fn:locale.changed", localeChanged); +const settingsStore = useSettingStore(); const { isDark } = usePreferences(); const { tokens } = useAntdDesignTokens(); @@ -74,8 +75,12 @@ const tokenTheme = computed(() => { // settingStore.init(); const chatBox = ref(); -onMounted(async () => { - // await util.sleep(5000); - // await chatBox.value.openChat({ q: "hello" }); -}); +// onMounted(async () => { +// await util.sleep(2000); +// await chatBox.value.openChat({ q: "hello" }); +// }); +const openChat = (q: string) => { + chatBox.value.openChat({ q }); +}; +provide("fn:ai.open", openChat); diff --git a/packages/ui/certd-client/src/components/ai/index.vue b/packages/ui/certd-client/src/components/ai/index.vue index dc9020de..6020f614 100644 --- a/packages/ui/certd-client/src/components/ai/index.vue +++ b/packages/ui/certd-client/src/components/ai/index.vue @@ -24,7 +24,7 @@ -
+
@@ -123,7 +123,10 @@ onMounted(() => { }); async function openChat(req: { q: string }) { - showGuide.value = true; + if (!req.q) { + return; + } + chatVisible.value = true; const iframeId = "maxkb-chat"; @@ -132,7 +135,13 @@ async function openChat(req: { q: string }) { throw new Error("iframe not found"); return; } - iframe.contentWindow?.postMessage(req, "*"); + iframe.contentWindow?.postMessage( + { + ...req, + from: "certd", + }, + "*" + ); } defineExpose({ @@ -227,10 +236,10 @@ defineExpose({ #maxkb .maxkb-tips .maxkb-button button::after { border: none; } -#maxkb .maxkb-tips . { +#maxkb .maxkb-tips { position: absolute; right: 20px; - top: 20px; + //top: 20px; cursor: pointer; } #maxkb-chat-container { @@ -248,7 +257,7 @@ defineExpose({ #maxkb .maxkb-chat-button { position: fixed; - right: 0px; + right: 10px; bottom: 30px; cursor: pointer; z-index: 10000; diff --git a/packages/ui/certd-client/src/components/plugins/common/remote-input.vue b/packages/ui/certd-client/src/components/plugins/common/remote-input.vue index 9fd0f3fb..6a1e1c48 100644 --- a/packages/ui/certd-client/src/components/plugins/common/remote-input.vue +++ b/packages/ui/certd-client/src/components/plugins/common/remote-input.vue @@ -18,7 +18,7 @@ const props = defineProps<{ modelValue: string; title: string; action: string; - form: any; + form?: any; button?: any; }>(); diff --git a/packages/ui/certd-client/src/layout/layout-basic.vue b/packages/ui/certd-client/src/layout/layout-basic.vue index da33b3e6..2af00c36 100644 --- a/packages/ui/certd-client/src/layout/layout-basic.vue +++ b/packages/ui/certd-client/src/layout/layout-basic.vue @@ -52,6 +52,10 @@ onErrorCaptured(e => { onMounted(async () => { await settingStore.checkUrlBound(); }); + +function goGithub() { + window.open("https://github.com/certd/certd"); +}