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 sind20160m
(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 Attributselector.targets
angegebenen Zielwert liegt. Dies ist die Standardeinstellung, wenn Sie den Wert vondestinationTargetId
weglassen.[TO_PHASE]
Ist der Phasenname der Phase, zu der Sie hochstufen möchten, z. B.
canary-25
oderstable
. 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 sind20160m
(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
Kurzanleitung: Release-Erstellung und Einführung von Roll-outs automatisieren
Weitere Informationen zur Automatisierung der Bereitstellung in Cloud Deploy