Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Aktion „Auf Amazon bereitstellenECS“ YAML
Im Folgenden finden Sie die YAML Definition der ECS Aktion Deploy to Amazon. Informationen zur Verwendung dieser Aktion finden Sie unterBereitstellung bei Amazon ECS mit einem Workflow.
Diese Aktionsdefinition ist als Abschnitt in einer umfassenderen Workflow-Definitionsdatei vorhanden. Weitere Informationen über diese Datei finden Sie unter YAMLWorkflow-Definition.
Anmerkung
Die meisten der folgenden YAML Eigenschaften haben entsprechende Benutzeroberflächenelemente im visuellen Editor. Verwenden Sie Strg+F, um nach einem UI-Element zu suchen. Das Element wird mit der zugehörigen YAML Eigenschaft aufgelistet.
# The workflow definition starts here.
# See Eigenschaften der obersten Ebene for details.
Name: MyWorkflow
SchemaVersion: 1.0
Actions:
# The action definition starts here.
ECSDeployAction_nn
:
Identifier: aws/ecs-deploy@v1
DependsOn:
- build-action
Compute:
Type: EC2 | Lambda
Fleet: fleet-name
Timeout: timeout-minutes
Environment:
Name: environment-name
Connections:
- Name: account-connection-name
Role: iam-role-name
Inputs:
# Specify a source or an artifact, but not both.
Sources:
- source-name-1
Artifacts:
- task-definition-artifact
Configuration:
region: us-east-1
cluster: ecs-cluster
service: ecs-service
task-definition: task-definition-path
force-new-deployment: false|true
codedeploy-appspec: app-spec-file-path
codedeploy-application: application-name
codedeploy-deployment-group: deployment-group-name
codedeploy-deployment-description: deployment-description
ECSDeployAction
(Erforderlich)
Geben Sie den Namen der Aktion an. Alle Aktionsnamen müssen innerhalb des Workflows eindeutig sein. Aktionsnamen sind auf alphanumerische Zeichen (a-z, A-Z, 0-9), Bindestriche (-) und Unterstriche (_) beschränkt. Leerzeichen sind nicht erlaubt. Sie können keine Anführungszeichen verwenden, um Sonderzeichen und Leerzeichen in Aktionsnamen zuzulassen.
Standard: ECSDeployAction_nn
.
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration“/Anzeigename der Aktion
Identifier
(ECSDeployAction
/Identifier)
(Erforderlich)
Identifiziert die Aktion. Ändern Sie diese Eigenschaft nicht, es sei denn, Sie möchten die Version ändern. Weitere Informationen finden Sie unter Angabe der zu verwendenden Aktionsversion.
Standard: aws/ecs-deploy@v1
.
Entsprechende Benutzeroberfläche: Workflow-Diagram/ ECSDeployAction _nn/ aws/ecs-deploy @v1 label
DependsOn
(ECSDeployAction
/DependsOn)
(Optional)
Geben Sie eine Aktion, eine Aktionsgruppe oder ein Gate an, die erfolgreich ausgeführt werden müssen, damit diese Aktion ausgeführt werden kann.
Weitere Hinweise zur Funktion „Hängt davon ab“ finden Sie unter. Aktionen sequenzieren
Entsprechende Benutzeroberfläche: Registerkarte „Eingaben“/„Hängt davon ab“ — optional
Compute
(ECSDeployAction
/Compute)
(Optional)
Die Rechen-Engine, die zur Ausführung Ihrer Workflow-Aktionen verwendet wurde. Sie können die Berechnung entweder auf Workflow-Ebene oder auf Aktionsebene angeben, aber nicht beide. Wenn auf Workflow-Ebene angegeben, gilt die Rechenkonfiguration für alle im Workflow definierten Aktionen. Auf Workflow-Ebene können Sie auch mehrere Aktionen auf derselben Instanz ausführen. Weitere Informationen finden Sie unter Rechenleistung für mehrere Aktionen gemeinsam nutzen.
Entsprechende Benutzeroberfläche: keine
Type
(ECSDeployAction
/Compute/Type)
(Erforderlich, wenn Compute es enthalten ist)
Der Typ der Compute Engine. Sie können einen der folgenden Werte verwenden:
-
EC2(visueller Editor) oder
EC2
(YAMLEditor)Optimiert für Flexibilität bei Aktionsläufen.
-
Lambda (visueller Editor) oder
Lambda
(YAMLEditor)Optimierte Startgeschwindigkeiten für Aktionen.
Weitere Informationen zu Datentypen finden Sie unter Berechnungstypen.
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration“ /Erweitert — optional/ Berechnungstyp
Fleet
(ECSDeployAction
/Compute/Fleet)
(Optional)
Geben Sie die Maschine oder Flotte an, auf der Ihr Workflow oder Ihre Workflow-Aktionen ausgeführt werden sollen. Bei bedarfsgesteuerten Flotten stellt der Workflow zu Beginn einer Aktion die benötigten Ressourcen bereit, und die Maschinen werden zerstört, wenn die Aktion abgeschlossen ist. Beispiele für Flotten auf Abruf:Linux.x86-64.Large
,. Linux.x86-64.XLarge
Weitere Informationen zu Flotten auf Abruf finden Sie unter. Flotteneigenschaften auf Abruf
Bei bereitgestellten Flotten konfigurieren Sie eine Reihe von dedizierten Maschinen, um Ihre Workflow-Aktionen auszuführen. Diese Maschinen bleiben im Leerlauf und sind bereit, Aktionen sofort zu verarbeiten. Weitere Informationen zu bereitgestellten Flotten finden Sie unter. Bereitgestellte Flotteneigenschaften
Wenn Fleet
es weggelassen wird, ist die Standardeinstellung. Linux.x86-64.Large
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration“ /Erweitert — optional/ Compute Fleet
Timeout
(ECSDeployAction
/Timeout)
(Optional)
Geben Sie den Zeitraum in Minuten (YAMLEditor) oder Stunden und Minuten (visueller Editor) an, für den die Aktion ausgeführt werden kann, bevor CodeCatalyst die Aktion beendet wird. Das Minimum beträgt 5 Minuten und das Maximum ist unter beschriebenKontingente für Workflows in CodeCatalyst. Das Standard-Timeout entspricht dem maximalen Timeout.
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration/Timeout“ — optional
Environment
(ECSDeployAction
/Environment)
(Erforderlich)
Geben Sie die CodeCatalyst Umgebung an, die für die Aktion verwendet werden soll. Die Aktion stellt eine Verbindung zu dem in der ausgewählten Umgebung VPC angegebenen AWS-Konto und optionalen Amazon her. Die Aktion verwendet die in der Umgebung angegebene IAM Standardrolle, um eine Verbindung zum herzustellen AWS-Konto, und verwendet die in der VPCAmazon-Verbindung angegebene IAM Rolle, um eine Verbindung zum Amazon herzustellenVPC.
Anmerkung
Wenn die IAM Standardrolle nicht über die für die Aktion erforderlichen Berechtigungen verfügt, können Sie die Aktion so konfigurieren, dass sie eine andere Rolle verwendet. Weitere Informationen finden Sie unter Die IAM Rolle einer Aktion ändern.
Weitere Informationen zu Umgebungen finden Sie unter Einsatz in AWS-Konten und VPCs undErstellen einer Umgebung.
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration/Umgebung“
Name
(ECSDeployAction
/Environment/Name)
(Erforderlich, wenn Environment es enthalten ist)
Geben Sie den Namen einer vorhandenen Umgebung an, die Sie der Aktion zuordnen möchten.
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration/Umgebung“
Connections
(ECSDeployAction
/Environment/Connections)
(Optional in neueren Versionen der Aktion; in älteren Versionen erforderlich)
Geben Sie die Kontoverbindung an, die der Aktion zugeordnet werden soll. Sie können unter maximal eine Kontoverbindung angebenEnvironment
.
Wenn Sie keine Kontoverbindung angeben:
-
Die Aktion verwendet die AWS-Konto Verbindung und die IAM Standardrolle, die in der Umgebung in der CodeCatalyst Konsole angegeben sind. Informationen zum Hinzufügen einer Kontoverbindung und einer IAM Standardrolle zur Umgebung finden Sie unterErstellen einer Umgebung.
-
Die IAM Standardrolle muss die Richtlinien und Berechtigungen enthalten, die für die Aktion erforderlich sind. Informationen zu diesen Richtlinien und Berechtigungen finden Sie in der Beschreibung der Role-Eigenschaft in der YAML Definitionsdokumentation der Aktion.
Weitere Informationen zu Kontoverbindungen finden Sie unterErmöglichen des Zugriffs auf AWS Ressourcen mit verbundenen AWS-Konten. Hinweise zum Hinzufügen einer Kontoverbindung zu einer Umgebung finden Sie unterErstellen einer Umgebung.
Entsprechende Benutzeroberfläche: Je nach Aktionsversion eine der folgenden Optionen:
-
(Neuere Versionen) Registerkarte „Konfiguration“ /Umgebung/Was ist drin
my-environment
? /Dreipunktmenü/ Rolle wechseln -
(Ältere Versionen) Registerkarte AWS „Konfiguration“ /„ Umgebung/Konto/Rolle“/Kontoverbindung
Name
(ECSDeployAction
/Environment/Connections/Name)
Connections(Erforderlich, falls enthalten)
Geben Sie den Namen der Kontoverbindung an.
Entsprechende Benutzeroberfläche: Je nach Aktionsversion eine der folgenden Optionen:
-
(Neuere Versionen) Registerkarte „Konfiguration“ /Umgebung/Was ist drin
my-environment
? /Dreipunktmenü/ Rolle wechseln -
(Ältere Versionen) Registerkarte AWS „Konfiguration“ /„ Umgebung/Konto/Rolle“/Kontoverbindung
Role
(ECSDeployAction
/Environment/Connections/Role)
Connections(Erforderlich, falls enthalten)
Geben Sie den Namen der IAM Rolle an, auf die die ECS Aktion Deploy to Amazon für den Zugriff verwendet AWS. Vergewissern Sie sich, dass Sie die Rolle zu Ihrem CodeCatalyst Bereich hinzugefügt haben und dass die Rolle die folgenden Richtlinien enthält.
Wenn Sie keine IAM Rolle angeben, verwendet die Aktion die IAM Standardrolle, die in der Umgebung in der CodeCatalyst Konsole aufgeführt ist. Wenn Sie die Standardrolle in der Umgebung verwenden, stellen Sie sicher, dass sie über die folgenden Richtlinien verfügt.
-
Die folgende Berechtigungsrichtlinie:
Warnung
Beschränken Sie die Berechtigungen auf diejenigen, die in der folgenden Richtlinie aufgeführt sind. Die Verwendung einer Rolle mit umfassenderen Berechtigungen kann ein Sicherheitsrisiko darstellen.
{ "Version": "2012-10-17", "Statement": [{ "Action":[ "ecs:DescribeServices", "ecs:CreateTaskSet", "ecs:DeleteTaskSet", "ecs:ListClusters", "ecs:RegisterTaskDefinition", "ecs:UpdateServicePrimaryTaskSet", "ecs:UpdateService", "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:DescribeListeners", "elasticloadbalancing:ModifyListener", "elasticloadbalancing:DescribeRules", "elasticloadbalancing:ModifyRule", "lambda:InvokeFunction", "lambda:ListFunctions", "cloudwatch:DescribeAlarms", "sns:Publish", "sns:ListTopics", "s3:GetObject", "s3:GetObjectVersion", "codedeploy:CreateApplication", "codedeploy:CreateDeployment", "codedeploy:CreateDeploymentGroup", "codedeploy:GetApplication", "codedeploy:GetDeployment", "codedeploy:GetDeploymentGroup", "codedeploy:ListApplications", "codedeploy:ListDeploymentGroups", "codedeploy:ListDeployments", "codedeploy:StopDeployment", "codedeploy:GetDeploymentTarget", "codedeploy:ListDeploymentTargets", "codedeploy:GetDeploymentConfig", "codedeploy:GetApplicationRevision", "codedeploy:RegisterApplicationRevision", "codedeploy:BatchGetApplicationRevisions", "codedeploy:BatchGetDeploymentGroups", "codedeploy:BatchGetDeployments", "codedeploy:BatchGetApplications", "codedeploy:ListApplicationRevisions", "codedeploy:ListDeploymentConfigs", "codedeploy:ContinueDeployment" ], "Resource":"*", "Effect":"Allow" },{"Action":[ "iam:PassRole" ], "Effect":"Allow", "Resource":"*", "Condition":{"StringLike":{"iam:PassedToService":[ "ecs-tasks.amazonaws.com", "codedeploy.amazonaws.com" ] } } }] }
Anmerkung
Wenn die Rolle zum ersten Mal verwendet wird, verwenden Sie den folgenden Platzhalter in der Ressourcenrichtlinienanweisung und grenzen Sie dann die Richtlinie mit dem Ressourcennamen ab, sobald sie verfügbar ist.
"Resource": "*"
-
Die folgende benutzerdefinierte Vertrauensrichtlinie:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "codecatalyst-runner.amazonaws.com", "codecatalyst.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
Anmerkung
Sie können die CodeCatalystWorkflowDevelopmentRole-
Rolle mit dieser Aktion verwenden, wenn Sie möchten. Weitere Informationen über diese Rolle finden Sie unter Die CodeCatalystWorkflowDevelopmentRole-spaceNameRolle für Ihr Konto und Ihren Bereich erstellen. Beachten Sie, dass die spaceName
CodeCatalystWorkflowDevelopmentRole-
Rolle über volle Zugriffsberechtigungen verfügt, was ein Sicherheitsrisiko darstellen kann. Wir empfehlen, diese Rolle nur in Tutorials und Szenarien zu verwenden, in denen die Sicherheit weniger wichtig ist. spaceName
Entsprechende Benutzeroberfläche: Je nach Aktionsversion eine der folgenden Optionen:
-
(Neuere Versionen) Registerkarte „Konfiguration“ /Umgebung/Was ist drin
my-environment
? /Dreipunktmenü/ Rolle wechseln -
(Ältere Versionen) Registerkarte „Konfiguration“ /„ Umgebung/Konto/Rolle“/Rolle
Inputs
(ECSDeployAction
/Inputs)
(Optional)
In Inputs
diesem Abschnitt werden die Daten definiert, die während einer Workflow-Ausführung benötigt werden. ECSDeployAction
Anmerkung
Pro ECS Aktion „Deploy to Amazon“ ist nur eine Eingabe (entweder eine Quelle oder ein Artefakt) zulässig.
Entsprechende Benutzeroberfläche: Registerkarte „Eingaben“
Sources
(ECSDeployAction
/Inputs/Sources)
(Erforderlich, wenn Ihre Aufgabendefinitionsdatei in einem Quell-Repository gespeichert ist)
Wenn Ihre Aufgabendefinitionsdatei in einem Quell-Repository gespeichert ist, geben Sie die Bezeichnung dieses Quell-Repositorys an. Derzeit ist das einzige unterstützte LabelWorkflowSource
.
Wenn Ihre Aufgabendefinitionsdatei nicht in einem Quell-Repository enthalten ist, muss sie sich in einem Artefakt befinden, das durch eine andere Aktion generiert wurde.
Weitere Informationen zu Quellen finden Sie unter Quell-Repositorys mit Workflows verbinden.
Entsprechende Benutzeroberfläche: Registerkarte „Eingaben“/„Quellen“ — optional
Artifacts - input
(ECSDeployAction
/Inputs/Artifacts)
(Erforderlich, wenn Ihre Aufgabendefinitionsdatei in einem Ausgabeartefakt einer vorherigen Aktion gespeichert ist)
Wenn die Aufgabendefinitionsdatei, die Sie bereitstellen möchten, in einem Artefakt enthalten ist, das durch eine vorherige Aktion generiert wurde, geben Sie dieses Artefakt hier an. Wenn Ihre Aufgabendefinitionsdatei nicht in einem Artefakt enthalten ist, muss sie sich in Ihrem Quell-Repository befinden.
Weitere Informationen zu Artefakten, einschließlich Beispielen, finden Sie unter. Artefakte und Dateien zwischen Aktionen teilen
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration“/„Artefakte“ — optional
Configuration
(ECSDeployAction
/Configuration)
(Erforderlich)
Ein Abschnitt, in dem Sie die Konfigurationseigenschaften der Aktion definieren können.
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration“
region
(Configuration/region)
(Erforderlich)
Geben Sie die AWS Region an, in der sich Ihr ECS Amazon-Cluster und -Service befinden. Eine Liste der Regionscodes finden Sie unter Regionale Endpunkte in der. Allgemeine AWS-Referenz
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration/Region“
cluster
(ECSDeployAction
/Configuration/cluster)
(Erforderlich)
Geben Sie den Namen eines vorhandenen ECS Amazon-Clusters an. Mit der ECS Aktion Deploy to Amazon wird Ihre containerisierte Anwendung als Aufgabe in diesem Cluster bereitgestellt. Weitere Informationen zu ECS Amazon-Clustern finden Sie unter Clusters im Amazon Elastic Container Service Developer Guide.
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration/Cluster“
service
(ECSDeployAction
/Configuration/service)
(Erforderlich)
Geben Sie den Namen eines vorhandenen ECS Amazon-Service an, der die Aufgabendefinitionsdatei instanziieren wird. Dieser Service muss sich unter dem im Feld angegebenen Cluster befinden. cluster
Weitere Informationen zu Amazon ECS Services finden Sie unter Amazon ECS Services im Amazon Elastic Container Service Developer Guide.
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration/Service“
task-definition
(ECSDeployAction
/Configuration/task-definition)
(Erforderlich)
Geben Sie den Pfad zu einer vorhandenen Aufgabendefinitionsdatei an. Wenn sich die Datei in Ihrem Quell-Repository befindet, ist der Pfad relativ zum Stammordner des Quell-Repositorys. Wenn sich Ihre Datei in einem Artefakt aus einer früheren Workflow-Aktion befindet, ist der Pfad relativ zum Artefakt-Stammordner. Weitere Informationen zu Aufgabendefinitionsdateien finden Sie unter Aufgabendefinitionen im Amazon Elastic Container Service Developer Guide.
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration/Aufgabendefinition“
force-new-deployment
(ECSDeployAction
/Configuration/force-new-deployment)
(Erforderlich)
Wenn diese Option aktiviert ist, kann der ECS Amazon-Service neue Bereitstellungen starten, ohne dass sich die Servicedefinition ändert. Wenn eine Bereitstellung erzwungen wird, stoppt der Service alle aktuell ausgeführten Aufgaben und startet neue Aufgaben. Weitere Informationen zum Erzwingen neuer Bereitstellungen finden Sie unter Aktualisieren eines Service im Amazon Elastic Container Service Developer Guide.
Standard: false
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration“/Neue Bereitstellung des Dienstes erzwingen
codedeploy-appspec
(ECSDeployAction
/Configuration/codedeploy-appspec)
(Erforderlich, wenn Sie Ihren ECS Amazon-Service für blaue/grüne Bereitstellungen konfiguriert haben, andernfalls weglassen)
Geben Sie den Namen und den Pfad zu einer vorhandenen CodeDeploy Anwendungsspezifikationsdatei () AppSpec an. Diese Datei muss sich im Stammverzeichnis Ihres CodeCatalyst Quell-Repositorys befinden. Weitere Informationen zu AppSpec Dateien finden Sie unter CodeDeploy Anwendungsspezifikationsdateien (AppSpec) im AWS CodeDeploy Benutzerhandbuch.
Anmerkung
Geben Sie nur CodeDeploy Informationen an, wenn Sie Ihren ECS Amazon-Service für blaue/grüne Bereitstellungen konfiguriert haben. Lassen Sie bei fortlaufenden Update-Bereitstellungen (Standard) die Informationen weg. CodeDeploy Weitere Informationen zu ECS Amazon-Bereitstellungen finden Sie unter ECSAmazon-Bereitstellungstypen im Amazon Elastic Container Service Developer Guide.
Anmerkung
Die CodeDeployFelder sind möglicherweise im visuellen Editor ausgeblendet. Informationen dazu, wie sie angezeigt werden, finden Sie unterWarum fehlen CodeDeploy Felder im visuellen Editor?.
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration“/CodeDeploy AppSpec
codedeploy-application
(ECSDeployAction
/Configuration/codedeploy-application)
(Erforderlich, wenn codedeploy-appspec
es enthalten ist)
Geben Sie den Namen einer vorhandenen CodeDeploy Anwendung an. Weitere Informationen zu CodeDeploy Anwendungen finden Sie CodeDeployim AWS CodeDeploy Benutzerhandbuch unter Arbeiten mit Anwendungen.
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration/AnwendungCodeDeploy “
codedeploy-deployment-group
(ECSDeployAction
/Configuration/codedeploy-deployment-group)
(Erforderlich, wenn codedeploy-appspec
es enthalten ist)
Geben Sie den Namen einer vorhandenen CodeDeploy Bereitstellungsgruppe an. Weitere Informationen zu CodeDeploy Bereitstellungsgruppen finden Sie CodeDeployim AWS CodeDeploy Benutzerhandbuch unter Arbeiten mit Bereitstellungsgruppen.
Entsprechende Benutzeroberfläche: Registerkarte „CodeDeploy Konfiguration/Bereitstellungsgruppe“
codedeploy-deployment-description
(ECSDeployAction
/Configuration/codedeploy-deployment-description)
(Optional)
Geben Sie eine Beschreibung der Bereitstellung an, die durch diese Aktion erstellt wird. Weitere Informationen finden Sie CodeDeployim AWS CodeDeploy Benutzerhandbuch unter Arbeiten mit Bereitstellungen.
Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration“ und Beschreibung der Bereitstellung CodeDeploy