場合によっては、リソース間に依存関係を持たせることができます。例として、環境の特定の部分が存在するようになった後で初めて環境の他の部分をデプロイできるようにする場合があります。たとえば、新しいプロジェクトをデプロイメントの一部として作成する場合、なんらかのリソースをプロジェクトに追加する前に、そのプロジェクトが必ず作成される必要があります。
このような依存関係を指定するには、構成ファイルまたはテンプレートで dependsOn
オプションを使用できます。リソースの dependsOn
オプションを追加すると、Deployment Manager はそのリソースを作成または更新する前に、依存関係を作成または更新します。
構成ファイル、またはデプロイメントに使用するテンプレートで、デプロイメントに含まれる基本タイプの間の依存関係を作成できます。 テンプレート ファイルや複合タイプに依存関係を設定することはできません。
基本タイプと複合タイプの背景情報については、タイプの概要をご覧ください。
始める前に
- このガイドのコマンドラインの例を使用する場合、gcloud コマンドライン ツールをインストールします。
- このガイドの API の例を使用する場合は、API アクセスを設定します。
依存関係の作成
リソースに依存関係を追加するには、dependsOn
セクションを含む metadata
セクションを追加します。次に、dependsOn
セクションで 1 つ以上の依存関係を指定します。
以下の例では、a-special-vm
が 2 つの永続ディスクの作成に依存することを指定するために、a-special-vm
の metadata
セクションと dependsOn
セクションを追加します。次に、それぞれの永続ディスクに関する依存関係を追加します。
同じデプロイメント内に、依存関係の永続ディスクを定義する必要があります。
この例では、ディスクは persistent-disk-a
と persistent-disk-b
です。
resources:
- name: a-special-vm
type: compute.v1.instances
properties:
...
metadata:
dependsOn:
- persistent-disk-a
- persistent-disk-b
- name: persistent-disk-a
type: compute.v1.disks
properties:
...
- name: persistent-disk-b
type: compute.v1.disks
properties:
...
このデプロイメントでは、Deployment Manager は a-special-vm
を作成する前に persistent-disk-a
と persistent-disk-b
を作成します。
次のステップ
- デプロイメントを作成する。
- 参照について学習する。
- テンプレートについてさらに学習する。