リソースブロックへの操作ステップの追加

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:5分
  • リソースブロックの操作と入力パラメーターを構成したら、各操作のステップを追加して、呼び出すクラウド API (CAPI) をシステムに指示します。各ステップは、CAPI への個別の呼び出しです。

    始める前に

    必要なロール:sn_cmp.cloud_service_designer

    手順

    1. リソースブロックで、[操作] の下にある [ステップ] サブタブをクリックします。
    2. [ステップを追加] をクリックします。
    3. フォームフィールドに記入します。
      フィールド 説明
      操作タイプ
      次の操作のタイプを選択します。
      • クラウド API の呼び出し (Invoke Cloud API):CAPI からプロバイダー、インターフェイス、およびメソッドを選択するには、このオプションを選択します。
      • ホストリソース操作の呼び出し (Invoke Host Resource Operation):このオプションを選択すると、このリソースブロックに対して指定済みのホストインターフェイスから操作 (操作署名とも呼ばれます) が使用されます。
      • スクリプトの呼び出し (Invoke Script):既存の MID サーバースクリプトインクルードからメソッドを呼び出すには、このオプションを選択します。
      • ワークフローの呼び出し (Invoke Workflow):このオプションを選択すると、このリソースブロックに対して既存のワークフロートリガー操作が呼び出されます。
      • フローの呼び出し:このオプションを選択すると、有効なサブフローのリストからサブフローが呼び出されます。
      API プロバイダー

      [操作タイプ = クラウド API の呼び出し (Invoke Cloud API)]

      必要なインターフェイスを提供する API を選択します。プロバイダはクラウド API (CAPI) の一部です。

      たとえば、CAPI は、製品を持つ AWS プロバイダーを提供し、その一部にはプロバイダー名が付いています。

      この値は、[クラウド API の呼び出し (Invoke Cloud API)] 操作タイプを選択した場合に表示されます。

      API インターフェイス

      [操作タイプ = クラウド API の呼び出し (Invoke Cloud API)]

      使用するメソッドを含むインターフェイスを選択します。たとえば、[Blob Storage Interface] は、システムがプロビジョニング中に使用する [CreateContainer] インターフェイスを提供します。
      API メソッド

      [操作タイプ = クラウド API の呼び出し (Invoke Cloud API)]

      操作を実行するメソッドを選択します。この例では、ストレージをプロビジョニングするために [CreateContainer] が必要です。
      CAPI バージョン

      [操作タイプ = クラウド API の呼び出し (Invoke Cloud API)]

      CAPI API のバージョンを入力します。
      ホストインターフェイス

      [操作タイプ = ホストリソース操作の呼び出し (Invoke Host Resource Operation)]

      操作を呼び出すインターフェイスを選択します。リソースブロックの [一般情報] タブで設定したのと同じインターフェイスのみを選択できます。

      インターフェイスを変更するには、[一般情報] タブに戻り、[ホストインターフェイス] フィールドで別の値を選択します。

      インターフェイス操作

      [操作タイプ = ホストリソース操作の呼び出し (Invoke Host Resource Operation)]

      ホストインターフェースから操作を選択します。たとえば、[ストレージサーバー] インターフェイスを選択した場合は、そのインターフェイスのすべての操作 (CreateStorageVolume など) を呼び出すことができます。
      スクリプト

      [操作タイプ = スクリプトの呼び出し (Invoke Script)]

      呼び出すスクリプトとスクリプト内のメソッドを入力します。script-name.method という構文を使用します。
      ワークフロー

      [操作タイプ = スクリプトの呼び出し (Invoke Script)]

      ワークフローを使用しないでください。
      フロー

      [操作タイプ = フローの呼び出し > サブフロー]

      [サブフロー] リストからサブフローを選択します。たとえば、Terraform Enterprise Provision サブフローを選択した場合は、既存のサブフローを再利用するだけで入出力を設定できます。
      条件 システムがこのステップを使用する前に、満たす必要があるオプションの条件を入力します。

      Azure API と CreateNode メソッドマッパーを見ると、エンドポイント操作がスクリプトであることがわかります。これは、createNode() 関数を示す MID サーバースクリプトインクルードを呼び出します。この関数は AzureComputeVirtualMachine スクリプトインクルードを使用します。このスクリプトインクルードを確認して理解します。

    4. [送信] をクリックします。

      ステップの [入力] および [応答プロセッサ] タブが表示されます。

    5. [入力] タブで、CAPI 操作入力を設定します。

      この場合は、[Blob Storage] インターフェイスである CAPI インターフェイスで CreateContainer メソッドを開きます。CAPI からの入力は、パラメーターを作成する [入力] タブに表示されます。

      [入力パラメーター] タブのパラメーターは、ユーザーが値を入力する場所です。これらの入力パラメーターを、[入力] タブのパラメーターにマップできます。これを行うには、[Input Parameters] タブの [Mapping] の値を [Value] フィールドにコピーします。 ステップ > 入力 タブに戻ります

      このステップでスクリプトを呼び出し、そのスクリプトで値を返す引数が必要とされる場合は、各引数に新しい入力パラメーターを追加できます。[] フィールドで、構文 ${parameter.arg1} を使用します。

    6. この操作の後続のステップまたは後続の操作で、このステップのパラメーター値を渡す必要がある場合は、出力属性を構成します。

      たとえば、仮想サーバーの [プロビジョン] 操作では、ネットワークインターフェイス ID の出力属性とノード ID の出力属性を提供できます。クラウドプロバイダーが応答を送信すると、ネットワークとノードの実際の ID が応答から解析され、出力属性に保存されます。後続のステップでは、ID を使用してアクションを実行します。

      1. [出力属性] タブをクリックします。
      2. 次の表記にコードを入力します。
        
        {
          "Attribute": "${Value}"
        }
        

        ここで、値はインターフェイスと操作へのマッピングから取得されます。

        たとえば、次の出力属性を使用します。
        
        {
          "NodeId": "${Compute Interface.CreateNode.Output.resp.nodeId}"
        }
        
        • NodeId は属性です。
        • Compute Interface はインタフェースを指定します。
        • CreateNode はノードを作成するメソッドの名前です。
        • Output.resp は構文の必須部分です。
        • nodeid