标准插件是标准运维任务执行的最小单元,对应于内部某项服务(如定时)或者第三方系统API的调用(如JOB-快速执行脚本),通过将API参数前端表单 化,加上参数校验、逻辑封装等功能,以图形化的方式提供给用户使用。
标准插件架构包含插件定义Component、后台执行逻辑Service、以及前端表单配置Forms。
标准运维通过插件自动发现机制,在启动 SaaS 服务时扫描每个已经注册到 Django 中的 APP (INSTALLED_APPS)下特定的目录(包括子目录),自动发现并注册合法的标准插件,这些待扫描的目录能够通过 Django settings 下的 COMPONENT_PATH
进行配置:
COMPONENT_PATH = [
'custom.components.path',
]
标准运维默认会扫描已注册 APP 的 components.collections
目录,尝试从该目录下(包括子目录)所有的 Python 模块中发现并注册合法的标准插件。
标准运维插件自动发现机制的实现代码可以参考 pipeline.component_framework.apps
和 pipeline.utils.register
模块。
请确保组件版本版本:
- install_ee >= v1.9.5
- job >= v2.5.18
若组件版本不符合要求,升级版本后,需要重新部署标准运维
确保开发者中心 #### S-mart应用 #### 标准运维 #### 环境变量
中包含有以下变量:
- BKAPP_ENABLE_SHARED_FS:允许挂载 NFS,应为
True
- BKAPP_FILE_MANAGER_TYPE:文件管理类型,应为
host_nfs
- BKAPP_NFS_CONTAINER_ROOT:NFS 挂载路径,应为
/data/app/code/USERRES
- BKAPP_NFS_HOST_ROOT:NFS 宿主机路径,应为
/data/bkee/paas_agent/apps/projects/bk_sops/code/bk_sops/USERRES
确保开发者中心 #### S-mart应用 #### 标准运维 #### 环境变量
中包含有以下变量:
- BKAPP_SOPS_WECHAT_WORK_WEB_HOOK:企业微信机器人发送消息 webhook 地址