

Dies ist der AWS CDK v2-Entwicklerhandbuch. Das ältere CDK v1 wurde am 1. Juni 2022 in die Wartung aufgenommen und der Support wurde am 1. Juni 2023 eingestellt.

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.

# Konfiguration Ihrer CDK Toolkit-Instanz
<a name="toolkit-library-configure"></a>

Erfahren Sie, wie Sie Ihre AWS CDK Toolkit-Bibliotheksinstanz mit Optionen für Nachrichtenverarbeitung, AWS Profilauswahl und Strategien zur Stapelauswahl anpassen können. In diesem Handbuch werden die verfügbaren Konfigurationsoptionen erläutert und erklärt, wie Sie diese effektiv implementieren können, um Ihre spezifischen Bereitstellungsanforderungen zu erfüllen.

## Konfiguration Ihres AWS Profils
<a name="toolkit-library-configure-profile"></a>

Wenn Sie die CDK Toolkit-Bibliothek verwenden, werden API-Aufrufe zur AWS Verwendung des SDK ausgeführt. Die Authentifizierung wird zwar automatisch aus Ihrer Umgebung geladen, Sie können jedoch explizit angeben, welches Profil verwendet werden soll:

```
import { Toolkit } from '@aws-cdk/toolkit-lib';

// Create a toolkit instance with a specific AWS profile
const toolkit = new Toolkit({
  sdkConfig: { profile: "my-profile" },
});
```

## Konfiguration der Stack-Auswahl
<a name="toolkit-library-configure-stacks"></a>

Bei den meisten CDK Toolkit-Aktionen müssen Sie angeben, mit welchen Stacks gearbeitet werden soll. Die ` [StackSelector](https://docs.aws.amazon.com/cdk/api/toolkit-lib/Package/toolkit-lib/Interface/StackSelector/) ` Konfiguration steuert diese Auswahl.

### Wählt alle Stapel aus
<a name="toolkit-library-configure-stacks-all"></a>

Verwenden Sie dies, wenn Sie mit jedem Stack in Ihrer CDK-App arbeiten möchten:

```
import { StackSelectionStrategy } from '@aws-cdk/toolkit-lib';

// Select all stacks in the cloud assembly
await toolkit.deploy(cloudAssemblySource, {
  stacks: {
    strategy: StackSelectionStrategy.ALL_STACKS
  }
});
```

### Wählen Sie nur Hauptbaugruppenstapel aus
<a name="toolkit-library-configure-stacks-main"></a>

Verwenden Sie diese Option, um nur die Stapel der obersten Ebene aus der Hauptbaugruppe auszuwählen:

```
// Select only top-level stacks
await toolkit.deploy(cloudAssemblySource, {
  stacks: {
    strategy: StackSelectionStrategy.MAIN_ASSEMBLY
  }
});
```

### Wählen Sie einen einzelnen Stapel
<a name="toolkit-library-configure-stacks-single"></a>

Verwenden Sie dies, wenn Ihre Assembly genau einen Stapel enthält und Sie diese Bedingung bestätigen möchten. Wenn die Assembly einen einzelnen Stapel enthält, gibt sie diesen Stapel zurück. Andernfalls wird eine Ausnahme ausgelöst:

```
// Ensure there's exactly one stack and select it
await toolkit.deploy(cloudAssemblySource, {
  stacks: {
    strategy: StackSelectionStrategy.ONLY_SINGLE
  }
});
```

### Wählen Sie Stapel nach Muster aus
<a name="toolkit-library-configure-stacks-pattern"></a>

Verwenden Sie diese Option, um bestimmte Stapel anhand des Namensmusters auszuwählen:

```
// Select stacks matching specific patterns
await toolkit.deploy(cloudAssemblySource, {
  stacks: {
    strategy: StackSelectionStrategy.PATTERN_MUST_MATCH,
    patterns: ["Dev-*", "Test-Backend"],  // Supports wildcards
  }
});
```

**Tipp**  
Verwenden Sie diese Option`PATTERN_MUST_MATCH_SINGLE`, um sicherzustellen, dass genau ein Stapel Ihren Mustern entspricht, oder `PATTERN_MATCH` wenn es akzeptabel ist, dass keine Stapel übereinstimmen. Der Musterabgleich unterstützt Platzhalter wie „\*“, um mehrere Stapel mit ähnlichen Namen abzugleichen.

## Konfiguration der Fehlerbehandlung
<a name="toolkit-library-configure-errors"></a>

Das CDK Toolkit verwendet strukturierte Fehler, um Sie bei der Identifizierung und Behandlung von Problemen zu unterstützen. Jeder Fehler beinhaltet:
+ Eine **Quelle**, die angibt, woher der Fehler stammt (Toolkit oder Benutzer).
+ Ein bestimmter **Fehlertyp** (Authentifizierung, Validierung usw.).
+ Eine beschreibende **Nachricht**.

### Fehlerbehandlung
<a name="toolkit-library-configure-errors-how"></a>

Verwenden Sie die vom CDK Toolkit bereitgestellten Hilfsmethoden, um bestimmte Fehlertypen zu erkennen und zu behandeln:

```
import { ToolkitError } from '@aws-cdk/toolkit-lib';

try {
  // Attempt a CDK Toolkit operation
  await toolkit.deploy(cloudAssemblySource, {
    stacks: { strategy: StackSelectionStrategy.ALL_STACKS }
  });

} catch (error) {
  // Handle specific error types
  if (ToolkitError.isAuthenticationError(error)) {
    // Example: AWS credentials are missing or invalid
    console.error('Authentication failed. Check your AWS credentials.');

  } else if (ToolkitError.isAssemblyError(error)) {
    // Example: Your CDK app has errors in stack definitions
    console.error('CDK app error:', error.message);

  } else if (ToolkitError.isDeploymentError(error)) {
    // Example: CloudFormation deployment failed
    console.error('Deployment failed:', error.message);

  } else if (ToolkitError.isToolkitError(error)) {
    // Handle all other Toolkit errors
    console.error('CDK Toolkit error:', error.message);

  } else {
    // Handle unexpected errors
    console.error('Unexpected error:', error);
  }
}
```

**Wichtig**  
Verlassen Sie sich nicht darauf, `instanceof` nach Fehlertypen zu suchen, da diese sich unerwartet verhalten können, wenn Sie mit mehreren Kopien desselben Pakets arbeiten. Verwenden Sie immer die bereitgestellten Hilfsmethoden wie`ToolkitError.isAuthenticationError()`.

## Toolkit-Aktionen konfigurieren
<a name="toolkit-library-configure-actions"></a>

Jede CDK Toolkit-Aktion (Deploy, Synth, List usw.) hat ihre eigenen spezifischen Konfigurationsoptionen. Mit diesen Aktionen können Sie den gesamten Lebenszyklus Ihrer CDK-Infrastruktur verwalten. Ausführliche Informationen zur Konfiguration einzelner Aktionen finden [Sie unter Programmatische Aktionen des CDK Toolkit konfigurieren](toolkit-library-actions.md).

**Tipp**  
Erwägen Sie beim Erstellen von Automatisierungs-Workflows, mehrere Aktionen nacheinander zu kombinieren. Beispielsweise möchten Sie möglicherweise anhand `synth` Ihrer App anhand `list` der Stacks überprüfen, was bereitgestellt wird, und anschließend `deploy` die Infrastruktur.