From a53b6cd28ff2ce5662ada82379ea44a06b179b81 Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Tue, 13 May 2025 21:15:59 +0800 Subject: [PATCH 1/3] =?UTF-8?q?perf:=20=E5=AE=9D=E5=A1=94=E6=8F=92?= =?UTF-8?q?=E4=BB=B6=E3=80=811panel=20=E6=94=B9=E6=88=90=E5=AE=8C=E5=85=A8?= =?UTF-8?q?=E5=85=8D=E8=B4=B9=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- step.md | 1 + 1 file changed, 1 insertion(+) diff --git a/step.md b/step.md index 170cf124..bd023e86 100644 --- a/step.md +++ b/step.md @@ -9,6 +9,7 @@ 2. 注册一个域名(支持阿里云万网、腾讯云DnsPod、华为云) 3. 准备好以上DNS解析服务商的AccessKey 和 AccessSecret 4. 证书要部署的目标(可选,单纯当成证书申请工具用也不错) + ## 自动化流水线创建 From 08e779f9f1265ce0a9171b0cb783b1bd5bbfb65e Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Tue, 13 May 2025 23:06:54 +0800 Subject: [PATCH 2/3] docs: ipv6 --- docs/guide/qa/index.md | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/docs/guide/qa/index.md b/docs/guide/qa/index.md index eae66615..7c5050dc 100644 --- a/docs/guide/qa/index.md +++ b/docs/guide/qa/index.md @@ -16,4 +16,22 @@ services: # # ↓↓↓↓ ------- # 如果你服务器部署在国外,可以用这个替换上面阿里云的公共dns # - 8.8.8.8 # 谷歌公共dns # - 8.8.4.4 -``` \ No newline at end of file +``` + + +## 2. 连接IPv6超时 +docker-compose 需要放开IPv6网络的配置 +```yaml +services: + certd: + networks: + - ip6net +# ↓↓↓↓ -------------------------------------------------------------- 启用ipv6网络,还需要把上面networks的注释放开 +networks: + ip6net: + enable_ipv6: true + ipam: + config: + - subnet: 2001:db8::/64 + +``` From e332ce28f838a2af06c720f139f7bb615d716c26 Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Wed, 14 May 2025 01:06:30 +0800 Subject: [PATCH 3/3] chore: baotawaf access --- docs/guide/development/demo/access.md | 88 +++++++++++++++++++ .../plugins/common/remote-input.vue | 2 +- 2 files changed, 89 insertions(+), 1 deletion(-) create mode 100644 docs/guide/development/demo/access.md 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/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; }>();