触发器对象会监视插件所定义的事件触发器。例如,vCenter Server 插件将这些事件定义为 Task 对象。当任务结束时,触发器会向基于等待触发器的长时间运行工作流元素发送一条消息,重新启动该工作流。
基于触发器的长时间运行工作流所等待的耗时事件必须返回一个 VC:Task 对象。例如,用来启动虚拟机的 startVM 操作会返回一个 VC:Task 对象,以便工作流中的后续元素可监视其进度。基于触发器的长时间运行工作流触发器事件需要此 VC:Task 对象作为输入参数。
您在可编辑脚本任务元素的 JavaScript 函数中创建 Trigger 对象。可编辑脚本任务元素可以属于等待触发器事件的基于触发器的长时间运行工作流。或者,可属于另一个为基于触发器的长时间运行工作流提供输入参数的工作流。触发器函数必须实现 vRealize Orchestrator API 中的 createEndOfTaskTrigger() 方法。
重要事项: 您必须为所有触发器定义超时时段,否则工作流会无限期等待。
前提条件
-
- 创建工作流。
- 在工作流编辑器中打开要编辑的工作流。
- 向工作流架构添加一些元素。
- 在工作流中,将 VC:Task 对象声明为变量或输入参数,例如工作流中的 VC:Task 对象或用于启动或克隆虚拟机的工作流元素。
过程
结果
您即定义了一个可为基于触发器的长时间运行工作流创建触发器事件的工作流元素。触发器元素会生成一个 Trigger 对象作为其输出参数,等待事件元素可绑定到该输出参数。
后续步骤
您必须将此触发器事件绑定到基于触发器的长时间运行工作流中的等待事件元素。