运维系统应用对接详情与规范

1. 应用包套件规范

1.1 包格式信息

plugins.rpk ├── package.yml ├── package.tar.xz ├── scripts │ ├── install.sh │ ├── uninstall.sh │ ├── reinstall.sh │ ├── start.sh │ ├── stop.sh │ ├── restart.sh │ └── status.sh ├── conf │ └── resource ├── description.md ├── LICENSE └── package_icon.png

1.2 结构描述

文件/文件夹名称 是否必须 描述 文件类型
package.yml 描述包信息的文件,包括执行与配置信息 YML文件
package.tar.xz 应用包运行文件压缩包,包含应用运行所需要的全部文件 压缩文件(根据实际应用结构调整)
scripts 应用的安装/卸载/重装/运行/停止/状态等脚本文件夹 文件夹
conf 应用的相关配置/资源文件 文件夹
description.md 应用的详情描述文件 markdown/html
LICENSE 许可协议文件 txt
package_icon.png 应用的图标文件 png/jpg/icon

2. 应用包yml规范

2.2 YAML 字段规范说明

2.3 应用包YAML规范完整字段表

层级 字段路径 值类型 是否必填 描述 枚举值/备注
根层级 format 字符串 格式化版本 通常为"1.0"
根层级 package object 应用包信息集 -
package name 字符串 应用名称 -
package displayName/zh_CN 字符串 简体中文显示名 -
package displayName/en 字符串 英文显示名 -
package category 枚举 应用类型 system(系统服务)/core(核心软件包)/plugin(插件)
package labels 数组 标签列表 如:["system","robot"]
package description/brief 字符串 简短描述 -
package description/detail 字符串 详细描述 支持md/html格式
package version 字符串 版本号 格式:主.次.修订号-构建号
package author 字符串 作者/开发者 -
package email 字符串 联系邮箱 -
package url 字符串 项目主页 -
package license 字符串 许可协议类型 如:MIT/Apache-2.0
package icon 字符串 图标路径 相对路径(文件格式不限制,可以为PNG、JPG、ICON等)
package arch 枚举 平台架构 x86/arm
package size 字符串 应用大小 单位:字节
package pluginType 枚举 插件类型 0:示教器插件
1:控制器插件
2:ARCS
3:其他
package LICENSE 字符串 许可文件路径 -
package jumpto string 跳转链接 -
package switchStatus int 功能开关 1:启用
0:禁用
package web/name string Web页面名称 -
package web/navMenuList string 导航菜单配置 -
package wire/url string Wire链接地址 -
根层级 update object 更新配置 -
update check_updates 布尔值 自动检查更新 true/false
update download 枚举 下载方式 url(URL下载)/docker(Docker)/other(其他)
根层级 requirements array 依赖项列表 -
requirements - 字符串 依赖包声明 格式:包名@版本范围
根层级 scripts object 脚本配置集 -
scripts install/method 枚举 安装方式 shell/docker/arcs/ops
scripts install/env 字符串 环境变量 -
scripts install/prefix 字符串 安装目录 -
scripts install/script 字符串 安装脚本路径 -
scripts uninstall/method 枚举 卸载方式 shell/docker/arcs/ops
scripts reinstall 枚举 重装方式 shell/docker/arcs/ops
scripts enable 字符串 启用脚本路径 -
scripts disable 字符串 禁用脚本路径 -
scripts start 字符串 启动脚本路径 -
scripts stop 字符串 停止脚本路径 -
scripts restart 字符串 重启脚本路径 -
scripts status 字符串 状态检查脚本路径 -

3. yml结构示例

# yml版本信息
format: 1.0

# 安装包/应用的信息
package:
  name: profinet
  displayName:
    zh_CN: profinet(zh_CN)
    en: profinet
  category: pn_server
  labels: system,robot
  description:
    brief: This is the description information of Profinet
    detail: 文件,支持 md/html 等格式
  version: 0.3.0
  author: aubo
  email: aubo@aubo-robotics.cn
  url: https://www.aubo-robotics.cn/
  license: 
  icon: package_icon.png
  pluginType: 0
  arch: 
  size:
  LICENSE:
  jumpto:
  switchStatus: 1
  web:
      name: Payload
      navMenuList: navMenuGeneral
  wire:
      url: 

# 更新相关配置
update:
  check_updates: 
  download: download

# 依赖项
requirements:
  - arcs@0.31.1+
  - nginx@1.10~2.1

# 安装方式,当前只有shell
install:
  method: 
    sh: scripts/install.sh

# 卸载方式
uninstall:
  method:
    sh: scripts/uninstall.sh

running_commands: 
  - enable: scripts/enable.sh
  - disable: scripts/disable.sh
  - restart: 
  - status: scripts/state.sh
  - start: scripts/start.sh
  - stop: scripts/stop.sh
  - switch: scripts/switch.sh

4. 示例包

完整包示例参考: 运维系统格式包示例

results matching ""

    No results matching ""