ワークフローは、1 つの大域変数 workflow が含まれている、有効な ECMAscript ファイルに組み込まれています。これは、少なくとも次の 3 つのメンバーを含む必要のあるオブジェクトです。
|
次に、基本的なワークフローの例を示します。
var workflow = { name: 'Hello world', description: 'Bids a greeting to the world', execute: function () { return ('hello world!') } };
このワークフローをアップロードすると「Hello world」という名前の新しいワークフローが作成され、このワークフローを実行すると「hello world!」が出力されます。
使用例 19 ワークフローの run 関数を使用して CPU 使用率を返すワークフローは、アプライアンスのシェル内で非同期に (デフォルトでは) そのワークフローを実行しているユーザーとして実行されます。そのため、ワークフローはアプライアンスのスクリプト機能 (CLI スクリプトの操作を参照) を自由に使用でき、さらにアプライアンスのシェルのほかの任意のインスタンスと同じようにアプライアンスと対話できます。つまり、ワークフローはコマンドを実行したり、出力を解析したり、状態を変更したりできます。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] + '%'); } };