Explizite Abhängigkeiten erstellen

In einigen Fällen sind Abhängigkeiten zwischen Ihren Ressourcen möglich, z. B. wenn bestimmte Teile Ihrer Umgebung vorhanden sein müssen, bevor Sie andere Teile der Umgebung bereitstellen können. Wenn Sie beispielsweise ein neues Projekt als Teil einer Bereitstellung erstellen möchten, muss das Projekt erstellt werden, bevor Sie ihm Ressourcen hinzufügen.

Sie können diese Abhängigkeiten mithilfe der Option dependsOn in Ihren Konfigurationsdateien oder Vorlagen angeben. Wenn Sie die Option dependsOn für eine Ressource hinzufügen, werden die Abhängigkeiten im Deployment Manager erstellt oder aktualisiert, bevor die Ressource erstellt oder aktualisiert wird.

Sie können Abhängigkeiten zwischen Basistypen, die Teil Ihrer Bereitstellung sind, entweder in der Konfigurationsdatei oder in den Vorlagen für die Bereitstellung erstellen. Es ist nicht möglich, Abhängigkeiten von Vorlagendateien oder zusammengesetzten Typen festzulegen.

Hintergrundinformationen zu Basis- und Verbundtypen finden Sie in der Typenübersicht.

Hinweise

  • Wenn Sie die Befehlszeilenbeispiele in dieser Anleitung verwenden möchten, installieren Sie das gcloud-Befehlszeilentool.
  • Wenn Sie die API-Beispiele in dieser Anleitung verwenden möchten, richten Sie den API-Zugriff ein.

Abhängigkeiten erstellen

Um einer Ressource eine Abhängigkeit hinzuzufügen, fügen Sie einen metadata-Abschnitt hinzu, der einen dependsOn-Abschnitt enthält. Geben Sie dann im dependsOn-Abschnitt eine oder mehrere Abhängigkeiten an.

Um im folgenden Beispiel a-special-vm von der Erstellung von zwei nichtflüchtigen Speichern abhängig zu machen, fügen Sie die metadata- und dependsOn-Abschnitte für a-special-vm hinzu. Dann fügen Sie die Abhängigkeiten für jede persistente Festplatte hinzu.

In derselben Bereitstellung müssen Sie die persistenten Festplatten definieren, die Abhängigkeiten sind. In diesem Beispiel sind die Laufwerke persistent-disk-a und 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:
    ...

In diesem Deployment erstellt Deployment Manager persistent-disk-a und persistent-disk-b, bevor a-special-vm erstellt wird.

Nächste Schritte