operation.json 構成ファイルのカスタマイズ

operation.json ファイルでは、仮想アプリケーションの実行中に呼び出すことができる操作を定義します。 操作はロール別にグループ化され、各操作がプラグインにより提供される Python スクリプトに関連付けられています。 ユーザーは、 インスタンス・コンソールで操作を要求します。 この要求は Cloud Pak Systemによって転送され、パラメーターはすべて、ロールが実行されているシステム上のスクリプトに送信されます。 operation.json ファイルは、 PDK JSON エディターを使用して変更できます。

手順

  1. プラグイン・プロジェクトの PDK JSON エディター を既に開いている場合は、 操作 タブをクリックします。 そうでない場合は、以下を行います。
    1. プロジェクト・エクスプローラー ビューで、プラグイン・プロジェクト・ノードを展開します。
    2. プラグイン フォルダー・ノードを展開します。
    3. アプリケーション・モデル フォルダー・ノードを展開します。
    4. operation.json ファイルをダブルクリックします。 または、ファイルを右クリックして、 「アプリケーションから開く」 > PDK JSON エディターを選択します。
    「概要」タブが表示されて、プラグインの構造と内容が示されます。 このタブには、以下の 4 つのセクションがあります。
    パッケージ
    プラグイン内のパート、ノード・パート、およびロールをリストします。 プラグインにパート、ノード・パート、またはロールを追加するには、「追加」をクリックします。
    メタデータ
    プラグイン内のコンポーネント、リンク、およびポリシーをリストします。 「追加」 をクリックして、 metadata.jsonにメタデータ・エレメントを作成します。
    ランタイム
    プラグインの metadata.jsonoperation.json、および tweak.json ファイルへのリンクが用意されています。
    Eclipse 内で項目の編集が可能な場合は、その項目をダブルクリックすると開くことができます。
  2. 「概要」 タブの operation.json リンクをクリックするか、 「操作」 タブをクリックして、 operation.json ファイルをカスタマイズします。
    「操作」タブには、プラグインの操作のリストが表示されます。 操作の名前は、その操作に関連付けられている ID とロールの値を連結したものです。 このフォーム・ベースのインターフェースを使用して、以下のタスクを実行できます。
    • ロールおよび ID の情報を指定して、操作を操作リストに追加する、またはリストから操作を削除する。

      特殊な configuration ロールで、tweak.json ファイルに指定されている構成パラメーターを変更するためのハンドラーを定義します。

    • リスト内の操作をクリックして、以下に示す操作フォームの詳細を表示および変更する。
      • ID
      • ラベル
      • 説明
      • カテゴリー
      • スクリプト (関連の Python スクリプト)
        注: ライフサイクル・スクリプトまたは操作スクリプトでは exit(0) を使用しないでください。 エラー状態を返すには、 start.pymaestro.status = 'Failed'などの状況を設定します。 この方式を使用すると、プラグインまたはソフトウェア・コンポーネントを制御された状態で維持でき、問題が解決された後、別のスクリプトによって RUNNING に設定を戻すことができます。
    • 属性タイプ (string、number、boolean、array、file、または range) を追加および削除する。
    • 属性タイプ情報を変更して、ID、ラベル、および説明の情報の指定、およびその属性が必要かどうかの指定をする。
    • 属性情報が パターン・ビルダーに表示される順序を管理します。

    指定した値はすぐに検証され、エラー (必須フィールドの欠落、重複 ID など) があると、訂正できるようにフラグが (ヘルプ・ヒント付きで) 立てられます。

    場合によっては、「operation.json」タブをクリックしてフォーマット済みテキスト・エディターに構成情報を表示することによって、構成テキストを直接変更できます。 「操作」ユーザー・インターフェースまたはソース・テキスト・エディターのいずれか一方で行った変更は、両方のビューに即時に反映されます。