

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.

# Stufenwiederholung für eine fehlgeschlagene Phase oder fehlgeschlagene Aktionen konfigurieren
<a name="stage-retry"></a>

Sie können eine Phase wiederholen, bei der ein Fehler aufgetreten ist, ohne eine Pipeline erneut von Anfang an ausführen zu müssen. Sie tun dies, indem Sie entweder die fehlgeschlagenen Aktionen in einer Phase erneut versuchen oder indem Sie alle Aktionen in der Phase wiederholen, beginnend mit der ersten Aktion in der Phase. Wenn Sie die fehlgeschlagenen Aktionen in einer Phase wiederholen, funktionieren alle Aktionen, die noch ausgeführt werden, weiterhin, und fehlgeschlagene Aktionen werden erneut ausgelöst. Wenn Sie eine fehlgeschlagene Phase von der ersten Aktion in der Phase wiederholen, können in der Phase keine Aktionen ausgeführt werden. Bevor eine Phase erneut versucht werden kann, müssen entweder alle Aktionen fehlgeschlagen sein oder einige Aktionen sind fehlgeschlagen und andere erfolgreich.

**Wichtig**  
Beim erneuten Versuch einer fehlgeschlagenen Phase werden alle Aktionen der Phase von der ersten Aktion in der Phase wiederholt, und bei einem erneuten Versuch, fehlgeschlagene Aktionen durchzuführen, werden alle fehlgeschlagenen Aktionen in der Phase wiederholt. Dadurch werden Ausgabeartefakte zuvor erfolgreicher Aktionen in derselben Ausführung außer Kraft gesetzt.   
Artefakte können zwar überschrieben werden, der Ausführungsverlauf zuvor erfolgreicher Aktionen wird jedoch beibehalten.

Wenn Sie die Konsole verwenden, um eine Pipeline anzuzeigen, erscheint entweder die Schaltfläche **Phase wiederholen** oder **Fehlgeschlagene Aktionen wiederholen** auf der Stufe, die erneut versucht werden kann.

Wenn Sie die AWS CLI verwenden, können Sie den **get-pipeline-state** Befehl verwenden, um festzustellen, ob Aktionen fehlgeschlagen sind.

**Anmerkung**  
In den folgenden Fällen können Sie eine Phase möglicherweise nicht erneut versuchen:  
Alle Aktionen in der Phase waren erfolgreich, sodass die Phase nicht den Status Fehlgeschlagen hat.
Die gesamte Pipeline-Struktur hat sich geändert, nachdem die Phase gescheitert war.
Es wird bereits ein anderer Wiederholungsversuch in der Phase ausgeführt.

**Topics**
+ [Überlegungen zur Wiederholung der Phase](#stage-retry-considerations)
+ [Eine fehlgeschlagene Phase manuell wiederholen](#stage-retry-manual)
+ [Konfigurieren Sie eine Phase für den automatischen Wiederholungsversuch bei einem Fehler](#stage-retry-auto)

## Überlegungen zur Wiederholung der Phase
<a name="stage-retry-considerations"></a>

Bei der Wiederholung einer Phase sollten folgende Überlegungen angestellt werden:
+ Sie können die automatische Wiederholung bei einem Stufenausfall nur für einen Wiederholungsversuch konfigurieren.
+ Sie können die automatische Wiederholung bei einem Stufenfehler für alle Aktionen, einschließlich Aktionen, konfigurieren. `Source`

## Eine fehlgeschlagene Phase manuell wiederholen
<a name="stage-retry-manual"></a>

Sie können eine fehlgeschlagene Phase mithilfe der Konsole oder der CLI manuell wiederholen.

Sie können auch eine Phase für die automatische Wiederholung bei einem Fehler konfigurieren, wie unter beschrieben. [Konfigurieren Sie eine Phase für den automatischen Wiederholungsversuch bei einem Fehler](#stage-retry-auto) 

### Eine fehlgeschlagene Phase manuell wiederholen (Konsole)
<a name="stage-retry-console"></a><a name="proc-stage-retry-console"></a>

**Um eine fehlgeschlagene Phase oder fehlgeschlagene Aktionen in einer Phase erneut zu versuchen: Konsole**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die CodePipeline Konsole unter [http://console.aws.amazon. com/codesuite/codepipeline/home](https://console.aws.amazon.com/codesuite/codepipeline/home).

   Die Namen aller mit Ihrem AWS Konto verknüpften Pipelines werden angezeigt.

1.  Wählen Sie im Feld **Name** den Namen der Pipeline. 

1. Suchen Sie die Phase mit der fehlgeschlagenen Aktion und wählen Sie dann eine der folgenden Optionen aus:
   + Um alle Aktionen in der Phase erneut zu versuchen, wählen Sie Phase **wiederholen** aus.
   + Um nur fehlgeschlagene Aktionen in der Phase erneut zu versuchen, wählen Sie Fehlgeschlagene Aktionen **wiederholen**.   
![\[Eine Beispielpipeline mit einer CodeCommit Quellphase und einer fehlgeschlagenen CodeDeploy Bereitstellungsphase\]](http://docs.aws.amazon.com/de_de/codepipeline/latest/userguide/images/retry-failed-stage.png)

   Wenn alle wiederholten Aktionen in der Stufe erfolgreich abgeschlossen sind, wird die Pipeline weiter ausgeführt.

### Manuelles Wiederholen einer fehlgeschlagenen Phase (CLI)
<a name="stage-retry-cli"></a>

**Um eine fehlgeschlagene Phase oder fehlgeschlagene Aktionen in einer Phase erneut zu versuchen - CLI**

Um alle Aktionen oder alle fehlgeschlagenen Aktionen erneut AWS CLI zu versuchen, führen Sie den **retry-stage-execution** Befehl mit den folgenden Parametern aus: 

```
--pipeline-name <value>
--stage-name <value>
--pipeline-execution-id <value>
--retry-mode ALL_ACTIONS/FAILED_ACTIONS
```
**Anmerkung**  
Die Werte, für die Sie verwenden können, `retry-mode` sind `FAILED_ACTIONS` und`ALL_ACTIONS`.

1. Führen Sie den Befehl an einem Terminal (Linux, macOS oder Unix) oder einer [https://docs.aws.amazon.com/cli/latest/reference/codepipeline/get-pipeline-state.html](https://docs.aws.amazon.com/cli/latest/reference/codepipeline/get-pipeline-state.html)Befehlszeile (Windows) aus, wie im folgenden Beispiel für eine Pipeline mit dem Namen gezeigt`MyPipeline`.

   ```
   aws codepipeline retry-stage-execution --pipeline-name MyPipeline --stage-name Deploy --pipeline-execution-id b59babff-5f34-EXAMPLE --retry-mode FAILED_ACTIONS
   ```

   Die Ausgabe gibt die Ausführungs-ID zurück:

   ```
   {
       "pipelineExecutionId": "b59babff-5f34-EXAMPLE"
   }
   ```

1. Sie können den Befehl auch mit einer JSON-Eingabedatei ausführen. Sie erstellen zunächst eine JSON-Datei, die die Pipeline, die Stufe mit den fehlgeschlagenen Aktionen und die letzte Pipeline-Ausführung in dieser Stufe ermittelt. Führen Sie den Befehl **retry-stage-execution** mit dem Parameter `--cli-input-json` aus. Am einfachsten können Sie die für die JSON-Datei benötigten Details über den Befehl **get-pipeline-state** abrufen.

   1. Führen Sie den Befehl an einem Terminal (Linux, macOS oder Unix) oder einer [https://docs.aws.amazon.com/cli/latest/reference/codepipeline/get-pipeline-state.html](https://docs.aws.amazon.com/cli/latest/reference/codepipeline/get-pipeline-state.html)Befehlszeile (Windows) in einer Pipeline aus. Für eine Pipeline mit dem Namen würden Sie MyFirstPipeline beispielsweise etwas Ähnliches wie das Folgende eingeben:

      ```
      aws codepipeline get-pipeline-state --name MyFirstPipeline
      ```

      Die Ausgabe des Befehls umfasst die Pipeline-Statusinformationen für jede einzelne Stufe. Im folgenden Beispiel zeigt die Ausgabe, dass eine oder mehrere Aktionen in der Staging-Stufe fehlgeschlagen sind:

      ```
      {
          "updated": 1427245911.525,
          "created": 1427245911.525,
          "pipelineVersion": 1,
          "pipelineName": "MyFirstPipeline",
          "stageStates": [
              {
                  "actionStates": [...],
                  "stageName": "Source",
                  "latestExecution": {
                      "pipelineExecutionId": "9811f7cb-7cf7-SUCCESS",
                      "status": "Succeeded"
                  }
              },
              {
                  "actionStates": [...],
                  "stageName": "Staging",
                  "latestExecution": {
                      "pipelineExecutionId": "3137f7cb-7cf7-EXAMPLE",
                      "status": "Failed"
                  }
              }
          ]
      }
      ```

   1. Erstellen Sie in einem Texteditor eine Datei im JSON-Format, in der Sie Folgendes festhalten:
      + Der Name der Pipeline mit den fehlgeschlagenen Aktionen
      + Der Name der Stufe mit den fehlgeschlagenen Aktionen
      + Die ID der letzten Pipeline-Ausführung in der Stufe
      + Der Retry-Modus.

      Für das vorherige MyFirstPipeline Beispiel würde Ihre Datei etwa so aussehen:

      ```
      {
          "pipelineName": "MyFirstPipeline",
          "stageName": "Staging",
          "pipelineExecutionId": "3137f7cb-7cf7-EXAMPLE",
          "retryMode": "FAILED_ACTIONS"
      }
      ```

   1. Speichern Sie die Datei mit einem Namen wie **retry-failed-actions.json**.

   1. Rufen Sie die beim Ausführen des Befehls [https://docs.aws.amazon.com/cli/latest/reference/codepipeline/retry-stage-execution.html](https://docs.aws.amazon.com/cli/latest/reference/codepipeline/retry-stage-execution.html) erstellte Datei auf. Beispiel:
**Wichtig**  
Achten Sie darauf, dass `file://` vor dem Dateinamen steht. Dies ist bei diesem Befehl erforderlich.

      ```
      aws codepipeline retry-stage-execution --cli-input-json file://retry-failed-actions.json
      ```

   1. Um die Ergebnisse des Wiederholungsversuchs anzuzeigen, öffnen Sie entweder die CodePipeline Konsole und wählen Sie die Pipeline aus, die die fehlgeschlagenen Aktionen enthält, oder verwenden Sie den **get-pipeline-state** Befehl erneut. Weitere Informationen finden Sie unter [Pipelines und Details anzeigen in CodePipeline](pipelines-view.md). 

## Konfigurieren Sie eine Phase für den automatischen Wiederholungsversuch bei einem Fehler
<a name="stage-retry-auto"></a>

Sie können eine Phase für die automatische Wiederholung bei einem Fehler konfigurieren. Die Phase führt einen erneuten Versuch durch und zeigt auf der Seite „Pipeline anzeigen“ auf der Seite „Pipeline **anzeigen**“ einen Wiederholungsstatus für die fehlgeschlagene Phase an.

Sie können den Wiederholungsmodus konfigurieren, indem Sie angeben, dass die Phase automatisch entweder alle Aktionen in der fehlgeschlagenen Phase oder nur fehlgeschlagene Aktionen in der Phase wiederholen soll.

### Konfigurieren Sie eine Phase für den automatischen Wiederholungsversuch bei einem Fehler (Konsole)
<a name="stage-retry-auto-console"></a>

Sie können die Konsole verwenden, um eine Phase für die automatische Wiederholung zu konfigurieren.

**Konfigurieren Sie eine Phase für automatische Wiederholungen (Konsole)**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die CodePipeline Konsole unter [http://console.aws.amazon. com/codesuite/codepipeline/home](https://console.aws.amazon.com/codesuite/codepipeline/home).

   Die Namen und der Status aller mit Ihrem AWS Konto verknüpften Pipelines werden angezeigt. 

1. Wählen Sie im Feld **Name** den Namen der Pipeline aus, die Sie bearbeiten möchten.

1. Wählen Sie auf der Pipelinedetails-Seite **Edit** aus.

1. Wählen Sie auf der Seite **Bearbeiten** für die Aktion, die Sie bearbeiten möchten, die Option **Phase bearbeiten** aus.

1. Wählen Sie **Automatisierte Stufenkonfiguration:** und wählen Sie dann **Automatische Wiederholung bei Stufenausfall aktivieren** aus. Speichern Sie die Änderungen an Ihrer Pipeline.

1. Wählen Sie **unter Automatisierte Stufenkonfiguration:** einen der folgenden Wiederholungsmodi aus:
   + Um anzugeben, dass der Modus alle Aktionen in der Phase erneut versucht, wählen Sie Phase **erneut versuchen** aus.
   + **Um anzugeben, dass der Modus nur fehlgeschlagene Aktionen in der Phase wiederholt, wählen Sie Fehlgeschlagene Aktionen wiederholen.**

   Speichern Sie die Änderungen an Ihrer Pipeline.  
![\[Ein Beispiel für einen Bearbeitungsbildschirm zur Konfiguration der automatischen Wiederholung bei einem Stufenfehler in CodePipeline.\]](http://docs.aws.amazon.com/de_de/codepipeline/latest/userguide/images/retry-configure.png)

1. Wenn nach der Ausführung der Pipeline der Fehler in der Phase auftritt, wird der automatische Wiederholungsversuch unternommen. Die folgenden Beispiele zeigen eine Buildphase, die automatisch wiederholt wurde.  
![\[Eine Beispielpipeline mit einer fehlgeschlagenen Phase, die einmal wiederholt wurde.\]](http://docs.aws.amazon.com/de_de/codepipeline/latest/userguide/images/stage-auto-retry-example.png)

1. Um Details zum Wiederholungsversuch anzuzeigen, wählen Sie. Das Fenster wird angezeigt.  
![\[Ein Beispiel für das Metadatenfenster der Wiederholungsphase, das zeigt, dass ein Versuch unternommen wurde.\]](http://docs.aws.amazon.com/de_de/codepipeline/latest/userguide/images/retry-stage-metadata.png)

### Konfigurieren Sie eine Phase für automatische Wiederholungen (CLI)
<a name="stage-retry-auto-cli"></a>

Verwenden Sie die Befehle AWS CLI zum Erstellen oder Aktualisieren einer Pipeline, um eine Phase so zu konfigurieren, dass sie bei einem Fehler automatisch wiederholt wird, wie unter und beschrieben[Eine Pipeline, Phasen und Aktionen erstellen](pipelines-create.md). [Eine Pipeline bearbeiten in CodePipeline](pipelines-edit.md)
+ Öffnen Sie ein Terminal (Linux, macOS oder Unix) oder eine Befehlszeile (Windows) und verwenden Sie die, AWS CLI um den `update-pipeline` Befehl auszuführen, wobei Sie die Fehlerbedingung in der Pipeline-Struktur angeben. Im folgenden Beispiel wird die automatische Wiederholung für einen Staging-Vorgang mit dem Namen konfiguriert: `S3Deploy` 

  ```
  {
                  "name": "S3Deploy",
                  "actions": [
                      {
                          "name": "s3deployaction",
                          "actionTypeId": {
                              "category": "Deploy",
                              "owner": "AWS",
                              "provider": "S3",
                              "version": "1"
                          },
                          "runOrder": 1,
                          "configuration": {
                              "BucketName": "static-website-bucket",
                              "Extract": "false",
                              "ObjectKey": "SampleApp.zip"
                          },
                          "outputArtifacts": [],
                          "inputArtifacts": [
                              {
                                  "name": "SourceArtifact"
                              }
                          ],
                          "region": "us-east-1"
                      }
                  ],
                   "onFailure": {
                      "result": "RETRY",
                      "retryConfiguration": {
                          "retryMode": "ALL_ACTIONS",
                      },
              }
  ```

### Konfigurieren Sie eine Phase für die automatische Wiederholung ()CloudFormation
<a name="stage-retry-auto-cfn"></a>

Verwenden Sie den Parameter Stage Lifecycle, CloudFormation um eine Phase für die `OnFailure` automatische Wiederholung bei einem Fehler zu konfigurieren. Verwenden Sie den `RetryConfiguration` Parameter, um den Wiederholungsmodus zu konfigurieren.

```
OnFailure:
     Result: RETRY
     RetryConfiguration: 
         RetryMode: ALL_ACTIONS
```
+ Aktualisieren Sie die Vorlage wie im folgenden Codeausschnitt gezeigt. Im folgenden Beispiel wird die automatische Wiederholung für eine Phase mit dem Namen konfiguriert: `Release`

  ```
  AppPipeline: 
    Type: AWS::CodePipeline::Pipeline 
    Properties: 
      RoleArn:
        Ref: CodePipelineServiceRole 
      Stages: 
        - 
          Name: Source 
          Actions: 
            - 
              Name: SourceAction
              ActionTypeId: 
                Category: Source 
                Owner: AWS 
                Version: 1 
                Provider: S3 
              OutputArtifacts: 
                - 
                  Name: SourceOutput 
              Configuration: 
                S3Bucket: 
                  Ref: SourceS3Bucket 
                S3ObjectKey: 
                  Ref: SourceS3ObjectKey 
              RunOrder: 1  
        - 
          Name: Release 
          Actions: 
            - 
              Name: ReleaseAction
              InputArtifacts: 
                - 
                  Name: SourceOutput 
              ActionTypeId: 
                Category: Deploy 
                Owner: AWS 
                Version: 1
                Provider: CodeDeploy 
              Configuration: 
                ApplicationName: 
                  Ref: ApplicationName
                DeploymentGroupName: 
                  Ref: DeploymentGroupName 
              RunOrder: 1   
         OnFailure:
             Result: RETRY
             RetryConfiguration: 
                RetryMode: ALL_ACTIONS
      ArtifactStore: 
        Type: S3 
        Location:
          Ref: ArtifactStoreS3Location 
        EncryptionKey:
          Id: arn:aws:kms:useast-1:ACCOUNT-ID:key/KEY-ID
          Type: KMS
      DisableInboundStageTransitions: 
        - 
          StageName: Release 
          Reason: "Disabling the transition until integration tests are completed"
      Tags:
        - Key: Project
          Value: ProjectA
        - Key: IsContainerBased
          Value: 'true'
  ```

  *Weitere Informationen zur Konfiguration der Wiederholungsversuche bei einem Fehler finden Sie [OnFailure](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stagedeclaration.html#cfn-codepipeline-pipeline-stagedeclaration-onfailure)unter `StageDeclaration` im CloudFormation Benutzerhandbuch.*