

Amazon CodeCatalyst ist nicht mehr offen für Neukunden. Bestandskunden können den Service weiterhin wie gewohnt nutzen. Weitere Informationen finden Sie unter [Wie migriert man von CodeCatalyst](migration.md).

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.

# Ändern einer Amazon ECS-Aufgabendefinition
<a name="render-ecs-action"></a>

In diesem Abschnitt wird beschrieben, wie Sie das `image` Feld in einer [Aufgabendefinitionsdatei](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html#welcome-task-definitions) von Amazon Elastic Container Service (Amazon ECS) mithilfe eines CodeCatalyst Workflows aktualisieren. Um dies zu erreichen, müssen Sie Ihrem Workflow die Aktion **Render Amazon ECS Aufgabendefinition** hinzufügen. Diese Aktion aktualisiert das Image-Feld in der Aufgabendefinitionsdatei mit einem Docker-Image-Namen, der von Ihrem Workflow zur Laufzeit bereitgestellt wird.

**Anmerkung**  
Sie können diese Aktion auch verwenden, um das `environment` Feld der Aufgabendefinition mit Umgebungsvariablen zu aktualisieren.

**Topics**
+ [Wann sollte diese Aktion verwendet werden](#render-ecs-action-when-to-use)
+ [So funktioniert die Aktion „Amazon ECS-Aufgabendefinition rendern“](#render-ecs-action-how-it-works)
+ [Von der Aktion „Amazon ECS-Aufgabendefinition rendern“ verwendetes Runtime-Image](#render-ecs-action-runtime)
+ [Beispiel: Ändern Sie eine Amazon ECS-Taskdef](render-ecs-action-example-workflow.md)
+ [Aktion „Amazon ECS-Aufgabendefinition rendern“ hinzufügen](render-ecs-action-add.md)
+ [Die aktualisierte Aufgabendefinitionsdatei anzeigen](render-ecs-action-view.md)
+ [Variablen „Amazon ECS-Aufgabendefinition rendern“](render-ecs-action-variables.md)
+ [Aktion 'Amazon ECS-Aufgabendefinition rendern' YAML](render-ecs-action-ref.md)

## Wann sollte diese Aktion verwendet werden
<a name="render-ecs-action-when-to-use"></a>

Verwenden Sie diese Option, wenn Sie über einen Workflow verfügen, der ein Docker-Image mit dynamischen Inhalten wie einer Commit-ID oder einem Zeitstempel erstellt und markiert. 

Verwenden Sie diese Aktion nicht, wenn Ihre Aufgabendefinitionsdatei einen Bildwert enthält, der immer gleich bleibt. In diesem Fall können Sie den Namen Ihres Bilds manuell in die Aufgabendefinitionsdatei eingeben.

## So funktioniert die Aktion „Amazon ECS-Aufgabendefinition rendern“
<a name="render-ecs-action-how-it-works"></a>

Sie müssen die **Amazon ECS-Aufgabendefinitionsaktion rendern** mit den Aktionen **Build** und **Deploy to Amazon ECS** in Ihrem Workflow verwenden. Zusammen funktionieren diese Aktionen wie folgt:

1. Die **Build-Aktion** erstellt Ihr Docker-Image und kennzeichnet es mit einem Namen, einer Commit-ID, einem Zeitstempel oder einem anderen dynamischen Inhalt. Ihre Build-Aktion könnte beispielsweise so aussehen:

   ```
   MyECSWorkflow
     Actions:
       BuildAction:
         Identifier: aws/build@v1
         ...
         Configuration:
           Steps:
           # Build, tag, and push the Docker image...
             - Run: docker build -t MyDockerImage:${WorkflowSource.CommitId} .
             ...
   ```

   Im vorherigen Code gibt die `docker build -t` Direktive an, das Docker-Image zu erstellen und es zur Laufzeit der Aktion mit der Commit-ID zu kennzeichnen. Der generierte Image-Name könnte so aussehen:

   `MyDockerImage:a37bd7e`

1. Die Aktion **„Amazon ECS-Aufgabendefinition rendern**“ fügt Ihrer Aufgabendefinitionsdatei den dynamisch generierten Imagenamen wie folgt hinzu: `MyDockerImage:a37bd7e`

   ```
   {
       "executionRoleArn": "arn:aws:iam::account_ID:role/codecatalyst-ecs-task-execution-role",
       "containerDefinitions": [
           {
               "name": "codecatalyst-ecs-container",
               "image":  MyDockerImage:a37bd7e, 
               "essential": true,
               ...
               "portMappings": [
                   {
                       "hostPort": 80,
                       "protocol": "tcp",
                       "containerPort": 80
                   }
               ]
           }
       ],
   ...
   }
   ```

   Optional können Sie auch festlegen, dass die Aktion **„Amazon ECS-Aufgabendefinition rendern**“ der Aufgabendefinition Umgebungsvariablen wie folgt hinzufügt:

   ```
   {
     "executionRoleArn": "arn:aws:iam::account_ID:role/codecatalyst-ecs-task-execution-role",
     "containerDefinitions": [
       {
         "name": "codecatalyst-ecs-container",
         "image":  MyDockerImage:a37bd7e,
         ...
         "environment": [
           {
             name": "ECS_LOGLEVEL",
             value": "info"
           }
         ]
       }
     ],
   ...
   }
   ```

   Weitere Informationen zu Umgebungsvariablen finden Sie unter [Spezifizieren von Umgebungsvariablen](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/taskdef-envfiles.html) im *Amazon Elastic Container Service Developer Guide*.

1. Die Aktion In **Amazon ECS bereitstellen** registriert die aktualisierte Aufgabendefinitionsdatei bei Amazon ECS. Durch die Registrierung der aktualisierten Aufgabendefinitionsdatei wird das neue Image `MyDockerImage:a37bd7e` in Amazon ECS bereitgestellt.

## Von der Aktion „Amazon ECS-Aufgabendefinition rendern“ verwendetes Runtime-Image
<a name="render-ecs-action-runtime"></a>

Die Aktion **„Amazon ECS-Aufgabendefinition rendern**“ wird auf einem [Image vom November 2022](build-images.md#build.previous-image) ausgeführt. Weitere Informationen finden Sie unter [Aktive Bilder](build-images.md#build-curated-images).

# Beispiel: Ändern Sie eine Amazon ECS-Taskdef
<a name="render-ecs-action-example-workflow"></a>

Im Folgenden finden Sie ein Beispiel für einen vollständigen Workflow, der die **Aufgabendefinitionsaktion Amazon ECS rendern** sowie die Aktionen Build und Deploy umfasst. Der Zweck des Workflows besteht darin, ein Docker-Image zu erstellen und in Ihrem Amazon ECS-Cluster bereitzustellen. Der Workflow besteht aus den folgenden Bausteinen, die nacheinander ausgeführt werden:
+ Ein **Trigger** — Dieser Trigger startet die Workflow-Ausführung automatisch, wenn Sie eine Änderung an Ihr Quell-Repository übertragen. Weitere Informationen zu Auslösern finden Sie unter [Automatisches Starten einer Workflow-Ausführung mithilfe von Triggern](workflows-add-trigger.md). 
+ Eine **Build-Aktion** (`BuildDocker`) — Beim Auslösen erstellt die Aktion das Docker-Image mithilfe der Dockerfile, kennzeichnet es mit einer Commit-ID und überträgt das Image an Amazon ECR. Weitere Informationen zur Build-Aktion finden Sie unter. [Bauen mit Workflows](build-workflow-actions.md)
+ Eine **Amazon ECS-Aufgabendefinitionsaktion rendern** (`RenderTaskDef`) — Nach Abschluss der Build-Aktion aktualisiert diese Aktion ein `taskdef.json` vorhandenes Objekt im Stammverzeichnis Ihres Quell-Repositorys mit einem `image` Feldwert, der die richtige Commit-ID enthält. Sie speichert die aktualisierte Datei unter einem neuen Dateinamen (`task-definition-random-string.json`) und erstellt dann ein Ausgabeartefakt, das diese Datei enthält. Die Renderaktion generiert außerdem eine Variable namens `task-definition` und setzt sie auf den Namen der neuen Aufgabendefinitionsdatei. Das Artefakt und die Variable werden für die Aktion Deploy verwendet, die als Nächstes folgt.
+ Eine Aktion „In **Amazon ECS bereitstellen**“ (`DeployToECS`) — Nach Abschluss der Aktion **„Amazon ECS-Aufgabendefinition rendern**“ sucht die Aktion „In **Amazon ECS bereitstellen“ nach** dem von der Renderaktion generierten Ausgabeartefakt (`TaskDefArtifact`), findet die darin enthaltene `task-definition-random-string.json` Datei und registriert sie bei Ihrem Amazon ECS-Service. Der Amazon ECS-Service folgt dann den Anweisungen in der `task-definition-random-string.json` Datei, um Amazon ECS-Aufgaben — und zugehörige Docker-Image-Container — in Ihrem Amazon ECS-Cluster auszuführen. 

```
Name: codecatalyst-ecs-workflow
SchemaVersion: 1.0

Triggers:
  - Type: PUSH
    Branches:
      - main
Actions:
  BuildDocker:
    Identifier: aws/build@v1
    Environment:
      Name: codecatalyst-ecs-environment
      Connections:
        - Name: codecatalyst-account-connection
          Role: codecatalyst-ecs-build-role
    Inputs:
      Variables:
        - Name: REPOSITORY_URI
          Value: 111122223333.dkr.ecr.us-east-2.amazonaws.com/codecatalyst-ecs-image-repo
        - Name: IMAGE_TAG
          Value: ${WorkflowSource.CommitId}
    Configuration:
      Steps:
        #pre_build:
        - Run: echo Logging in to Amazon ECR...
        - Run: aws --version
        - Run: aws ecr get-login-password --region us-east-2 | docker login --username AWS --password-stdin 111122223333.dkr.ecr.us-east-2.amazonaws.com
        #build:
        - Run: echo Build started on `date`
        - Run: echo Building the Docker image...
        - Run: docker build -t $REPOSITORY_URI:latest .
        - Run: docker tag $REPOSITORY_URI:latest $REPOSITORY_URI:$IMAGE_TAG
        #post_build:
        - Run: echo Build completed on `date`
        - Run: echo Pushing the Docker images...
        - Run: docker push $REPOSITORY_URI:latest
        - Run: docker push $REPOSITORY_URI:$IMAGE_TAG
        
  RenderTaskDef:
    DependsOn: 
      - BuildDocker
    Identifier: aws/ecs-render-task-definition@v1
    Inputs:
      Variables:
        - Name: REPOSITORY_URI
          Value: 111122223333.dkr.ecr.us-east-2.amazonaws.com/codecatalyst-ecs-image-repo
        - Name: IMAGE_TAG
          Value: ${WorkflowSource.CommitId}
    Configuration:      
      task-definition: taskdef.json
      container-definition-name: codecatalyst-ecs-container
      image: $REPOSITORY_URI:$IMAGE_TAG 
    # The output artifact contains the updated task definition file. 
    # The new file is prefixed with 'task-definition'.
    # The output variable is set to the name of the updated task definition file. 
    Outputs:
      Artifacts:
        - Name: TaskDefArtifact
          Files: 
            - "task-definition*"
      Variables:
        - task-definition
        
  DeployToECS:
    Identifier: aws/ecs-deploy@v1
    Environment:
      Name: codecatalyst-ecs-environment
      Connections:
        - Name: codecatalyst-account-connection
          Role: codecatalyst-ecs-deploy-role
    #Input artifact contains the updated task definition file.
    Inputs:
      Sources: []
      Artifacts:
        - TaskDefArtifact
    Configuration:
      region: us-east-2
      cluster: codecatalyst-ecs-cluster
      service: codecatalyst-ecs-service
      task-definition: ${RenderTaskDef.task-definition}
```

# Aktion „Amazon ECS-Aufgabendefinition rendern“ hinzufügen
<a name="render-ecs-action-add"></a>

 Verwenden Sie die folgenden Anweisungen, um Ihrem Workflow die Aktion **„Amazon ECS rendern“ -Aufgabendefinition** hinzuzufügen. 

**Voraussetzung**  
Bevor Sie beginnen, stellen Sie sicher, dass Sie über einen Workflow verfügen, der eine Build-Aktion enthält, die dynamisch ein Docker-Image generiert. Einzelheiten finden Sie im vorherigen [Beispiel-Workflow](render-ecs-action-example-workflow.md).

------
#### [ Visual ]

**Um die Aktion „Amazon ECS-Aufgabendefinition rendern“ mit dem visuellen Editor hinzuzufügen**

1. [Öffnen Sie die CodeCatalyst Konsole unter https://codecatalyst.aws/.](https://codecatalyst.aws/)

1. Wählen Sie Ihr Projekt.

1. **Wählen Sie im Navigationsbereich **CI/CD** und dann Workflows aus.**

1. Wählen Sie den Namen Ihres Workflows. Sie können nach dem Quell-Repository oder dem Branch-Namen filtern, in dem der Workflow definiert ist, oder nach Workflow-Namen oder -Status filtern.

1. Wählen Sie **Bearbeiten** aus.

1. Wählen Sie **Visual**.

1. Wählen Sie oben links **\$1 Aktionen**, um den Aktionskatalog zu öffnen.

1. Wählen Sie in der Drop-down-Liste **Amazon** aus CodeCatalyst.

1. Suchen Sie nach der Aktion **„Amazon ECS-Aufgabendefinition rendern**“ und führen Sie einen der folgenden Schritte aus:
   + Wählen Sie das Pluszeichen (**\$1**), um die Aktion zum Workflow-Diagramm hinzuzufügen und den zugehörigen Konfigurationsbereich zu öffnen.

     Oder
   + Wählen Sie **„Amazon ECS-Aufgabendefinition rendern**“. Das Dialogfeld mit den Aktionsdetails wird angezeigt. In diesem Dialogfeld:
     + (Optional) Wählen Sie „**Quelltext** [anzeigen“, um den Quellcode der Aktion](workflows-view-source.md#workflows-view-source.title) anzuzeigen.
     + Wählen Sie **Zum Workflow** hinzufügen, um die Aktion zum Workflow-Diagramm hinzuzufügen und den zugehörigen Konfigurationsbereich zu öffnen.

1. Füllen Sie auf den Registerkarten **Eingaben** und **Konfiguration** die Felder nach Ihren Bedürfnissen aus. Eine Beschreibung der einzelnen Felder finden Sie unter[Aktion 'Amazon ECS-Aufgabendefinition rendern' YAML](render-ecs-action-ref.md). Diese Referenz enthält detaillierte Informationen zu jedem Feld (und dem entsprechenden YAML-Eigenschaftswert), wie es sowohl im YAML- als auch im visuellen Editor angezeigt wird.

1. (Optional) Wählen Sie „**Validieren**“, um den YAML-Code des Workflows vor dem Commit zu überprüfen.

1. Wählen Sie **Commit**, geben Sie eine Commit-Nachricht ein und wählen Sie erneut **Commit**.

------
#### [ YAML ]

**Um die Aktion „Amazon ECS-Aufgabendefinition rendern“ mit dem YAML-Editor hinzuzufügen**

1. [Öffnen Sie die Konsole unter https://codecatalyst.aws/ CodeCatalyst .](https://codecatalyst.aws/)

1. Wählen Sie Ihr Projekt.

1. **Wählen Sie im Navigationsbereich **CI/CD** und dann Workflows aus.**

1. Wählen Sie den Namen Ihres Workflows. Sie können nach dem Quell-Repository oder dem Branch-Namen filtern, in dem der Workflow definiert ist, oder nach Workflow-Namen oder -Status filtern.

1. Wählen Sie **Bearbeiten** aus.

1. Wählen Sie **YAML.**

1. Wählen Sie links oben **\$1 Aktionen, um den Aktionskatalog** zu öffnen.

1. Wählen Sie in der Drop-down-Liste **Amazon** aus CodeCatalyst.

1. Suchen Sie nach der Aktion **„Amazon ECS-Aufgabendefinition rendern**“ und führen Sie einen der folgenden Schritte aus:
   + Wählen Sie das Pluszeichen (**\$1**), um die Aktion zum Workflow-Diagramm hinzuzufügen und den zugehörigen Konfigurationsbereich zu öffnen.

     Oder
   + Wählen Sie **„Amazon ECS-Aufgabendefinition rendern**“. Das Dialogfeld mit den Aktionsdetails wird angezeigt. In diesem Dialogfeld:
     + (Optional) Wählen Sie „**Quelltext** [anzeigen“, um den Quellcode der Aktion](workflows-view-source.md#workflows-view-source.title) anzuzeigen.
     + Wählen Sie **Zum Workflow** hinzufügen, um die Aktion zum Workflow-Diagramm hinzuzufügen und den zugehörigen Konfigurationsbereich zu öffnen.

1. Ändern Sie die Eigenschaften im YAML-Code nach Ihren Bedürfnissen. Eine Erläuterung der einzelnen verfügbaren Eigenschaften finden Sie in der[Aktion 'Amazon ECS-Aufgabendefinition rendern' YAML](render-ecs-action-ref.md).

1. (Optional) Wählen Sie „**Validieren**“, um den YAML-Code des Workflows vor dem Commit zu überprüfen.

1. Wählen Sie **Commit**, geben Sie eine Commit-Nachricht ein und wählen Sie erneut **Commit**.

------

**Nächste Schritte**

Nachdem Sie die Render-Aktion hinzugefügt haben, fügen Sie Ihrem Workflow die Aktion **Deploy to Amazon ECS** hinzu, indem Sie den Anweisungen unter folgen[Bereitstellung auf Amazon ECS mit einem Workflow](deploy-action-ecs.md). Gehen Sie beim Hinzufügen der Bereitstellungsaktion wie folgt vor:

1. Wählen Sie auf der Registerkarte „**Eingaben**“ der Aktion „Bereitstellen“ unter **Artefakte — optional** das Artefakt aus, das durch die Renderaktion generiert wurde. Sie enthält die aktualisierte Aufgabendefinitionsdatei.

   Weitere Informationen zu Artefakten finden Sie unter [Artefakte und Dateien zwischen Aktionen teilen](workflows-working-artifacts.md).

1. Geben Sie auf der Registerkarte **Konfiguration** der Bereitstellungsaktion im Feld **Aufgabendefinition** die folgende Aktionsvariable an: `${action-name.task-definition}` wobei der Name Ihrer Renderaktion *action-name* steht, zum Beispiel`RenderTaskDef`. Die Renderaktion setzt diese Variable auf den neuen Namen der Aufgabendefinitionsdatei.

   Weitere Hinweise zu Variablen finden Sie unter[Verwenden von Variablen in Workflows](workflows-working-with-variables.md).

   Weitere Informationen zur Konfiguration der Bereitstellungsaktion finden Sie im vorherigen [Beispiel-Workflow](render-ecs-action-example-workflow.md).

# Die aktualisierte Aufgabendefinitionsdatei anzeigen
<a name="render-ecs-action-view"></a>

Sie können den Namen und den Inhalt der aktualisierten Aufgabendefinitionsdatei einsehen.

**Um den Namen der aktualisierten Aufgabendefinitionsdatei anzuzeigen, nachdem sie von der Aktion **Amazon ECS-Aufgabendefinition rendern** verarbeitet wurde.**

1. Suchen Sie den Lauf, der eine abgeschlossene Renderaktion enthält:

   1. Öffnen Sie die CodeCatalyst Konsole unter [https://codecatalyst.aws/](https://codecatalyst.aws/).

   1. Wählen Sie Ihr Projekt.

   1. **Wählen Sie im Navigationsbereich **CI/CD** und dann Workflows aus.**

   1. Wählen Sie den Namen Ihres Workflows. Sie können nach dem Quell-Repository oder dem Branch-Namen filtern, in dem der Workflow definiert ist, oder nach Workflow-Namen oder -Status filtern.

   1. Wählen Sie einen Lauf aus, der die abgeschlossene Renderaktion beinhaltet.

1. Wählen Sie im Workflow-Diagramm die Renderaktion aus.

1. Wählen Sie **Ausgaben** aus.

1. Wählen Sie **Variablen**.

1. Der Name der Aufgabendefinitionsdatei wird angezeigt. Er sieht ähnlich aus wie`task-definition--259-0a2r7gxlTF5X-.json`.

**Um den Inhalt der aktualisierten Aufgabendefinitionsdatei anzuzeigen**

1. Suchen Sie den Lauf, der eine abgeschlossene Renderaktion enthält:

   1. Öffnen Sie die CodeCatalyst Konsole unter [https://codecatalyst.aws/](https://codecatalyst.aws/).

   1. Wählen Sie Ihr Projekt.

   1. **Wählen Sie im Navigationsbereich **CI/CD** und dann Workflows aus.**

   1. Wählen Sie den Namen Ihres Workflows. Sie können nach dem Quell-Repository oder dem Branch-Namen filtern, in dem der Workflow definiert ist, oder nach Workflow-Namen oder -Status filtern.

   1. Wählen Sie einen Lauf aus, der die abgeschlossene Renderaktion beinhaltet.

1. Wählen Sie in der Workflow-Ausführung oben neben **Visual** und **YAML** die Option **Workflow-Ausgaben** aus.

1. Wählen Sie im Abschnitt **Artefakte** neben dem Artefakt, das die aktualisierte Aufgabendefinitionsdatei enthält, die Option **Herunterladen** aus. Für dieses Artefakt wird die Spalte **Produziert von** auf den Namen Ihrer Renderaktion gesetzt.

1. Öffnen Sie die ZIP-Datei, um die JSON-Datei mit der Aufgabendefinition anzuzeigen.

# Variablen „Amazon ECS-Aufgabendefinition rendern“
<a name="render-ecs-action-variables"></a>

Die Aktion **„Amazon ECS-Aufgabendefinition rendern**“ erzeugt und setzt zur Laufzeit die folgenden Variablen. Diese werden als *vordefinierte Variablen* bezeichnet.

Hinweise zum Verweisen auf diese Variablen in einem Workflow finden Sie unter[Verwenden vordefinierter Variablen](workflows-using-predefined-variables.md).


| Key (Schlüssel) | Value (Wert) | 
| --- | --- | 
|  Aufgabendefinition  |  Der Name der Aufgabendefinitionsdatei, die durch die **Amazon ECS-Aufgabendefinitionsaktion Rendern** aktualisiert wurde. Der Name hat folgendes Format: `task-definition-random-string.json`. Beispiel: `task-definition--259-0a2r7gxlTF5Xr.json`  | 

# Aktion 'Amazon ECS-Aufgabendefinition rendern' YAML
<a name="render-ecs-action-ref"></a>

Im Folgenden finden Sie die YAML-Definition der **Aufgabendefinitionsaktion „Amazon ECS rendern**“. Informationen zur Verwendung dieser Aktion finden Sie unter[Ändern einer Amazon ECS-Aufgabendefinition](render-ecs-action.md).

Diese Aktionsdefinition ist als Abschnitt in einer umfassenderen Workflow-Definitionsdatei vorhanden. Weitere Informationen über diese Datei finden Sie unter [YAML-Workflow-Definition](workflow-reference.md).

**Anmerkung**  
Die meisten der folgenden YAML-Eigenschaften haben entsprechende Benutzeroberflächenelemente im visuellen Editor. Verwenden Sie **Strg\$1F**, 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.   
  ECSRenderTaskDefinition\$1nn: 
    Identifier: aws/ecs-render-task-definition@v1
    DependsOn:
      - build-action
    Compute:  
      Type: EC2 | Lambda
      Fleet: fleet-name
    Timeout: timeout-minutes
    Inputs:
      # Specify a source or an artifact, but not both.
      Sources:
        - source-name-1
      Artifacts:
        - task-definition-artifact
      Variables:
        - Name: variable-name-1
          Value: variable-value-1
        - Name: variable-name-2
          Value: variable-value-2
    Configuration 
      task-definition: task-definition-path
      container-definition-name: container-definition-name
      image: docker-image-name
      environment-variables:
        - variable-name-1=variable-value-1
        - variable-name-2=variable-value-2
    Outputs:
      Artifacts:
        - Name: TaskDefArtifact
          Files: "task-definition*"
      Variables:
        - task-definition
```

## ECSRenderTaskDefinition
<a name="render.ecs.name"></a>

(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 (\$1) beschränkt. Leerzeichen sind nicht erlaubt. Sie können keine Anführungszeichen verwenden, um Sonderzeichen und Leerzeichen in Aktionsnamen zuzulassen.

Standard: `ECSRenderTaskDefinition_nn`.

Entsprechende Benutzeroberfläche: Registerkarte „**Konfiguration/Aktionsname“**

## Identifier
<a name="render.ecs.identifier"></a>

(*ECSRenderTaskDefinition*/**Identifier**)

(Erforderlich)

Identifiziert die Aktion. Ändern Sie diese Eigenschaft nur, wenn Sie die Version ändern möchten. Weitere Informationen finden Sie unter [Angabe der zu verwendenden Aktionsversion](workflows-action-versions.md).

Standard: `aws/ecs-render-task-definition@v1`.

**Entsprechende Benutzeroberfläche: Workflow-Diagram/ ECSRenderTaskDefinition \$1nn/ aws/ @v1 label ecs-render-task-definition**

## DependsOn
<a name="render.ecs.dependson"></a>

(*ECSRenderTaskDefinition*/**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](workflows-depends-on.md)

Entsprechende Benutzeroberfläche: Registerkarte „Eingaben“/„**Hängt davon ab**“ — optional

## Compute
<a name="render.ecs.computename"></a>

(*ECSRenderTaskDefinition*/**Compute**)

(Optional)

Die Rechen-Engine, mit der Ihre Workflow-Aktionen ausgeführt wurden. 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](compute-sharing.md).

Entsprechende Benutzeroberfläche: *keine*

## Type
<a name="render.ecs.computetype"></a>

(*ECSRenderTaskDefinition*/Compute/**Type**)

([Compute](#render.ecs.computename)Erforderlich, falls enthalten)

Der Typ der Compute Engine. Sie können einen der folgenden Werte verwenden:
+ **EC2**(visueller Editor) oder `EC2` (YAML-Editor)

  Optimiert für Flexibilität bei Aktionsläufen.
+ **Lambda** (visueller Editor) oder `Lambda` (YAML-Editor)

  Optimierte Startgeschwindigkeiten für Aktionen.

Weitere Informationen zu Datentypen finden Sie unter [Berechnungstypen](workflows-working-compute.md#compute.types).

Entsprechende Benutzeroberfläche: Registerkarte „**Konfiguration/Berechnungstyp**“

## Fleet
<a name="render.ecs.computefleet"></a>

(*ECSRenderTaskDefinition*/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. [Eigenschaften von On-Demand-Flotten](workflows-working-compute.md#compute.on-demand)

Bei bereitgestellten Flotten konfigurieren Sie eine Reihe von dedizierten Maschinen, um Ihre Workflow-Aktionen auszuführen. Diese Maschinen bleiben inaktiv und sind bereit, Aktionen sofort zu verarbeiten. Weitere Informationen zu bereitgestellten Flotten finden Sie unter. [Eigenschaften von bereitgestellten Flotten](workflows-working-compute.md#compute.provisioned-fleets)

Wenn `Fleet` es weggelassen wird, ist die Standardeinstellung. `Linux.x86-64.Large`

Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration“/„Flotte **berechnen**“

## Timeout
<a name="render.ecs.timeout"></a>

(*ECSRenderTaskDefinition*/**Timeout**)

(Optional)

Geben Sie an, wie lange die Aktion in Minuten (YAML-Editor) oder Stunden und Minuten (visueller Editor) ausgeführt werden kann, bevor die Aktion CodeCatalyst beendet wird. Das Minimum beträgt 5 Minuten und das Maximum ist unter beschrieben[Kontingente für Workflows in CodeCatalyst](workflows-quotas.md). Das Standard-Timeout entspricht dem maximalen Timeout.

**Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration/Timeout“ — optional**

## Inputs
<a name="render.ecs.inputs"></a>

(*ECSRenderTaskDefinition*/**Inputs**)

(Optional)

Der `Inputs` Abschnitt definiert die Daten, die während einer Workflow-Ausführung `ECSRenderTaskDefinition` benötigt werden.

**Anmerkung**  
Pro **Render Amazon ECS-Aufgabendefinitionsaktion** ist nur eine Eingabe (entweder eine Quelle oder ein Artefakt) zulässig. Variablen werden auf diese Summe nicht angerechnet.

Entsprechende Benutzeroberfläche: Registerkarte „**Eingaben**“

## Sources
<a name="render.ecs.inputs.sources"></a>

(*ECSRenderTaskDefinition*/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 Label`WorkflowSource`.

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](workflows-sources.md).

**Entsprechende Benutzeroberfläche: Registerkarte „Eingaben“/„Quellen“ — optional**

## Artifacts - input
<a name="render.ecs.inputs.artifacts"></a>

(*ECSRenderTaskDefinition*/Inputs/**Artifacts**)

(Erforderlich, wenn Ihre Aufgabendefinitionsdatei in einem [Ausgabeartefakt](workflows-working-artifacts-output.md) 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](workflows-working-artifacts.md)

Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration“/„**Artefakte“ — optional**

## Variables - input
<a name="render.ecs.inputs.variables"></a>

(*ECSRenderTaskDefinition*/Inputs/**Variables**)

(Erforderlich)

Geben Sie eine Sequenz von name/value Paaren an, die die Eingabevariablen definieren, die Sie für die Aktion verfügbar machen möchten. Variablennamen sind auf alphanumerische Zeichen (a-z, A-Z, 0-9), Bindestriche (-) und Unterstriche (\$1) beschränkt. Leerzeichen sind nicht erlaubt. Sie können keine Anführungszeichen verwenden, um Sonderzeichen und Leerzeichen in Variablennamen zuzulassen.

Weitere Informationen zu Variablen, einschließlich Beispielen, finden Sie unter[Verwenden von Variablen in Workflows](workflows-working-with-variables.md).

Entsprechende Benutzeroberfläche: Registerkarte „Eingaben“/„**Variablen“ — optional**

## Configuration
<a name="render.ecs.configuration"></a>

(*ECSRenderTaskDefinition*/**Configuration**)

(Erforderlich)

Ein Abschnitt, in dem Sie die Konfigurationseigenschaften der Aktion definieren können.

Entsprechende Benutzeroberfläche: Registerkarte „**Konfiguration**“

## task-definition
<a name="render.ecs.task.definition"></a>

(*ECSRenderTaskDefinition*/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](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html#welcome-task-definitions) im *Amazon Elastic Container Service Developer Guide*.

Entsprechende Benutzeroberfläche: Registerkarte „**Konfiguration/Aufgabendefinition**“

## container-definition-name
<a name="render.ecs.container.name"></a>

(*ECSRenderTaskDefinition*/Configuration/**container-definition-name**)

(Erforderlich)

Geben Sie den Namen des Containers an, auf dem Ihr Docker-Image ausgeführt werden soll. Sie finden diesen Namen im `name` Feld`containerDefinitions`, in Ihrer Aufgabendefinitionsdatei. Weitere Informationen finden Sie unter [Name](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definition_name) im *Amazon Elastic Container Service Developer Guide*.

Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration“/Name des **Containers**

## image
<a name="render.ecs.image"></a>

(*ECSRenderTaskDefinition*/Configuration/**image**)

(Erforderlich)

Geben Sie den Namen des Docker-Images an, das die Aktion **Amazon ECS-Aufgabendefinition rendern** zu Ihrer Aufgabendefinitionsdatei hinzufügen soll. Die Aktion fügt diesen Namen dem `image` Feld`containerDefinitions`, in Ihrer Aufgabendefinitionsdatei hinzu. Wenn in dem `image` Feld bereits ein Wert vorhanden ist, wird er von der Aktion überschrieben. Sie können Variablen in den Bildnamen aufnehmen.

Beispiele:

Wenn Sie angeben`MyDockerImage:${WorkflowSource.CommitId}`, wird die Aktion der Aufgabendefinitionsdatei hinzugefügt`MyDockerImage:commit-id`, in der sich eine Commit-ID *commit-id* befindet, die zur Laufzeit vom Workflow generiert wird.

Wenn Sie angeben`my-ecr-repo/image-repo:$(date +%m-%d-%y-%H-%m-%s)`, fügt die Aktion *my-ecr-repo* /image-repo: *date \$1%m-%d-%y-%H-%m-%s* zur Aufgabendefinitionsdatei hinzu. Dabei *my-ecr-repo* handelt es sich um den URI einer Amazon Elastic Container Registry (ECR) und um einen Zeitstempel in dem Format, das zur Laufzeit durch den Workflow `month-day-year-hour-minute-second` generiert *date \$1%m-%d-%y-%H-%m-%s* wird.

Weitere Informationen zu `image` diesem Bereich finden Sie unter [Bild](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definition_image) im *Amazon Elastic Container Service Developer Guide*. Weitere Informationen zu Variablen finden Sie unter[Verwenden von Variablen in Workflows](workflows-working-with-variables.md).

Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration“/Name **des Images**

## environment-variables
<a name="render.ecs.environment.variables"></a>

(*ECSRenderTaskDefinition*/Configuration/**environment-variables**)

(Erforderlich)

Geben Sie die Umgebungsvariablen an, die die Aktion **„Amazon ECS-Aufgabendefinition rendern**“ zu Ihrer Aufgabendefinitionsdatei hinzufügen soll. Die Aktion fügt die Variablen dem `environment` Feld`containerDefinitions`, in Ihrer Aufgabendefinitionsdatei hinzu. Wenn in der Datei bereits Variablen vorhanden sind, überschreibt die Aktion die Werte vorhandener Variablen und fügt alle neuen Variablen hinzu. Weitere Informationen zu Amazon ECS-Umgebungsvariablen finden Sie unter [Spezifizieren von Umgebungsvariablen](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/taskdef-envfiles.html) im *Amazon Elastic Container Service Developer Guide*.

Entsprechende Benutzeroberfläche: Registerkarte „Konfiguration“/„**Umgebungsvariablen“ — optional**

## Outputs
<a name="render.ecs.outputs"></a>

(*ECSRenderTaskDefinition*/**Outputs**)

(Erforderlich)

Definiert die Daten, die von der Aktion während einer Workflow-Ausführung ausgegeben werden.

Entsprechende Benutzeroberfläche: Registerkarte „**Ausgaben**“

## Artifacts
<a name="render.ecs.outputs.artifacts"></a>

(*ECSRenderTaskDefinition*/Outputs/**Artifacts**)

(Erforderlich)

Geben Sie die durch die Aktion generierten Artefakte an. Sie können diese Artefakte als Eingabe in anderen Aktionen referenzieren.

Weitere Informationen zu Artefakten, einschließlich Beispielen, finden Sie unter[Artefakte und Dateien zwischen Aktionen teilen](workflows-working-artifacts.md).

**Entsprechende Benutzeroberfläche: Registerkarte Ausgaben/Artefakte**

## Name
<a name="render.ecs.outputs.artifacts.name"></a>

(*ECSRenderTaskDefinition*/Outputs/Artifacts/**Name**)

(Erforderlich)

Geben Sie den Namen des Artefakts an, das die aktualisierte Aufgabendefinitionsdatei enthalten soll. Der Standardwert ist `MyTaskDefinitionArtifact`. Anschließend müssen Sie dieses Artefakt als Eingabe für die Aktion **Deploy to Amazon ECS** angeben. Informationen darüber, wie Sie dieses Artefakt als Eingabe zur Aktion **Deploy to Amazon ECS** hinzufügen, finden Sie unter[Beispiel: Ändern Sie eine Amazon ECS-Taskdef](render-ecs-action-example-workflow.md).

**Entsprechende Benutzeroberfläche: Registerkarte Ausgaben/Artifacte/Name**

## Files
<a name="render.ecs.outputs.artifacts.files"></a>

(*ECSRenderTaskDefinition*/Outputs/Artifacts/**Files**)

(Erforderlich)

Geben Sie die Dateien an, die in das Artefakt aufgenommen werden sollen. Sie müssen angeben, `task-definition-*` dass die aktualisierte Aufgabendefinitionsdatei, die mit beginnt`task-definition-`, eingeschlossen wird.

**Entsprechende Benutzeroberfläche: Registerkarte Ausgaben/Artefakte/Dateien**

## Variables
<a name="render.ecs.outputs.variables"></a>

(*ECSRenderTaskDefinition*/Outputs/**Variables**)

(Erforderlich)

Geben Sie den Namen einer Variablen an, die durch die Renderaktion festgelegt werden soll. Bei der Renderaktion wird der Wert dieser Variablen auf den Namen der aktualisierten Aufgabendefinitionsdatei gesetzt (z. B.`task-definition-random-string.json`). Anschließend müssen Sie diese Variable in der Eigenschaft **Aufgabendefinition** (visueller Editor) oder `task-definition` (Yaml-Editor) der Aktion **Deploy to Amazon ECS** angeben. Informationen zum Hinzufügen dieser Variablen zur Aktion **Deploy to Amazon ECS** finden Sie unter[Beispiel: Ändern Sie eine Amazon ECS-Taskdef](render-ecs-action-example-workflow.md).

Standard: `task-definition`

**Entsprechende Benutzeroberfläche: Registerkarte Ausgaben/Variablen/Feld Name**