Automatisierungsregeln verwenden

In diesem Dokument werden Automatisierungsregeln beschrieben, bei denen es sich um Aktionen handelt, die automatisch für Ihre Bereitstellungspipeline ausgeführt werden können. Sie können Ihre Bereitstellungspipeline beispielsweise so konfigurieren, dass ein Hochstufen auf ein bestimmtes Ziel unter den richtigen Umständen automatisch erfolgt.

Sie können nur Automatisierungsregeln verwenden, die in Cloud Deploy eingebunden sind. Die verfügbaren Automatisierungsregeln sind in diesem Dokument aufgeführt.

Verfügbare Automatisierungsregeln

Die folgenden Automatisierungsregeln sind in Cloud Deploy verfügbar:

Regel Beschreibung
promoteReleaseRule Hochgestuft nach erfolgreicher Ausführung automatisch zum angegebenen Ziel

im vorherigen Ziel in der Abfolge eingeführt.

advanceRolloutRule Führt ein Roll-out automatisch über die angegebenen

Phase zur nächsten Phase übergehen.

Automatisierungsregeln konfigurieren

Die Konfiguration der einzelnen Automatisierungsregeln hängt von der jeweiligen Regel ab. In diesem Abschnitt wird die Konfiguration beschrieben, die alle Regeln gemeinsam haben. Außerdem wird beschrieben, wie die einzelnen verfügbaren Regeln konfiguriert werden.

In den folgenden Abschnitten wird die spezifische Konfiguration für einzelne Automatisierungsregeln beschrieben. Weitere Informationen zur Konfiguration der Automatisierung finden Sie unter Bereitstellung automatisieren.

promoteReleaseRule-Automatisierungsregel konfigurieren

Die Regel promoteReleaseRule stuft Ihren Release nach einem erfolgreichen Roll-out in ein Ziel hoch. Wenn Sie beispielsweise drei Ziele haben, können Sie diese Regel so einrichten, dass der Release nach erfolgreicher Bereitstellung im ersten Ziel automatisch zum zweiten Ziel hochgestuft wird.

Wenn Sie eine promoteReleaseRule-Automatisierung konfigurieren, können Sie entweder ein Ziel angeben, in das hochgestuft werden soll (destinationTargetId) oder @next. Wenn das Roll-out im in der Definition Automation angegebenen Ziel erfolgreich abgeschlossen wurde, wird der Release auf das in destinationTargetId angegebene Ziel hochgestuft. Dabei gilt ein wait-Zeitintervall.

Mit dem Attribut destinationPhase können Sie einen Release auch zu einer bestimmten Phase im vorgesehenen Ziel hochstufen.

rules:
- promoteReleaseRule:
    name: "[RULE_NAME]"
    wait: [WAIT_TIME]
    destinationTargetId: "[TO_TARGET]"
    destinationPhase: "[TO_PHASE]"

Wobei:

  • [RULE_NAME]

    Ein beliebiger Name, den Sie dieser Regel geben möchten. Dieser Name darf innerhalb der Automatisierungsressource nur einmal vorkommen.

  • [WAIT_TIME]

    Gibt die Zeit in Minuten an, die gewartet wird, nachdem der Release für die Hochstufung bereit ist, bevor er hochgestuft wird. Beispiel: 1m. m ist erforderlich.

    Der Standardwert ist 0 oder keine Wartezeit. Maximal sind 20160m (oder 14 Tage) zulässig.

  • [TO_TARGET]

    Ist der targetId des Ziels, in das hochgestuft werden soll.

    Dies kann auch @next sein, wodurch der Release automatisch zum nächsten Ziel hochgestuft wird, das nach dem in dieser Automatisierungskonfiguration im Attribut selector.targets angegebenen Zielwert liegt. Dies ist die Standardeinstellung, wenn Sie den Wert von destinationTargetId weglassen.

  • [TO_PHASE]

    Ist der Phasenname der Phase, zu der Sie hochstufen möchten, z. B. canary-25 oder stable. Dieses Attribut ist optional. Wenn Sie es weglassen, wird der Release in die erste Phase des Ziels hochgestuft.

advanceRolloutRule-Automatisierungsregel konfigurieren

Mit der advanceRolloutRule wird Ihr Rollout automatisch nach erfolgreichem Abschluss einer Phase in die nächste Phase fortgesetzt. Diese Automatisierungsregel ist für Canary-Deployments nützlich. Wenn Sie beispielsweise eine Canary-Bereitstellungsstrategie für ein Ziel mit den Phasen 25%, 50% und stable konfiguriert haben, können Sie eine Automatisierungsregel konfigurieren, die die Phase nach Abschluss der 50%-Phase automatisch auf stable überführt.

Wenn Sie eine advanceRolloutRule-Automatisierung konfigurieren, legen Sie die Phase fest, ab der Sie fortfahren möchten (sourcePhase).

rules:
- advanceRolloutRule:
    id: "[RULE]"
    sourcePhases: ["[START_PHASE]", "[START_PHASE]"...]
    wait: [WAIT_TIME]

Wobei:

  • [RULE]

    Ein beliebiger Name, den Sie dieser Regel geben möchten. Dieser Name darf innerhalb der Bereitstellungspipeline nur einmal vorkommen.

  • [WAIT_TIME]

    Gibt die Zeit in Minuten an, die auf das Fortsetzen des Roll-outs gewartet wird, nachdem das Roll-out bereit ist. Beispiel: 1m. m ist erforderlich.

    Der Standardwert ist 0 oder keine Wartezeit. Maximal sind 20160m (oder 14 Tage) zulässig.

  • ["[START_PHASE]", "[START_PHASE]"...]

    Hierbei handelt es sich um die Phase oder Phasen, von denen aus die Einführung automatisch fortgesetzt wird. Das heißt, wenn eine der aufgeführten Phasen erfolgreich abgeschlossen wurde, wird das Roll-out automatisch von dieser Phase in die nächste Phase fortgesetzt.

    Bei Phasennamen wird zwischen Groß- und Kleinschreibung unterschieden. Außerdem sind diese Phasennamen optional. Wenn Sie sourcePhases weglassen, werden alle Phasen im Roll-out automatisch fortgeführt.

Nächste Schritte