AWS CDK-Versionierung - AWS Cloud Development Kit (AWS CDK) v2

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.

AWS CDK-Versionierung

Dieses Thema enthält Referenzinformationen darüber, wie das AWS Cloud Development Kit (AWS CDK) mit der Versionierung umgeht.

Versionsnummern bestehen aus drei numerischen Versionsteilen: Hauptversion. geringfügig. patchen und sich strikt an das semantische Versionierungsmodell halten. Das bedeutet, dass grundlegende Änderungen an Stable auf Hauptversionen beschränkt APIs sind.

Neben- und Patch-Versionen sind abwärtskompatibel. Der in einer früheren Version mit derselben Hauptversion geschriebene Code kann innerhalb derselben Hauptversion auf eine neuere Version aktualisiert werden. Es wird auch weiterhin gebaut und ausgeführt, wobei dieselbe Ausgabe erzeugt wird.

AWS CDK-CLI-Kompatibilität

Jede Version der AWS CDK-Hauptbibliothek (aws-cdk-lib) ist mit der AWS CDK-CLI (aws-cdk-cli) -Version kompatibel, die zum Zeitpunkt der Veröffentlichung der CDK-Bibliothek aktuell war. Es ist auch mit jeder neueren Version der CDK-CLI kompatibel. Jede Version der CDK-Bibliothek behält diese Kompatibilität bis zum Ende der Lebensdauer der Bibliothek bei. Solange Sie eine unterstützte CDK-Bibliotheksversion verwenden, ist es daher immer sicher, Ihre CDK-CLI-Version zu aktualisieren.

Jede Version der CDK-Bibliothek kann auch mit CDK-CLI-Versionen funktionieren, die älter sind als die Version, die zum Zeitpunkt der Veröffentlichung der CDK-Bibliothek aktuell war. Dies ist jedoch nicht garantiert. Die Kompatibilität hängt von der Cloud-Assembly-Schemaversion der CDK-Bibliothek ab. Das AWS CDK generiert während der Synthese eine Cloud-Assembly und die CDK-CLI verwendet sie für die Bereitstellung. Das Schema, das das Format der Cloud-Assembly definiert, ist streng spezifiziert und versioniert. Daher müsste eine ältere Version der CDK-CLI die Cloud-Assembly-Schemaversion der CDK-Bibliothek unterstützen, damit sie kompatibel ist.

Wenn die von der CDK-Bibliothek benötigte Cloud-Assembly-Version nicht mit der von der CDK-CLI unterstützten Version kompatibel ist, erhalten Sie eine Fehlermeldung wie die folgende:

Cloud assembly schema version mismatch: Maximum schema version supported is 3.0.0, but found 4.0.0. Please upgrade your CLI in order to interact with this app.

Um diesen Fehler zu beheben, aktualisieren Sie die CDK-CLI auf eine Version, die mit der erforderlichen Cloud-Assembly-Version kompatibel ist, oder auf die neueste verfügbare Version. Die Alternative (Herabstufung der von Ihrer App verwendeten Module der Construct-Bibliothek) wird im Allgemeinen nicht empfohlen.

Anmerkung

Weitere Informationen zu den genauen Kombinationen von Versionen, die zusammenarbeiten, finden Sie in der Kompatibilitätstabelle im aws-cdk-cli GitHub Repository.

AWS Versionsverwaltung der Construct-Bibliothek

Die Module in der AWS Construct Library durchlaufen bei ihrer Entwicklung vom Konzept bis zur ausgereiften API verschiedene Phasen. Verschiedene Phasen bieten unterschiedliche Grade an API-Stabilität in nachfolgenden Versionen des AWS CDK.

APIs in der AWS CDK-Hauptbibliothek sind sie stabil und die Bibliothek ist vollständig semantisch versioniert. aws-cdk-lib Dieses Paket enthält AWS CloudFormation (L1) -Konstrukte für alle AWS Dienste und alle stabilen Module auf höherer Ebene (L2 und L3). (Es enthält auch die CDK-Kernklassen wie und). App Stack APIs werden erst mit der nächsten Hauptversion des CDK aus diesem Paket entfernt (obwohl sie möglicherweise veraltet sind). Keine einzelne API wird jemals grundlegende Änderungen haben. Wenn eine grundlegende Änderung erforderlich ist, wird eine völlig neue API hinzugefügt.

Neue APIs Dienste, die sich in der Entwicklung aws-cdk-lib befinden, werden anhand eines Beta<N> Suffixes identifiziert, das bei 1 N beginnt und bei jeder grundlegenden Änderung an der neuen API erhöht wird. Beta<N> APIs werden nie entfernt, sondern nur veraltet, sodass Ihre bestehende App weiterhin mit neueren Versionen von funktioniert. aws-cdk-lib Wenn die API als stabil eingestuft wird, wird eine neue API ohne das Beta<N> Suffix hinzugefügt.

Wenn mit der Entwicklung einer höheren Ebene (L2 oder L3) für einen AWS Dienst APIs begonnen wird, für den zuvor nur L1 verfügbar war APIs, APIs werden diese zunächst in einem separaten Paket verteilt. Der Name eines solchen Pakets hat das Suffix „Alpha“, und seine Version entspricht der ersten Version, mit der aws-cdk-lib es kompatibel ist, mit einer Unterversion. alpha Wenn das Modul die vorgesehenen Anwendungsfälle unterstützt, APIs werden diese hinzugefügt. aws-cdk-lib

Stabilität der Sprachbindung

Im Laufe der Zeit könnten wir das AWS CDK um Unterstützung für weitere Programmiersprachen erweitern. Obwohl die in allen Sprachen beschriebene API dieselbe ist, variiert die Art und Weise, wie die API ausgedrückt wird, je nach Sprache und kann sich ändern, wenn sich die Sprachunterstützung weiterentwickelt. Aus diesem Grund gelten Sprachbindungen eine Zeit lang als experimentell, bis sie als produktionsbereit gelten.

Sprache Stabilität

TypeScript

Stabil

JavaScript

Stabil

Python

Stabil

Java

Stabil

C#/.NET

Stabil

Go

Stabil