Go to main content

Oracle® ZFS Storage Appliance 管理指南,发行版 OS8.8.0

退出打印视图

更新时间: 2018 年 11 月
 
 

了解工作流

工作流包含在有效的 ECMAscript 文件中,该文件包含一个全局变量 workflow。这是一个必须至少包含三个成员的对象:

表 140  必要的对象成员
必要成员
类型
说明
name
字符串
工作流的名称
description
字符串
工作流的说明
execute
函数
执行工作流的函数
示例 18  Hello World 工作流

以下是基本工作流示例:

var workflow = {
       name: 'Hello world',
       description: 'Bids a greeting to the world',
       execute: function () { return ('hello world!') }
};

上载此工作流将生成一个名为 "Hello world" 的新工作流;执行该工作流将输出 "hello world!"

示例 19  使用工作流运行函数返回 CPU 利用率

工作流在设备 Shell 中异步执行,(默认)在用户执行工作流时运行。因此,工作流可自行使用设备脚本工具(请参见使用 CLI 脚本编写工具),并且可能会与设备进行交互,就像设备 Shell 的任何其他实例一样。即工作流可以执行命令、解析输出、修改状态等等。下面是一个使用 run 函数返回当前 CPU 利用率的比较复杂的示例:

var workflow = {
       name: 'CPU utilization',
       description: 'Displays the current CPU utilization',
       execute: function () {
               run('analytics datasets select name=cpu.utilization');
               cpu = run('csv 1').split('\n')[1].split(',');
               return ('At ' + cpu[0] + ', utilization is ' + cpu[1] + '%');
       }
};