Deployment Workflow Service
构想
Deployment Workflow Service提供用于创建、维护和执行用户定义的工作流接口,用于支持与设备的握手过程。
信息
Deployment Workflow Service目前仅在Europe 1适用。
访问
要访问此服务,您需要具有Deployment Workflow Service角色和范围中列出的相应角色。
基础知识
工作流模型
与设备相关的工作流通常用于跟踪作业的进程,例如文件上载。这些工作流基于状态机。这些状态机定义了可能的状态并且允许状态之间的转换。
Deployment Workflow Service提供一个用于定义和实例化自定义工作流模型的接口。工作流模型充当工作流的模板。当创建工作流模型实例时,您可以定制工作流以区别于工作流模型。
您可以给工作流模型的每个状态分配用户定义的标签。这种行为允许用户查询具有特定标签的作业。例如,如果状态"open"存在一个标签,您便可以查询所有打开的作业。
预定义的工作流模型
MindSphere提供了三种预定义的,可以使用模型Key进行配置工作流和实例化软件安装的工作流模型:
工作流模型 | 模型Key | 描述 |
---|---|---|
安装程序 | mdsp-core-applicationInstallation | 这个工作流由Edge App Deployment Service实例化,用于跟踪安装状态。工作流由这里显示的状态机定义。 |
移除程序 | mdsp-core-applicationRemoval | 这个工作流由Edge App Deployment Service实例化,用于跟踪卸载状态。工作流由这里显示的状态机定义。 |
安装固件 | mdsp-core-firmwareInstallation | 这个工作流由Firmware Deployment Service实例化,用于跟踪安装状态。工作流由这里显示的状态机定义。 |
部署配置 | mdsp-core-configurationDeployment | 这个工作流由Device Configuration Service实例化,用于跟踪配置部署状态。工作流由这里显示的状态机定义。 |
工作流实例
工作流实例用于与设备的状态同步。当您创建一个工作流实例时,这个工作流可以自定义以区别于工作流模型:用户可以添加自定义转换或者使用data
字段来提供与工作流相关的信息。这些信息可以由执行所需操作的设备解译。
当一个设备将要执行作业,一个工作流实例会被发送到该设备。工作流实例的转换规则告诉设备如何操作。当一个转换依赖于设备来执行操作时,设备必须向后端发送一条消息。这会触发后端更新状态机的状态。
如果多个作业被发送到一个不支持并行执行的设备,我们建议设备按照后端报告的顺序执行它们。
状态消息
设备必须确认收到作业,以触发将作业的所有权转移给设备的状态机的转换。如果作业被取消或使用时间触发的安装,不这样做将导致问题。
设备应反复利用新的进度信息来更新作业状态,以告知操作员进度。
在执行一个作业后,设备必须更新作业状态。这种状态更新通常可以报告成功、失败或取消,例如在超时之后。当一个作业以CANCELED
状态结束时,它向后端发出信号表明重试是合理的。状态FAILED
也许会因为无效的输入文件而出现。这种情况下,设备应发送一条资料信息和附加状态的详情。
功能
Deployment Workflow Service公开了实现以下任务的API:
- 创建、读取和删除设备的工作流模型
- 创建和更新设备的工作流
限制
超过90天的工作流实例将自动清除。
示例场景
某传感器生产商将其数据上传到MindSphere,已经开发了一款与传感器通信的应用程序。它们为设备和后端之间的通信定义了一款握手模型。当应用程序与传感器建立连接时,就会使用这个模型。
相关链接
- Developing Device Agents
- Device Configuration Service
- Edge App Deployment Service
- Firmware Deployment Service
还有问题?
除非另行声明,该网站内容遵循MindSphere开发许可协议.