mirror of https://github.com/certd/certd
1.8 KiB
1.8 KiB
贡献插件
1.本地调试运行
安装依赖包:
# 克隆代码
git clone https://github.com/certd/certd
#进入项目目录
cd certd
# 安装依赖
npm install -g pnpm@8.15.7
pnpm install
# 初始化构建
lerna run build
启动 server:
cd packages/ui/certd-server
npm run dev
启动 client:
cd packages/ui/certd-client
npm run dev
# 会自动打开浏览器,确认正常运行
开发插件
进入 packages/ui/certd-server/src/plugins
1.复制plugin-demo
目录作为你的插件目录
比如你想做cloudflare
的插件,那么你可以复制plugin-demo
目录,将其命名成plugin-cloudflare
。
以下均以plugin-cloudflare
为例进行说明,你需要将其替换成你的插件名称
2. access授权
如果这是一个新的平台,它应该有授权方式,比如accessKey accessSecret之类的
参考plugin-cloudflare/access.ts
修改为你要做的平台的access
这样用户就可以在certd
后台中创建这种授权凭证了
3. dns-provider
如果域名是这个平台进行解析的,那么你需要实现dns-provider
参考plugin-cloudflare/dns-provider.ts
修改为你要做的平台的dns-provider
4. plugin-deploy
如果这个平台有需要部署证书的地方
参考plugin-cloudflare/plugins/plugin-deploy-to-xx.ts
修改为你要做的平台的plugin-deploy-to-xx
5. 增加导入
在plugin-cloudflare/index.ts
中增加你的插件的import
export * from './dns-provider'
export * from './access'
export * from './plugins/plugin-deploy-to-xx'
在./src/plugins/index.ts
中增加import
export * from "./plugin-cloudflare"
重启服务进行调试
刷新浏览器,检查你的插件是否工作正常, 确保能够正常进行证书申请和部署
提交PR
我们将尽快审核PR