3.6. コレクションへのリソースの追加

コレクションの add メソッドはリソースを追加します。追加するリソースは、提供されたパラメーターに基づいて作成されます。パラメーターは、ovirtsdk.xml.params モジュールからオブジェクトのインスタンスを使用して add メソッドに提供されます。モジュールからどのクラスを使用するかは、作成するリソースのタイプによって異なります。

例3.5 コレクションへのリソースの追加

以下の例では、仮想マシンリソースが作成されます。
vm_params = params.VM(name="DemoVM",
                      cluster=api.clusters.get("Default"),
                      template=api.templates.get("Blank"),
                      memory=536870912)
vm = api.vms.add(vm_params)
この例で作成される仮想マシンは、実行する準備が整っていない状態です。Red Hat Enterprise Virtualization リソースを作成するプロセスを示すために提供されています。
  • 作成されるリソースのタイプに対してパラメーターオブジェクトのインスタンスを作成します。
  • リソースを追加するコレクションを特定します。
  • コレクションの add メソッドを呼び出し、パラメーターオブジェクトをパラメーターとして渡します。
一部のパラメーターオブジェクトには、独自の複合型パラメーターがあります。

例3.6 複合型パラメーター

この例では、完全なバージョン 3.2 互換モードで稼働する NFS データセンターを作成します。この作業を行うには、最初に ovirtsdk.xml.params.Version オブジェクトを構築する必要があります。このオブジェクトは次に、作成するデータセンターのパラメーターを含む ovirtsdk.xml.params.DataCenter オブジェクトのインスタンスの作成時にパラメーターとして使用されます。リソースは、datacenters コレクションの add メソッドを使用して作成されます。
v_params = params.Version(major=3, minor=2)
dc_params = params.DataCenter(name="DemoDataCenter", storage_type="NFS", version=v_params)
dc = api.datacenters.add(dc_params)