Automatisierungsregeln verwenden

In diesem Dokument werden Automatisierungsregeln beschrieben. Das sind Aktionen, die in Ihrer Bereitstellungspipeline automatisch ausgeführt werden können. Beispielsweise können Sie die Bereitstellungspipeline so konfigurieren, dass unter den richtigen Umständen automatisch ein Hochstufen zu einem bestimmten Ziel erfolgt.

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

Verfügbare Automatisierungsregeln

Die folgenden Automatisierungsregeln sind in Cloud Deploy verfügbar:

Regel Beschreibung
promoteReleaseRule Hochgestuft einen Release nach Erfolg automatisch zum angegebenen Ziel

im Verlauf des vorherigen Ziels.

advanceRolloutRule Setzt ein Roll-out automatisch von der angegebenen fort

Phase zur nächsten Phase.

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, sowie die Konfiguration der einzelnen verfügbaren Regeln.

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

Automatisierungsregel promoteReleaseRule konfigurieren

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

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

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]

    Ist ein 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 werden soll, 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. Das Maximum beträgt 20160m (oder 14 Tage).

  • [TO_TARGET]

    Ist der targetId des Ziels, zu dem hochgestuft werden soll.

    Dies kann auch @next sein, mit dem der Release automatisch zum nächsten Ziel nach dem im Attribut selector.targets in dieser Automatisierungskonfiguration angegebenen Ziel hochgestuft wird. Das 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 zur ersten Phase im Ziel hochgestuft.

Automatisierungsregel advanceRolloutRule konfigurieren

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

Wenn Sie eine advanceRolloutRule-Automatisierung konfigurieren, geben Sie die Phase an, von der sourcePhase ausgehen soll.

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

Wobei:

  • [RULE]

    Ist ein 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 bis zum Fortsetzen des Roll-outs gewartet werden soll, nachdem das Rollout bereit ist. Beispiel: 1m. m ist erforderlich.

    Der Standardwert ist 0 oder keine Wartezeit. Das Maximum beträgt 20160m (oder 14 Tage).

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

    Gibt die Phase(n) an, von denen aus das Roll-out automatisch fortgesetzt wird. Wenn also eine der aufgeführten Phasen erfolgreich abgeschlossen ist, 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 fortgesetzt.

Nächste Schritte