chore: metadata update

This commit is contained in:
xiaojunnuo
2025-12-30 11:42:21 +08:00
parent 97e1178525
commit 6419539305
72 changed files with 3749 additions and 7 deletions

View File

@@ -0,0 +1,38 @@
name: dnspod
title: dnspod(已废弃)
desc: 腾讯云的域名解析接口已迁移到dnspod
deprecated: dnspod已废弃请换成腾讯云
icon: svg:icon-tencentcloud
input:
endpoint:
title: 端点
component:
placeholder: endpoint
name: a-auto-complete
vModel: value
options:
- value: https://dnsapi.cn
label: 中国站
- value: https://api.dnspod.com
label: 国际站
rules:
- required: true
message: 该项必填
id:
title: ID
component:
placeholder: dnspod token 的 id
rules:
- required: true
message: 该项必填
token:
title: token
component:
placeholder: 开放接口token
encrypt: true
rules:
- required: true
message: 该项必填
type: builtIn
pluginType: access
scriptFilePath: ../../../plugins/plugin-tencent/access/dnspod-access.js

View File

@@ -0,0 +1,42 @@
name: proxmox
title: proxmox
desc: ''
icon: svg:icon-proxmox
input:
host:
title: host
component:
placeholder: IP或域名
required: true
encrypt: false
port:
title: 端口
component:
placeholder: 端口
component:
name: a-input-number
required: true
encrypt: false
username:
title: 用户名
component:
placeholder: username
required: true
encrypt: false
password:
title: 密码
component:
placeholder: password
required: true
encrypt: true
realm:
title: 领域
value: pam
component:
placeholder: pam、pve。默认值 pam
helper: pam 或 pve。默认值 pam
required: false
encrypt: false
type: builtIn
pluginType: access
scriptFilePath: ../../../plugins/plugin-proxmox/access.js

View File

@@ -0,0 +1,24 @@
name: rainyun
title: 雨云授权
desc: https://app.rainyun.com/
icon: svg:icon-rainyun
order: 100
input:
apiKey:
title: ApiKey
component:
placeholder: api-key
name: a-input
vModel: value
helper: https://app.rainyun.com/account/settings/api-key
encrypt: true
required: true
testRequest:
title: 测试
component:
name: api-test
action: TestRequest
helper: 点击测试接口是否正常
type: builtIn
pluginType: access
scriptFilePath: ../../../plugins/plugin-rainyun/access.js

View File

@@ -0,0 +1,36 @@
name: ucloud
title: UCloud授权
icon: svg:icon-ucloud
desc: 优刻得授权
input:
projectId:
title: 项目Id
component:
placeholder: 项目Id
helper: '[项目管理](https://console.ucloud.cn/uaccount/iam/project_manage)项目ID列获取'
required: true
encrypt: false
publicKey:
title: 公钥
component:
placeholder: 公钥
helper: '[Api管理](https://console.ucloud.cn/uaccount/api_manage)获取'
required: true
encrypt: false
privateKey:
title: 私钥
component:
name: a-input-password
vModel: value
placeholder: 私钥
required: true
encrypt: true
testRequest:
title: 测试
component:
name: api-test
action: TestRequest
helper: 点击测试接口是否正常
type: builtIn
pluginType: access
scriptFilePath: ../../../plugins/plugin-ucloud/access.js

View File

@@ -0,0 +1,19 @@
name: upyun
title: 又拍云
desc: ''
icon: svg:icon-upyun
input:
username:
title: 账号
component:
placeholder: 又拍云账号
required: true
password:
title: 密码
component:
placeholder: 又拍云密码
required: true
encrypt: true
type: builtIn
pluginType: access
scriptFilePath: ../../../plugins/plugin-upyun/access.js

View File

@@ -0,0 +1,21 @@
name: volcengine
title: 火山引擎
desc: ''
icon: svg:icon-volcengine
order: 1
input:
accessKeyId:
title: AccessKeyID
component:
placeholder: AccessKeyID
helper: '[获取密钥](https://console.volcengine.com/iam/keymanage/)'
required: true
secretAccessKey:
title: SecretAccessKey
component:
placeholder: SecretAccessKey
required: true
encrypt: true
type: builtIn
pluginType: access
scriptFilePath: ../../../plugins/plugin-volcengine/access.js

View File

@@ -0,0 +1,33 @@
name: wangsu
title: 网宿授权
desc: ''
icon: svg:icon-wangsu
input:
accessKeyId:
title: accessKeyId
component:
placeholder: accessKeyId
component:
name: a-input
vModel: value
helper: '[点击前往获取AccessKey](https://console.wangsu.com/account/accessKey?rsr=ws)'
encrypt: false
required: true
accessKeySecret:
title: accessKeySecret
component:
placeholder: accessKeySecret
component:
name: a-input
vModel: value
encrypt: true
required: true
testRequest:
title: 测试
component:
name: api-test
action: TestRequest
helper: 点击测试接口是否正常
type: builtIn
pluginType: access
scriptFilePath: ../../../plugins/plugin-wangsu/access.js

View File

@@ -0,0 +1,87 @@
name: west
title: 西部数码授权
desc: ''
icon: tabler:map-west
input:
scope:
title: 权限范围
component:
name: a-select
vModel: value
options:
- value: account
label: 账户级别,对所有域名都有权限管理
- value: domain
label: 域名级别,仅能管理单个域名
helper: 选择权限范围
required: true
username:
title: 账号
helper: 你的登录账号
encrypt: false
required: false
mergeScript: |2-
return {
show:ctx.compute(({form})=>{
return form.access.scope === 'account'
})
}
apikey:
title: ApiKey
component:
placeholder: 账户级别的key对整个账户都有管理权限
helper: |-
账户级别的key对整个账户都有管理权限
前往[API接口配置](https://www.west.cn/manager/API/APIconfig.asp)手动设置“api连接密码”
encrypt: true
required: false
mergeScript: |2-
return {
show:ctx.compute(({form})=>{
return form.access.scope === 'account'
})
}
apidomainkey:
title: apidomainkey
component:
placeholder: 域名级别的key仅对单个域名有权限
helper: |-
域名级别的key仅对单个域名有权限。
前往[西部数据域名管理](https://www.west.cn/manager/domain/)点击域名右上方点击ApiKey获取密钥
encrypt: true
required: false
mergeScript: |2-
return {
show:ctx.compute(({form})=>{
return form.access.scope === 'domain'
})
}
domain:
title: 域名
component:
placeholder: 域名级别的key对应的域名
encrypt: false
required: false
mergeScript: |2-
return {
show:ctx.compute(({form})=>{
return form.access.scope === 'domain'
})
}
testRequest:
title: 测试
component:
name: api-test
action: TestRequest
helper: 点击测试接口是否正常
type: builtIn
pluginType: access
scriptFilePath: ../../../plugins/plugin-west/access.js

View File

@@ -0,0 +1,19 @@
name: woai
title: 我爱云授权
desc: 我爱云CDN
icon: clarity:plugin-line
input:
username:
title: 账号
component:
placeholder: 我爱云的账号
required: true
password:
title: 密码
component:
placeholder: 我爱云的密码
required: true
encrypt: true
type: builtIn
pluginType: access
scriptFilePath: ../../../plugins/plugin-woai/access.js

View File

@@ -0,0 +1,28 @@
name: xinnet
title: 新网授权
icon: svg:icon-xinnet
desc: ''
input:
username:
title: 用户名
component:
placeholder: 手机号/用户名
required: true
encrypt: true
password:
title: 登录密码
component:
name: a-input-password
vModel: value
placeholder: 登录密码
required: true
encrypt: true
testRequest:
title: 测试
component:
name: api-test
action: TestRequest
helper: 点击测试接口是否正常
type: builtIn
pluginType: access
scriptFilePath: ../../../plugins/plugin-xinnet/access.js

View File

@@ -0,0 +1,28 @@
name: xinnetagent
title: 新网授权(代理方式)
icon: svg:icon-xinnet
desc: ''
input:
agentCode:
title: 代理账号
component:
placeholder: 代理账号agent0001
required: true
encrypt: false
appSecret:
title: API密钥
component:
name: a-input-password
vModel: value
placeholder: API密钥
required: true
encrypt: true
testRequest:
title: 测试
component:
name: api-test
action: TestRequest
helper: 点击测试接口是否正常
type: builtIn
pluginType: access
scriptFilePath: ../../../plugins/plugin-xinnet/access-agent.js

View File

@@ -0,0 +1,23 @@
name: xinnetconnect
title: 新网互联授权
icon: svg:icon-xinnet
desc: 仅支持代理账号ip需要加入白名单
input:
username:
title: 用户名
component:
placeholder: 代理用户名agent001
help: 新网互联的代理用户名
required: true
encrypt: false
password:
title: 密码
component:
name: a-input-password
vModel: value
placeholder: 密码
required: true
encrypt: true
type: builtIn
pluginType: access
scriptFilePath: ../../../plugins/plugin-xinnetconnet/access.js

View File

@@ -0,0 +1,47 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: DeployCertToMailPlugin
title: 邮件发送证书
icon: ion:mail-outline
desc: 通过邮件发送证书
group: other
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
required: true
order: 0
certZip:
title: 证书压缩文件
helper: 请选择前置任务输出的域名证书压缩文件
component:
name: output-selector
from:
- ':certZip:'
required: true
order: 0
email:
title: 接收邮箱
component:
name: EmailSelector
vModel: value
mode: tags
required: true
order: 0
remark:
title: 备注
component:
name: a-input
vModel: value
required: false
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-other/plugins/plugin-deploy-to-mail.js

View File

@@ -0,0 +1,88 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: DeployCertToTencentAll
title: 腾讯云-部署证书到任意云资源
needPlus: false
icon: svg:icon-tencentcloud
group: tencent
desc: 支持负载均衡、CDN、DDoS、直播、点播、Web应用防火墙、API网关、TEO、容器服务、对象存储、轻应用服务器、云原生微服务、云开发
input:
accessId:
title: Access授权
helper: access授权
component:
name: access-selector
type: tencent
required: true
order: 0
tencentCertId:
title: 证书
helper: 请选择"证书申请任务"或“上传证书到腾讯云”前置任务的输出
component:
name: output-selector
from:
- ':cert:'
- UploadCertToTencent
required: true
order: 0
resourceType:
title: 资源类型
component:
name: a-select
vModel: value
allowClear: true
options:
- value: clb
label: 负载均衡
- value: cdn
label: CDN
- value: ddos
label: DDoS
- value: live
label: 直播
- value: vod
label: 点播
- value: waf
label: Web应用防火墙
- value: apigateway
label: API网关
- value: teo
label: TEO
- value: tke
label: 容器服务
- value: cos
label: 对象存储
- value: lighthouse
label: 轻应用服务器
- value: tse
label: 云原生微服务
- value: tcb
label: 云开发
helper: ''
required: true
order: 0
region:
title: Region
component:
name: a-input
vModel: value
allowClear: true
helper: >-
当云资源类型传入clb、waf、apigateway、cos、lighthouse、tke、tse、tcb
公共参数Region必传。[参考文档](https://cloud.tencent.com/document/product/400/91667)
order: 0
instanceIdList:
title: 云资源实例Id列表
component:
name: a-select
vModel: value
open: false
mode: tags
helper: '[参考文档](https://cloud.tencent.com/document/product/400/91667)'
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-tencent/plugin/deploy-to-all/index.js

View File

@@ -0,0 +1,41 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: DeployCertToTencentCDN
title: 腾讯云-部署到CDN废弃
icon: svg:icon-tencentcloud
group: tencent
desc: 已废弃请使用v2版
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
required: true
order: 0
accessId:
title: Access提供者
helper: access 授权
component:
name: access-selector
type: tencent
required: true
order: 0
certName:
title: 证书名称
helper: 证书上传后将以此参数作为名称前缀
order: 0
domainName:
title: cdn加速域名
rules:
- required: true
message: 该项必填
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-tencent/plugin/deploy-to-cdn/index.js

View File

@@ -0,0 +1,80 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: DeployCertToTencentCLB
title: 腾讯云-部署到CLB
icon: svg:icon-tencentcloud
group: tencent
desc: 暂时只支持单向认证证书,暂时只支持通用负载均衡
input:
region:
title: 大区
component:
name: a-auto-complete
vModel: value
options:
- value: ap-guangzhou
- value: ap-beijing
- value: ap-chengdu
- value: ap-chongqing
- value: ap-hongkong
- value: ap-jakarta
- value: ap-mumbai
- value: ap-nanjing
- value: ap-seoul
- value: ap-shanghai
- value: ap-shanghai-fsi
- value: ap-shenzhen-fsi
- value: ap-singapore
- value: ap-tokyo
- value: eu-frankfurt
- value: na-ashburn
- value: na-siliconvalley
- value: na-toronto
- value: sa-saopaulo
required: true
order: 0
certName:
title: 证书名称前缀
order: 0
loadBalancerId:
title: 负载均衡ID
helper: 如果没有配置则根据域名匹配负载均衡下的监听器根据域名匹配时暂时只支持前100个
required: true
order: 0
listenerId:
title: 监听器ID
required: true
order: 0
domain:
title: 域名
required: false
component:
name: a-select
vModel: value
open: false
mode: tags
helper: 如果开启了sni则此项必须填写未开启则不要填写
order: 0
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
required: true
order: 0
accessId:
title: Access提供者
helper: access授权
component:
name: access-selector
type: tencent
required: true
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-tencent/plugin/deploy-to-clb/index.js

View File

@@ -0,0 +1,122 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: DeployCertToTencentCosPlugin
title: 腾讯云-部署证书到COS
needPlus: false
icon: svg:icon-tencentcloud
group: tencent
desc: 部署到腾讯云COS源站域名证书【注意很不稳定需要重试很多次偶尔才能成功一次】
input:
accessId:
title: Access授权
helper: access授权
component:
name: access-selector
type: tencent
required: true
order: 0
bucket:
title: 存储桶名称
helper: 请输入存储桶名称
order: 0
region:
title: 所在地域
helper: 存储桶所在地域
component:
name: a-auto-complete
vModel: value
options:
- value: ''
label: '--------中国大陆地区-------'
disabled: true
- value: ap-beijing-1
label: 北京1区
- value: ap-beijing
label: 北京
- value: ap-nanjing
label: 南京
- value: ap-shanghai
label: 上海
- value: ap-guangzhou
label: 广州
- value: ap-chengdu
label: 成都
- value: ap-chongqing
label: 重庆
- value: ap-shenzhen-fsi
label: 深圳金融
- value: ap-shanghai-fsi
label: 上海金融
- value: ap-beijing-fsi
label: 北京金融
- value: ''
label: '--------中国香港及境外-------'
disabled: true
- value: ap-hongkong
label: 中国香港
- value: ap-singapore
label: 新加坡
- value: ap-mumbai
label: 孟买
- value: ap-jakarta
label: 雅加达
- value: ap-seoul
label: 首尔
- value: ap-bangkok
label: 曼谷
- value: ap-tokyo
label: 东京
- value: na-siliconvalley
label: 硅谷
- value: na-ashburn
label: 弗吉尼亚
- value: sa-saopaulo
label: 圣保罗
- value: eu-frankfurt
label: 法兰克福
order: 0
domains:
title: COS域名
component:
name: remote-select
vModel: value
mode: tags
type: plugin
typeName: DeployCertToTencentCosPlugin
action: onGetDomainList
search: false
pager: false
watches:
- certDomains
- accessId
- bucket
- region
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 请选择域名
order: 0
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书或者选择前置任务“上传证书到腾讯云”任务的证书ID
component:
name: output-selector
from:
- ':cert:'
- UploadCertToTencent
required: true
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-tencent/plugin/deploy-to-cos/index.js

View File

@@ -0,0 +1,107 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: DeployCertToTencentEO
title: 腾讯云-部署到腾讯云EO
icon: svg:icon-tencentcloud
desc: 腾讯云边缘安全加速平台EdgeOne(EO)
group: tencent
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书或者选择前置任务“上传证书到腾讯云”任务的证书ID
component:
name: output-selector
from:
- ':cert:'
- UploadCertToTencent
required: true
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: Access提供者
helper: access 授权
component:
name: access-selector
type: tencent
required: true
order: 0
zoneId:
title: 站点ID
component:
name: remote-auto-complete
vModel: value
mode: tags
type: plugin
action: onGetZoneList
search: false
pager: false
watches:
- certDomains
- accessId
- certDomains
- accessId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 类似于zone-xxxx的字符串在站点概览页面左上角或者站点列表页面站点名称下方
order: 0
domainNames:
title: 加速域名
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetDomainList
search: false
pager: false
watches:
- certDomains
- accessId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 请选择域名或输入域名
order: 0
certName:
title: 证书名称
helper: 证书上传后将以此参数作为名称前缀
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-tencent/plugin/deploy-to-eo/index.js

View File

@@ -0,0 +1,133 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: DeployCertToTencentTKEIngress
title: 腾讯云-部署到TKE
needPlus: false
icon: svg:icon-tencentcloud
group: tencent
desc: |-
修改TKE集群密钥配置支持Opaque和TLS证书类型。注意
1. serverless集群请使用K8S部署插件
2. Opaque类型需要【上传到腾讯云】作为前置任务
3. ApiServer需要开通公网访问或者certd可访问实际上底层仍然是通过KubeClient进行部署
input:
ingressClass:
title: ingress证书类型
component:
name: a-select
vModel: value
options:
- value: nginx
label: TLS证书格式Nginx可用
- value: qcloud
label: Opaque格式CLB可用原qcloud
helper: clb将部署Opaque类型的证书nginx类型将部署TLS证书格式
required: true
order: 0
tencentCertId:
title: 腾讯云证书id
helper: 请选择“上传证书到腾讯云”前置任务的输出
component:
name: output-selector
from: UploadCertToTencent
mergeScript: |2-
return {
show: ctx.compute(({form})=>{
return form.ingressClass === "qcloud"|| form.ingressClass === "clb"
})
}
required: true
order: 0
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
mergeScript: |2-
return {
show: ctx.compute(({form})=>{
return form.ingressClass === "nginx"
})
}
required: true
order: 0
accessId:
title: Access授权
helper: access授权
component:
name: access-selector
type: tencent
required: true
order: 0
region:
title: 大区
value: ap-guangzhou
required: true
order: 0
clusterId:
title: 集群ID
required: true
desc: 例如cls-6lbj1vee
request: true
order: 0
namespace:
title: 集群namespace
value: default
required: true
order: 0
secretName:
title: 证书的secret名称
helper: 集群->配置管理->Secret,复制名称
required: true
component:
name: a-select
vModel: value
mode: tags
open: false
order: 0
clusterDomain:
title: 集群域名
helper: |-
ApiServer需要开通公网访问填写`ApiServer公网IP:443`
默认为:[clusterId].ccs.tencent-cloud.com可能访问不通
component:
placeholder: xx.xxx.xx.xx:443
order: 0
ingressName:
title: ingress名称
required: false
helper: 填写之后会自动重启ingress
component:
name: a-select
vModel: value
mode: tags
open: false
order: 0
skipTLSVerify:
title: 忽略证书校验
required: false
helper: 是否忽略证书校验
component:
name: a-switch
vModel: checked
order: 0
createOnNotFound:
title: Secret自动创建
helper: 如果Secret不存在则创建
value: false
component:
name: a-switch
vModel: checked
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-tencent/plugin/deploy-to-tke-ingress/index.js

View File

@@ -0,0 +1,57 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: ProxmoxUploadCert
title: Proxmox-上传证书到Proxmox
icon: svg:icon-proxmox
group: panel
needPlus: true
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
order: 0
accessId:
title: Proxmox授权
component:
name: access-selector
type: proxmox
required: true
order: 0
nodes:
title: 节点
component:
name: remote-select
vModel: value
mode: tags
type: plugin
typeName: ProxmoxUploadCert
action: onGetNodeList
search: false
pager: false
watches:
- certDomains
- accessId
- accessId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 要部署证书的节点
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-proxmox/plugins/plugin-upload.js

View File

@@ -0,0 +1,37 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: QiniuCertUpload
title: 七牛云-上传证书到七牛云
icon: svg:icon-qiniuyun
group: qiniu
desc: 上传到七牛云
input:
certName:
title: 证书名称
helper: 上传后将以此名称作为前缀备注
order: 0
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
required: true
order: 0
accessId:
title: Access授权
helper: 七牛云授权
component:
name: access-selector
type: qiniu
required: true
order: 0
output:
qiniuCertId:
title: 上传成功后的七牛云CertId
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-qiniu/plugin/upload-cert/index.js

View File

@@ -0,0 +1,78 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: QiniuDeployCertToCDN
title: 七牛云-部署证书至CDN/DCDN
icon: svg:icon-qiniuyun
group: qiniu
desc: 自动部署域名证书至七牛云CDN、DCDN
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书或者上传到七牛云的证书id
component:
name: output-selector
from:
- ':cert:'
- QiniuCertUpload
required: true
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: Access授权
helper: 七牛云授权
component:
name: access-selector
type: qiniu
required: true
order: 0
domainName:
title: CDN加速域名
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetDomainList
search: false
pager: false
watches:
- certDomains
- accessId
rules:
- type: domains
allowDotStart: true
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 你在七牛云上配置的CDN加速域名比如:certd.handsfree.work
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-qiniu/plugin/deploy-to-cdn/index.js

View File

@@ -0,0 +1,32 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: QnapDeploy
title: 威联通-部署证书到威联通
icon: svg:icon-qnap
group: panel
desc: 部署证书到qnap
needPlus: true
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
required: true
order: 0
accessId:
title: ssh登录授权
helper: ssh登录授权
component:
name: access-selector
type: ssh
required: true
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-qnap/plugins/plugin-qnap.js

View File

@@ -0,0 +1,73 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: RainyunRefreshCert
title: 雨云-更新证书
desc: app.rainyun.com
icon: svg:icon-rainyun
group: cdn
needPlus: false
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: 雨云授权
component:
name: access-selector
type: rainyun
required: true
order: 0
certList:
title: 证书Id
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetCertList
search: false
pager: false
watches:
- certDomains
- accessId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 要更新的rainyun证书id
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-rainyun/plugins/plugin-refresh-cert.js

View File

@@ -0,0 +1,137 @@
showRunStrategy: false
default:
strategy:
runStrategy: 0
name: TencentActionInstancesPlugin
title: 腾讯云-实例开关机
icon: svg:icon-tencentcloud
group: tencent
desc: 腾讯云实例开关机
needPlus: false
input:
accessId:
title: Access提供者
helper: access 授权
component:
name: access-selector
type: tencent
required: true
order: 0
region:
title: 所在地域
helper: 实例所在地域
component:
name: a-auto-complete
vModel: value
options:
- value: ''
label: '--------中国大陆地区-------'
disabled: true
- value: ap-beijing-1
label: 北京1区
- value: ap-beijing
label: 北京
- value: ap-nanjing
label: 南京
- value: ap-shanghai
label: 上海
- value: ap-guangzhou
label: 广州
- value: ap-chengdu
label: 成都
- value: ap-chongqing
label: 重庆
- value: ap-shenzhen-fsi
label: 深圳金融
- value: ap-shanghai-fsi
label: 上海金融
- value: ap-beijing-fsi
label: 北京金融
- value: ''
label: '--------中国香港及境外-------'
disabled: true
- value: ap-hongkong
label: 中国香港
- value: ap-singapore
label: 新加坡
- value: ap-mumbai
label: 孟买
- value: ap-jakarta
label: 雅加达
- value: ap-seoul
label: 首尔
- value: ap-bangkok
label: 曼谷
- value: ap-tokyo
label: 东京
- value: na-siliconvalley
label: 硅谷
- value: na-ashburn
label: 弗吉尼亚
- value: sa-saopaulo
label: 圣保罗
- value: eu-frankfurt
label: 法兰克福
required: true
order: 0
instanceId:
title: 实列ID
component:
name: remote-select
vModel: value
mode: tags
type: plugin
typeName: TencentStartInstancesPlugin
action: onGetInstanceList
search: false
pager: false
watches:
- certDomains
- accessId
- region
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 请选择实列
order: 0
action:
title: 操作
component:
name: a-radio-group
vModel: value
options:
- value: start
label: 开机
- value: stop
label: 关机
required: true
order: 0
charging:
title: 实例关机不收费
value: true
component:
name: a-switch
vModel: checked
placeholder: 按量计费实例关机不收费
required: false
mergeScript: |2-
return {
show: ctx.compute(({form})=>{
return form.action === 'stop';
})
}
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-tencent/plugin/start-instances/index.js

View File

@@ -0,0 +1,57 @@
showRunStrategy: false
default:
strategy:
runStrategy: 0
name: TencentDeleteExpiringCert
title: 腾讯云-删除即将过期证书
icon: svg:icon-tencentcloud
group: tencent
desc: 仅删除未使用的证书
needPlus: true
input:
accessId:
title: Access提供者
helper: access 授权
component:
name: access-selector
type: tencent
required: true
order: 0
searchKey:
title: 关键字筛选
helper: 仅匹配ID、备注名称、域名包含关键字的证书可以不填
required: false
component:
name: a-input
order: 0
maxCount:
title: 最大删除数量
helper: 单次运行最大删除数量
value: 100
component:
name: a-input-number
vModel: value
required: true
order: 0
expiringDays:
title: 即将过期天数
helper: 仅删除有效期小于此天数的证书
value: 18
component:
name: a-input-number
vModel: value
required: true
order: 0
checkTimeout:
title: 检查超时时间
helper: 检查删除任务结果超时时间,单位分钟
value: 10
component:
name: a-input-number
vModel: value
required: true
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-tencent/plugin/delete-expiring-cert/index.js

View File

@@ -0,0 +1,76 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: TencentDeployCertToCDNv2
title: 腾讯云-部署到CDN-v2
icon: svg:icon-tencentcloud
group: tencent
desc: 推荐使用
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书或者选择前置任务“上传证书到腾讯云”任务的证书ID
component:
name: output-selector
from:
- ':cert:'
- UploadCertToTencent
required: true
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: Access提供者
helper: access 授权
component:
name: access-selector
type: tencent
required: true
order: 0
domains:
title: CDN域名
component:
name: remote-select
vModel: value
mode: tags
type: plugin
typeName: TencentDeployCertToCDNv2
action: onGetDomainList
search: false
pager: false
watches:
- certDomains
- accessId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 请选择域名或输入域名
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-tencent/plugin/deploy-to-cdn-v2/index.js

View File

@@ -0,0 +1,60 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: TencentDeployCertToLive
title: 腾讯云-部署到腾讯云直播
icon: svg:icon-tencentcloud
desc: https://console.cloud.tencent.com/live/
group: tencent
needPlus: false
input:
accessId:
title: Access提供者
helper: access 授权
component:
name: access-selector
type: tencent
required: true
order: 0
domains:
title: 直播域名
component:
name: remote-select
vModel: value
mode: tags
type: plugin
typeName: TencentDeployCertToLive
action: onGetDomainList
search: false
pager: false
watches:
- certDomains
- accessId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 请选择域名或输入域名
order: 0
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书或者选择前置任务“上传证书到腾讯云”任务的证书ID
component:
name: output-selector
from:
- ':cert:'
- UploadCertToTencent
required: true
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-tencent/plugin/deploy-to-live/index.js

View File

@@ -0,0 +1,86 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: TencentRefreshCert
title: 腾讯云-更新证书(Id不变)
desc: 根据证书id一键更新腾讯云证书并自动部署Id不变注意该接口为腾讯云白名单功能非白名单用户无法使用该功能
icon: svg:icon-tencentcloud
group: tencent
needPlus: false
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: 腾讯云授权
component:
name: access-selector
type: tencent
required: true
order: 0
certList:
title: 证书Id
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetCertList
search: false
pager: false
watches:
- certDomains
- accessId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 要更新的证书id如果这里没有请先给手动绑定一次证书
order: 0
resourceTypesRegions:
title: 资源区域
helper: 如果云资源类型区分区域,请选择区域,如果区域在选项中不存在,请手动输入
component:
name: remote-tree-select
vModel: value
action: onGetRegionsTree
pager: false
search: false
watches:
- certList
required: false
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-tencent/plugin/refresh-cert/index.js

View File

@@ -0,0 +1,74 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: UCloudDeployToCDN
title: UCloud-部署到CDN
desc: 将证书部署到UCloud CDN
icon: svg:icon-ucloud
group: ucloud
needPlus: false
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
- ':UCloudCertId:'
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: UCloud授权
component:
name: access-selector
type: ucloud
required: true
order: 0
domainList:
title: 域名列表
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetDomainList
search: false
pager: false
watches:
- certDomains
- accessId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 要更新的UCloud域名列表
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-ucloud/plugins/plugin-deploy-to-cdn.js

View File

@@ -0,0 +1,73 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: UCloudDeployToWaf
title: UCloud-部署到WAF
desc: 将证书部署到UCloud WAF
icon: svg:icon-ucloud
group: ucloud
needPlus: false
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: UCloud授权
component:
name: access-selector
type: ucloud
required: true
order: 0
domainList:
title: 域名列表
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetDomainList
search: false
pager: false
watches:
- certDomains
- accessId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 要更新的UCloud域名列表
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-ucloud/plugins/plugin-deploy-to-waf.js

View File

@@ -0,0 +1,33 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: UCloudUploadToUSSL
title: UCloud-上传到USSL
desc: 将证书上传到UCloud USSL
icon: svg:icon-ucloud
group: ucloud
needPlus: false
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
order: 0
accessId:
title: UCloud授权
component:
name: access-selector
type: ucloud
required: true
order: 0
output:
certId:
title: 证书ID
type: UCloudCertId
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-ucloud/plugins/plugin-upload-to-ussl.js

View File

@@ -0,0 +1,33 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: UploadCertToTencent
title: 腾讯云-上传证书到腾讯云
icon: svg:icon-tencentcloud
desc: 上传成功后输出tencentCertId
group: tencent
input:
accessId:
title: Access授权
helper: access授权
component:
name: access-selector
type: tencent
required: true
order: 0
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
required: true
order: 0
output:
tencentCertId:
title: 上传成功后的腾讯云CertId
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-tencent/plugin/upload-to-tencent/index.js

View File

@@ -0,0 +1,105 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: UpyunDeployToCdn
title: 又拍云-部署证书到CDN/USS
icon: svg:icon-upyun
desc: 支持又拍云CDN又拍云云存储USS
group: cdn
needPlus: false
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: Upyun授权
component:
name: access-selector
type: upyun
required: true
order: 0
cdnList:
title: 加速域名
component:
name: remote-select
vModel: value
mode: tags
type: plugin
typeName: UpyunDeployToCdn
action: onGetCdnList
search: false
pager: false
watches:
- certDomains
- accessId
- accessId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 选择加速域名,可以手动输入
order: 0
forceHttps:
title: 强制HTTPS
value: keep
component:
name: a-select
vModel: value
options:
- value: 'true'
label: 强制HTTPS
- value: 'false'
label: 不强制HTTPS
- value: keep
label: 保持原样
required: true
order: 0
https:
title: 开启HTTPS
value: 'true'
component:
name: a-select
vModel: value
options:
- value: 'true'
label: 开启HTTPS
- value: 'false'
label: 关闭HTTPS
- value: keep
label: 保持原样
required: true
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-upyun/plugins/plugin-depoy-to-cdn.js

View File

@@ -0,0 +1,101 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: VolcengineDeployToALB
title: 火山引擎-部署证书至ALB
icon: svg:icon-volcengine
group: volcengine
desc: 部署至火山引擎应用负载均衡
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
- VolcengineUploadToCertCenter
required: true
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: Access授权
helper: 火山引擎AccessKeyId、AccessKeySecret
component:
name: access-selector
type: volcengine
required: true
order: 0
regionId:
title: Region
helper: 地区选择
component:
name: a-select
options:
- label: 北京
value: cn-beijing
- label: 上海
value: cn-shanghai
- label: 广州
value: cn-guangzhou
- label: 香港
value: cn-hongkong
- label: 柔佛
value: ap-southeast-1
- label: 雅加达
value: ap-southeast-3
value: cn-beijing
required: true
order: 0
listenerList:
title: 监听器列表
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetListenerList
search: false
pager: false
watches:
- certDomains
- accessId
- certDomains
- accessId
- regionId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: |-
选择要部署证书的监听器
需要在监听器中选择证书中心,进行跨服务访问授权
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-volcengine/plugins/plugin-deploy-to-alb.js

View File

@@ -0,0 +1,93 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: VolcengineDeployToCDN
title: 火山引擎-部署证书至CDN
icon: svg:icon-volcengine
group: volcengine
desc: 支持网页,文件下载,音视频点播
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
- VolcengineUploadToCertCenter
required: true
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: Access授权
helper: 火山引擎AccessKeyId、AccessKeySecret
component:
name: access-selector
type: volcengine
required: true
order: 0
serviceType:
title: 服务类型
helper: 网页,文件下载,音视频点播
component:
name: a-select
options:
- label: 网页
value: web
- label: 文件下载
value: download
- label: 音视频点播
value: video
value: web
required: true
order: 0
domainName:
title: CDN加速域名
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetDomainList
search: false
pager: false
watches:
- certDomains
- accessId
- certDomains
- accessId
- serviceType
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 你在火山引擎上配置的CDN加速域名比如:certd.docmirror.cn
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-volcengine/plugins/plugin-deploy-to-cdn.js

View File

@@ -0,0 +1,111 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: VolcengineDeployToCLB
title: 火山引擎-部署证书至CLB
icon: svg:icon-volcengine
group: volcengine
desc: 部署至火山引擎负载均衡
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
- VolcengineUploadToCertCenter
required: true
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: Access授权
helper: 火山引擎AccessKeyId、AccessKeySecret
component:
name: access-selector
type: volcengine
required: true
order: 0
regionId:
title: Region
helper: 地区选择
component:
name: a-select
options:
- label: 北京
value: cn-beijing
- label: 上海
value: cn-shanghai
- label: 广州
value: cn-guangzhou
- label: 深圳
value: cn-shenzhen
- label: 杭州
value: cn-hangzhou
- label: 南京
value: cn-north-1
- label: 青岛
value: cn-qingdao
- label: 重庆
value: cn-chengdu
- label: 香港
value: cn-hongkong
- label: 柔佛
value: ap-southeast-1
- label: 雅加达
value: ap-southeast-3
value: cn-beijing
required: true
order: 0
listenerList:
title: 监听器列表
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetListenerList
search: false
pager: false
watches:
- certDomains
- accessId
- certDomains
- accessId
- regionId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: |-
选择要部署证书的监听器
<span class='color-blue'>需要在监听器中选择证书中心,进行跨服务访问授权</span>
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-volcengine/plugins/plugin-deploy-to-clb.js

View File

@@ -0,0 +1,83 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: VolcengineDeployToDCDN
title: 火山引擎-部署证书至DCDN
icon: svg:icon-volcengine
group: volcengine
desc: 部署至火山引擎全站加速
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
required: true
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
autoMatch:
title: 自动匹配
helper: 是否根据证书自动匹配合适的DCDN域名进行部署
value: false
component:
name: a-switch
type: checked
required: true
order: 0
accessId:
title: Access授权
helper: 火山引擎AccessKeyId、AccessKeySecret
component:
name: access-selector
type: volcengine
required: true
order: 0
domainList:
title: DCDN域名
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetDomainList
search: false
pager: false
watches:
- certDomains
- accessId
- certDomains
- accessId
required: true
mergeScript: |2-
return {
show: ctx.compute(({form})=>{
return !form.autoMatch
})
}
helper: 选择要部署证书的DCDN域名
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-volcengine/plugins/plugin-deploy-to-dcdn.js

View File

@@ -0,0 +1,76 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: VolcengineDeployToLive
title: 火山引擎-部署证书至Live
icon: svg:icon-volcengine
group: volcengine
desc: 部署至火山引擎视频直播
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
required: true
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: Access授权
helper: 火山引擎AccessKeyId、AccessKeySecret
component:
name: access-selector
type: volcengine
required: true
order: 0
domainList:
title: 直播域名
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetDomainList
search: false
pager: false
watches:
- certDomains
- accessId
- certDomains
- accessId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 选择要部署证书的直播域名
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-volcengine/plugins/plugin-deploy-to-live.js

View File

@@ -0,0 +1,85 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: VolcengineDeployToVOD
title: 火山引擎-部署证书至VOD
icon: svg:icon-volcengine
group: volcengine
desc: 部署至火山引擎视频点播(暂不可用)
deprecated: 暂时缺少部署ssl接口
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
- VolcengineUploadToCertCenter
required: true
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: Access授权
helper: 火山引擎AccessKeyId、AccessKeySecret
component:
name: access-selector
type: volcengine
required: true
order: 0
spaceName:
title: 空间名称
required: true
order: 0
domainList:
title: 点播域名
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetDomainList
search: false
pager: false
watches:
- certDomains
- accessId
- certDomains
- accessId
- spaceName
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: |-
选择要部署证书的点播域名
需要先在域名管理页面进行证书中心访问授权即点击去配置SSL证书
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-volcengine/plugins/plugin-deploy-to-vod.js

View File

@@ -0,0 +1,50 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: VolcengineUploadToCertCenter
title: 火山引擎-上传证书至证书中心
icon: svg:icon-volcengine
group: volcengine
desc: 上传证书至火山引擎证书中心
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
required: true
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: Access授权
helper: 火山引擎AccessKeyId、AccessKeySecret
component:
name: access-selector
type: volcengine
required: true
order: 0
output:
volcengineCertId:
title: 上传成功后的火山引擎证书Id
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-volcengine/plugins/plugin-upload-to-cert-center.js

View File

@@ -0,0 +1,23 @@
showRunStrategy: true
default:
strategy:
runStrategy: 1
name: WaitPlugin
title: 等待
icon: ri:rest-time-line
desc: 等待一段时间
group: other
input:
waitTime:
title: 等待时长
value: 30
component:
name: a-input-number
vModel: value
helper: 单位:秒
required: true
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-other/plugins/plugin-wait.js

View File

@@ -0,0 +1,73 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: WangsuRefreshCert
title: 网宿-更新证书
desc: 网宿证书自动更新
icon: svg:icon-wangsu
group: cdn
needPlus: false
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: 网宿授权
component:
name: access-selector
type: wangsu
required: true
order: 0
certList:
title: 证书Id
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetCertList
search: false
pager: false
watches:
- certDomains
- accessId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 要更新的网宿证书id
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-wangsu/plugins/plugin-refresh-cert.js

View File

@@ -0,0 +1,111 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: WebhookDeployCert
title: webhook方式部署证书
icon: ion:send-sharp
desc: 调用webhook部署证书
group: other
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
required: true
order: 0
webhook:
title: webhook地址
component:
placeholder: https://xxxxx.com/xxxx
col:
span: 24
required: true
order: 0
method:
title: 请求方式
value: POST
component:
name: a-select
placeholder: post/put/get
options:
- value: POST
label: POST
- value: PUT
label: PUT
- value: GET
label: GET
required: true
order: 0
contentType:
title: ContentType
value: application/json
component:
name: a-auto-complete
options:
- value: application/json
label: application/json
- value: application/x-www-form-urlencoded
label: application/x-www-form-urlencoded
helper: 也可以自定义填写
required: true
order: 0
headers:
title: Headers
component:
name: a-textarea
vModel: value
rows: 2
col:
span: 24
helper: 一行一个格式为key=value
required: false
order: 0
template:
title: 消息body模版
value: |-
{
"id":"123",
"crt":"${crt}",
"key":"${key}"
}
component:
name: a-textarea
rows: 4
col:
span: 24
helper: >-
根据对应的webhook接口文档构建一个json对象作为参数默认值只是一个示例一般不是正确的参数
变量用${}包裹
字符串需要双引号,使用\n换行
如果是get方式将作为query参数拼接到url上
变量列表:${domain} 主域名、${domains} 全部域名、${crt} 证书、${key} 私钥、${ic} 中间证书、${one}
一体证书、${der} der证书(base64)、${pfx} pfx证书(base64)、${jks} jks证书(base64)、
required: true
order: 0
skipSslVerify:
title: 忽略证书校验
value: false
component:
name: a-switch
vModel: checked
required: false
order: 0
successStr:
title: 成功判定
helper: 返回结果中包含此字符串则表示部署成功不填则仅通过statusCode判定
component:
name: a-input
placeholder: 例如: status:"success"
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-other/plugins/plugin-webhook.js

View File

@@ -0,0 +1,73 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: WestDeployToVhost
title: 西数-部署到虚拟主机
desc: 西部数码部署证书到虚拟主机
icon: svg:icon-lucky
group: cdn
needPlus: false
input:
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
order: 0
certDomains:
title: 当前证书域名
component:
name: cert-domains-getter
mergeScript: |2-
return {
component:{
inputKey: ctx.compute(({form})=>{
return form.cert
}),
}
}
template: false
required: false
order: 0
accessId:
title: 西数授权
component:
name: access-selector
type: west
required: true
order: 0
vhostList:
title: 虚拟主机列表
component:
name: remote-select
vModel: value
mode: tags
type: plugin
action: onGetVhostList
search: false
pager: false
watches:
- certDomains
- accessId
required: true
mergeScript: |2-
return {
component:{
form: ctx.compute(({form})=>{
return form
})
},
}
helper: 虚拟主机列表
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-west/plugins/deploy-to-vhost.js

View File

@@ -0,0 +1,45 @@
showRunStrategy: false
default:
strategy:
runStrategy: 1
name: WoaiCDN
title: 我爱云-部署证书到我爱云CDN
desc: 部署证书到我爱云CDN
icon: clarity:plugin-line
group: cdn
input:
baseApi:
title: 接口地址(可留空)
helper: 请填写我爱云的地址, 默认为 [API](https://console.edeg.ttzi.cn) 末尾请不要携带`/`
component:
name: a-input
required: false
order: 0
certId:
title: 证书ID
helper: 请填写 [证书列表](https://console.edge.ttzi.cn/site/certificate) 中的证书的ID
component:
name: a-input
required: true
order: 0
cert:
title: 域名证书
helper: 请选择前置任务输出的域名证书
component:
name: output-selector
from:
- ':cert:'
required: true
order: 0
accessId:
title: Access授权
helper: 我爱云的用户、密码授权
component:
name: access-selector
type: woai
required: true
order: 0
output: {}
type: builtIn
pluginType: deploy
scriptFilePath: ../../../plugins/plugin-woai/plugins/plugin-deploy-to-cdn.js

View File

@@ -0,0 +1,9 @@
name: dnspod
title: dnspod(已过时,请尽快换成腾讯云)
desc: 已废弃,请尽快换成腾讯云类型
accessType: dnspod
deprecated: dnspod已废弃请换成腾讯云
icon: svg:icon-tencentcloud
type: builtIn
pluginType: dnsProvider
scriptFilePath: ../../../plugins/plugin-tencent/dns-provider/dnspod-dns-provider.js

View File

@@ -0,0 +1,8 @@
name: rainyun
title: 雨云
desc: 雨云DNS解析提供商
accessType: rainyun
icon: svg:icon-rainyun
type: builtIn
pluginType: dnsProvider
scriptFilePath: ../../../plugins/plugin-rainyun/dns-provider.js

View File

@@ -0,0 +1,8 @@
name: tencent-eo
title: 腾讯云EO DNS
desc: 腾讯云EO DNS解析提供者
accessType: tencent
icon: svg:icon-tencentcloud
type: builtIn
pluginType: dnsProvider
scriptFilePath: ../../../plugins/plugin-tencent/dns-provider/teo-dns-provider.js

View File

@@ -0,0 +1,8 @@
name: tencent
title: 腾讯云
desc: 腾讯云域名DNS解析提供者
accessType: tencent
icon: svg:icon-tencentcloud
type: builtIn
pluginType: dnsProvider
scriptFilePath: ../../../plugins/plugin-tencent/dns-provider/tencent-dns-provider.js

View File

@@ -0,0 +1,9 @@
name: volcengine
title: 火山引擎
desc: 火山引擎DNS解析提供商
accessType: volcengine
icon: svg:icon-volcengine
order: 2
type: builtIn
pluginType: dnsProvider
scriptFilePath: ../../../plugins/plugin-volcengine/volcengine-dns-provider.js

View File

@@ -0,0 +1,8 @@
name: west
title: 西部数码
desc: west dns provider
icon: svg:icon-xibushuma
accessType: west
type: builtIn
pluginType: dnsProvider
scriptFilePath: ../../../plugins/plugin-west/dns-provider.js

View File

@@ -0,0 +1,9 @@
name: xinnet
title: 新网
desc: 新网域名解析
icon: svg:icon-xinnet
accessType: xinnet
order: 7
type: builtIn
pluginType: dnsProvider
scriptFilePath: ../../../plugins/plugin-xinnet/dns-provider.js

View File

@@ -0,0 +1,9 @@
name: xinnetagent
title: 新网(代理方式)
desc: 新网域名解析(代理方式)
icon: svg:icon-xinnet
accessType: xinnetagent
order: 7
type: builtIn
pluginType: dnsProvider
scriptFilePath: ../../../plugins/plugin-xinnet/dns-provider-agent.js

View File

@@ -0,0 +1,9 @@
name: xinnetconnect
title: 新网互联
desc: 新网互联
icon: svg:icon-xinnet
accessType: xinnetconnect
order: 999
type: builtIn
pluginType: dnsProvider
scriptFilePath: ../../../plugins/plugin-xinnetconnet/dns-provider.js

View File

@@ -0,0 +1,41 @@
name: onebot
title: OneBot V11 通知
desc: 通过动态拼接URL发送 OneBot V11 协议消息
needPlus: false
input:
baseUrl:
title: 服务地址
component:
placeholder: http://xxxx.xxxx.xxxx
helper: OneBot 服务的基础地址不包含action路径
required: true
rules:
- type: url
message: 请输入有效的HTTP/HTTPS地址
targetType:
title: 目标类型
component:
name: a-select
options:
- value: group
label: 群聊
- value: private
label: 私聊
required: true
helper: 选择消息发送的目标类型
targetId:
title: 目标ID
component:
name: a-input-number
placeholder: '123456789'
helper: 群聊ID或用户ID纯数字
required: true
accessToken:
title: 鉴权密钥
component:
placeholder: xxxxxxxxxx
helper: (选填)访问API的授权令牌无token时留空
required: false
type: builtIn
pluginType: notification
scriptFilePath: ../../../plugins/plugin-notification/onebot/index.js

View File

@@ -0,0 +1,32 @@
name: qywx
title: 企业微信通知
desc: 企业微信群聊机器人通知
needPlus: true
input:
webhook:
title: webhook地址
component:
placeholder: https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxx
helper: '[企微群聊机器人配置说明](https://developer.work.weixin.qq.com/document/path/91770)'
required: true
mentionedList:
title: 提醒指定成员
component:
name: a-select
vModel: value
mode: tags
open: false
required: false
helper: 填写成员名字,@all 为提醒所有人
mentionedMobileList:
title: 提醒指定手机号成员
component:
name: a-select
vModel: value
mode: tags
open: false
required: false
helper: 填写成员手机号,@all 为提醒所有人
type: builtIn
pluginType: notification
scriptFilePath: ../../../plugins/plugin-notification/qywx/index.js

View File

@@ -0,0 +1,37 @@
name: serverchan
title: Server酱ᵀ
desc: https://sct.ftqq.com/
needPlus: true
input:
endpoint:
title: 服务地址
value: https://sctapi.ftqq.com
required: true
sendKey:
title: SendKey
component:
placeholder: https://sctapi.ftqq.com/<SENDKEY>.send
helper: https://sct.ftqq.com/ 微信扫码获取
required: true
channel:
title: 消息通道号
component:
placeholder: 9|66
helper: 可以不填,最多两个通道,[通道配置说明](https://sct.ftqq.com/sendkey)
required: false
noip:
title: 是否隐藏IP
component:
name: a-switch
vModel: checked
required: false
skipSslVerify:
title: 忽略证书校验
value: false
component:
name: a-switch
vModel: checked
required: false
type: builtIn
pluginType: notification
scriptFilePath: ../../../plugins/plugin-notification/serverchan/index.js

View File

@@ -0,0 +1,32 @@
name: serverchan3
title: Server酱³
desc: https://doc.sc3.ft07.com/serverchan3
needPlus: true
input:
apiURL:
title: ApiURL
component:
placeholder: https://uid.push.ft07.com/send/sendKey.send
required: true
tags:
title: 标签Tags
component:
name: a-select
vModel: value
mode: tags
open: false
helper: 支持多个,回车后填写下一个
required: false
short:
title: short
required: false
skipSslVerify:
title: 忽略证书校验
value: false
component:
name: a-switch
vModel: checked
required: false
type: builtIn
pluginType: notification
scriptFilePath: ../../../plugins/plugin-notification/serverchan3/index.js

View File

@@ -0,0 +1,30 @@
name: slack
title: Slack通知
desc: Slack消息推送通知
needPlus: true
input:
webhook:
title: webhook地址
component:
placeholder: >-
https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX
helper: >-
[APPS](https://api.slack.com/apps/)->进入APP->incoming-webhooks->Add New
Webhook to Workspace
required: true
httpsProxy:
title: 代理
component:
placeholder: http://xxxxx:xx
helper: 使用https_proxy
required: false
skipSslVerify:
title: 忽略证书校验
value: false
component:
name: a-switch
vModel: checked
required: false
type: builtIn
pluginType: notification
scriptFilePath: ../../../plugins/plugin-notification/slack/index.js

View File

@@ -0,0 +1,39 @@
name: telegram
title: Telegram通知
desc: Telegram Bot推送通知
needPlus: true
input:
endpoint:
title: URL
value: https://api.telegram.org
component:
placeholder: https://api.telegram.org
required: true
botToken:
title: Bot Token
component:
placeholder: 123456789:ABCdefGhijklmnopqrstUVWXyz
helper: '[token获取](https://core.telegram.org/bots/features#botfather)'
required: true
chatId:
title: 聊天ID
component:
placeholder: 聊天ID例如 123456789 或 @channelusername
helper: 用户ID(纯数字)或频道名称(@xxxx)
required: true
httpsProxy:
title: 代理
component:
placeholder: http://xxxxx:xx
helper: 使用https_proxy
required: false
skipSslVerify:
title: 忽略证书校验
value: false
component:
name: a-switch
vModel: checked
required: false
type: builtIn
pluginType: notification
scriptFilePath: ../../../plugins/plugin-notification/telegram/index.js

View File

@@ -0,0 +1,43 @@
name: vocechat
title: VoceChat通知
desc: https://voce.chat
needPlus: true
input:
endpoint:
title: 服务地址
component:
placeholder: https://replace.your.domain
required: true
apiKey:
title: apiKey
component:
placeholder: ''
helper: '[获取APIKEY](https://doc.voce.chat/bot/bot-and-webhook)'
required: true
targetType:
title: 目标类型
component:
name: a-select
options:
- value: user
label: 用户
- value: channel
label: 频道
required: true
helper: 发送消息的目标类型
targetId:
title: 目标ID
component:
placeholder: 发送消息的目标ID
required: true
helper: 目标ID可以是用户ID或频道ID
skipSslVerify:
title: 忽略证书校验
value: false
component:
name: a-switch
vModel: checked
required: false
type: builtIn
pluginType: notification
scriptFilePath: ../../../plugins/plugin-notification/vocechat/index.js

View File

@@ -0,0 +1,76 @@
name: webhook
title: 自定义webhook
desc: 根据模版自定义http请求
order: -100
input:
webhook:
title: webhook地址
component:
placeholder: https://xxxxx.com/xxxx
col:
span: 24
required: true
method:
title: 请求方式
value: POST
component:
name: a-select
placeholder: post/put/get
options:
- value: POST
label: POST
- value: PUT
label: PUT
- value: GET
label: GET
required: true
contentType:
title: ContentType
value: application/json
component:
name: a-auto-complete
options:
- value: application/json
label: application/json
- value: application/x-www-form-urlencoded
label: application/x-www-form-urlencoded
helper: 也可以自定义填写
required: true
headers:
title: Headers
component:
name: a-textarea
vModel: value
rows: 2
col:
span: 24
helper: 一行一个格式为key=value
required: false
template:
title: 消息body模版
value: |-
{
"title":"{title}",
"content":"{content}\n[查看详情]({url})"
}
component:
name: a-textarea
rows: 4
col:
span: 24
helper: |-
根据对应的webhook接口文档构建一个json对象作为参数默认值只是一个示例一般不是正确的参数
支持变量:{title}、{content}、{url},变量用{}包裹
字符串需要双引号,使用\n换行
如果是get方式将作为query参数拼接到url上
required: true
skipSslVerify:
title: 忽略证书校验
value: false
component:
name: a-switch
vModel: checked
required: false
type: builtIn
pluginType: notification
scriptFilePath: ../../../plugins/plugin-notification/webhook/index.js

View File

@@ -0,0 +1,64 @@
addonType: oauth
name: clogin
title: 彩虹聚合登录
desc: 彩虹聚合登录
icon: emojione:rainbow
showTest: false
input:
endpoint:
title: 系统地址
helper: http://clogin.xxxx.com/
required: true
col:
span: 24
loginType:
title: 登录类型
component:
name: a-auto-complete
options:
- label: QQ
value: qq
- label: 微信
value: wx
- label: 支付宝
value: alipay
- label: 微博
value: sina
- label: 百度
value: baidu
- label: 华为
value: huawei
- label: 小米
value: xiaomi
- label: 谷歌
value: google
- label: 微软
value: microsoft
- label: Facebook
value: facebook
- label: Twitter
value: twitter
- label: 钉钉
value: dingtalk
- label: Gitee
value: gitee
- label: Github
value: github
required: true
icon:
title: 自定义图标
component:
name: fs-icon-selector
vModel: modelValue
required: false
appId:
title: AppId
helper: 彩虹聚合登录->应用列表->创建应用 获取
required: true
appKey:
title: AppKey
component:
placeholder: AppKey
required: true
type: builtIn
scriptFilePath: ../../../plugins/plugin-oauth/oauth2/plugin-clogin.js

View File

@@ -0,0 +1,66 @@
addonType: emailTemplate
name: common
title: 通用邮件模版
desc: 使用通用的邮件标题和内容内容外部可以自定义html进行美化
icon: simple-icons:email:blue
showTest: false
input:
useIntro:
title: 配置说明
component:
name: a-alert
props:
type: info
message: 在标题和内容模版中,通过${name}引用参数,例如: 感谢注册,您的注册验证码为:${code}
order: -9
col:
span: 24
formatType:
title: 邮件格式
component:
name: a-select
props:
options:
- label: HTML
value: html
- label: TEXT
value: text
order: 9
col:
span: 24
required: true
titleTemplate:
title: 邮件标题模版
required: true
order: 10
component:
name: a-input
props:
placeholder: 邮件标题模版
col:
span: 24
contentTemplate:
title: 邮件内容模版
component:
name: a-textarea
rows: 6
order: 20
col:
span: 24
required: true
paramIntro:
title: 可用参数
component:
name: ParamsShow
params:
- label: 标题
value: title
- label: 内容
value: content
- label: URL
value: url
helper: html格式下${content}建议使用pre标签包裹例如&lt;pre&gt;${content}&lt;/pre&gt;
col:
span: 24
type: builtIn
scriptFilePath: ../../../plugins/plugin-template/email/plugin-common.js

View File

@@ -0,0 +1,61 @@
addonType: emailTemplate
name: forgotPassword
title: 忘记密码邮件模版
desc: 您正在重置密码您的验证码为xxxx请勿泄露
icon: simple-icons:email:blue
showTest: false
input:
useIntro:
title: 配置说明
component:
name: a-alert
props:
type: info
message: 在标题和内容模版中,通过${name}引用参数,例如: 感谢注册,您的注册验证码为:${code}
order: -9
col:
span: 24
formatType:
title: 邮件格式
component:
name: a-select
props:
options:
- label: HTML
value: html
- label: TEXT
value: text
order: 9
col:
span: 24
required: true
titleTemplate:
title: 邮件标题模版
required: true
order: 10
component:
name: a-input
props:
placeholder: 邮件标题模版
col:
span: 24
contentTemplate:
title: 邮件内容模版
component:
name: a-textarea
rows: 6
order: 20
col:
span: 24
required: true
paramIntro:
title: 可用参数
component:
name: ParamsShow
params:
- label: 验证码
value: code
col:
span: 24
type: builtIn
scriptFilePath: ../../../plugins/plugin-template/email/plugin-forgot-password.js

View File

@@ -0,0 +1,18 @@
addonType: oauth
name: gitee
title: Gitee认证
desc: Gitee OAuth2登录
icon: simple-icons:gitee:red
showTest: false
input:
clientId:
title: ClientId
helper: '[gitee 第三方应用管理](https://gitee.com/oauth/applications)创建应用后获取'
required: true
clientSecretKey:
title: ClientSecretKey
component:
placeholder: ClientSecretKey / appSecretKey
required: true
type: builtIn
scriptFilePath: ../../../plugins/plugin-oauth/oauth2/plugin-gitee.js

View File

@@ -0,0 +1,30 @@
addonType: oauth
name: oidc
title: OIDC认证
desc: OpenID Connect 认证,统一认证服务
icon: simple-icons:fusionauth:#006be6
showTest: false
input:
icon:
title: 自定义图标
component:
name: fs-icon-selector
vModel: modelValue
required: false
clientId:
title: ClientId
helper: ClientId / appId
required: true
clientSecretKey:
title: ClientSecretKey
component:
placeholder: ClientSecretKey / appSecretKey
required: true
issuerUrl:
title: 服务地址
helper: Issuer地址服务发现地址去掉/.well-known/openid-configuration
component:
placeholder: https://oidc.example.com/oidc
required: true
type: builtIn
scriptFilePath: ../../../plugins/plugin-oauth/oidc/plugin-oidc.js

View File

@@ -0,0 +1,71 @@
addonType: emailTemplate
name: pipelineResult
title: 流水线执行结果邮件模版
desc: 执行失败xxxx自动化【流水线id】运行ID:xxx,错误信息:xxxx
icon: simple-icons:email:blue
showTest: false
input:
useIntro:
title: 配置说明
component:
name: a-alert
props:
type: info
message: 在标题和内容模版中,通过${name}引用参数,例如: 感谢注册,您的注册验证码为:${code}
order: -9
col:
span: 24
formatType:
title: 邮件格式
component:
name: a-select
props:
options:
- label: HTML
value: html
- label: TEXT
value: text
order: 9
col:
span: 24
required: true
titleTemplate:
title: 邮件标题模版
required: true
order: 10
component:
name: a-input
props:
placeholder: 邮件标题模版
col:
span: 24
contentTemplate:
title: 邮件内容模版
component:
name: a-textarea
rows: 6
order: 20
col:
span: 24
required: true
paramIntro:
title: 可用参数
component:
name: ParamsShow
params:
- label: 运行结果
value: pipelineResult
- label: 流水线标题
value: pipelineTitle
- label: 流水线ID
value: pipelineId
- label: 运行Id
value: historyId
- label: 错误信息
value: errors
- label: URL
value: url
col:
span: 24
type: builtIn
scriptFilePath: ../../../plugins/plugin-template/email/plugin-pipeline-result.js

View File

@@ -0,0 +1,61 @@
addonType: emailTemplate
name: registerCode
title: 注册验证码邮件模版
desc: 您的注册验证码为xxxx请勿泄露
icon: simple-icons:email:blue
showTest: false
input:
useIntro:
title: 配置说明
component:
name: a-alert
props:
type: info
message: 在标题和内容模版中,通过${name}引用参数,例如: 感谢注册,您的注册验证码为:${code}
order: -9
col:
span: 24
formatType:
title: 邮件格式
component:
name: a-select
props:
options:
- label: HTML
value: html
- label: TEXT
value: text
order: 9
col:
span: 24
required: true
titleTemplate:
title: 邮件标题模版
required: true
order: 10
component:
name: a-input
props:
placeholder: 邮件标题模版
col:
span: 24
contentTemplate:
title: 邮件内容模版
component:
name: a-textarea
rows: 6
order: 20
col:
span: 24
required: true
paramIntro:
title: 可用参数
component:
name: ParamsShow
params:
- label: 验证码
value: code
col:
span: 24
type: builtIn
scriptFilePath: ../../../plugins/plugin-template/email/plugin-register-code.js

View File

@@ -0,0 +1,18 @@
addonType: oauth
name: wx
title: 微信登录
desc: 微信网站应用登录
icon: ion:logo-wechat:green
showTest: false
input:
appId:
title: AppId
required: true
helper: 在[微信开放平台](https://open.weixin.qq.com/cgi-bin/index)注册网站应用后获取
appSecretKey:
title: AppSecretKey
component:
placeholder: AppSecretKey
required: true
type: builtIn
scriptFilePath: ../../../plugins/plugin-oauth/wx/plugin-wx.js

View File

@@ -23,7 +23,7 @@ export class OneBotNotification extends BaseNotification {
required: true,
rules: [
{
validator: (value) => /^https?:\/\/\S+$/.test(value),
type: 'url',
message: '请输入有效的HTTP/HTTPS地址'
}
]
@@ -49,16 +49,11 @@ export class OneBotNotification extends BaseNotification {
@NotificationInput({
title: '目标ID',
component: {
name: 'a-input-number',
placeholder: '123456789',
},
helper: '群聊ID或用户ID纯数字',
required: true,
rules: [
{
validator: (value) => /^\d+$/.test(value),
message: 'ID必须为纯数字'
}
]
})
targetId = '';