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.
Erstellen Sie eine Konfiguration für die Vorlagensynchronisierung
Erfahren Sie, wie Sie eine Vorlagen-Synchronisierungskonfiguration mit erstellen AWS Proton.
Voraussetzungen für die Synchronisation einer Vorlage erstellen:
-
Sie haben ein Repository mit verknüpft AWS Proton.
-
Ein Vorlagenpaket befindet sich in Ihrem Repository.
Der Repository-Link besteht aus folgenden Elementen:
-
Eine CodeConnections Verbindung, die dir AWS Proton erlaubt, auf dein Repository zuzugreifen und dessen Benachrichtigungen zu abonnieren.
-
Eine mit einem Dienst verknüpfte Rolle. Wenn Sie Ihr Repository verknüpfen, wird die mit dem Service verknüpfte Rolle für Sie erstellt.
Bevor Sie Ihre erste Konfiguration für die Vorlagensynchronisierung erstellen, übertragen Sie ein Vorlagenpaket in Ihr Repository, wie im folgenden Verzeichnislayout dargestellt.
/templates/ # subdirectory (optional) /templates/my-env-template/ # template name /templates/my-env-template/v1/ # template version /templates/my-env-template/v1/infrastructure/ # template bundle /templates/my-env-template/v1/schema/
Nachdem Sie Ihre erste Konfiguration für die Vorlagensynchronisierung erstellt haben, werden neue Vorlagenversionen automatisch erstellt, wenn Sie einen Commit pushen, der ein aktualisiertes Vorlagenpaket unter einer neuen Version hinzufügt (z. B. unter/my-env-template/v2/
).
/templates/ # subdirectory (optional) /templates/my-env-template/ # template name /templates/my-env-template/v1/ # template version /templates/my-env-template/v1/infrastructure/ # template bundle /templates/my-env-template/v1/schema/ /templates/my-env-template/v2/ /templates/my-env-template/v2/infrastructure/ /templates/my-env-template/v2/schema/
Sie können neue Template-Bundle-Versionen für eine oder mehrere synchronisierte Vorlagen in einen einzigen Commit aufnehmen. AWS Proton erstellt eine neue Vorlagenversion für jede neue Version des Vorlagenpakets, die im Commit enthalten war.
Nachdem Sie die Konfiguration für die Vorlagensynchronisierung erstellt haben, können Sie immer noch manuell neue Versionen der Vorlage in der Konsole oder mit der erstellen, AWS CLI indem Sie Vorlagenpakete aus einem S3-Bucket hochladen. Die Vorlagensynchronisierung funktioniert nur in eine Richtung: von Ihrem Repository zu. AWS Proton Manuell erstellte Vorlagenversionen werden nicht synchronisiert.
Nachdem Sie eine Konfiguration für die Vorlagensynchronisierung eingerichtet haben AWS Proton , wartet auf Änderungen an Ihrem Repository. Immer wenn eine Änderung übertragen wird, wird nach einem Verzeichnis gesucht, das denselben Namen wie Ihre Vorlage hat. Es sucht dann in diesem Verzeichnis nach Verzeichnissen, die wie Hauptversionen aussehen. AWS Proton registriert das Vorlagenpaket für die entsprechende Hauptversion der Vorlage. Die neuen Versionen befinden sich immer im DRAFT
Status. Sie können die neuen Versionen mit der Konsole oder veröffentlichen AWS CLI.
Nehmen wir zum Beispiel an, Sie haben eine Vorlage, die aufgerufen wird und my-env-template
so konfiguriert ist, dass sie von main
einem Zweig aus my-repo/templates
synchronisiert wird, mit dem folgenden Layout.
/code /code/service.go README.md /templates/ /templates/my-env-template/ /templates/my-env-template/v1/ /templates/my-env-template/v1/infrastructure/ /templates/my-env-template/v1/schema/ /templates/my-env-template/v2/ /templates/my-env-template/v2/infrastructure/ /templates/my-env-template/v2/schema/
AWS Proton synchronisiert den Inhalt von /templates/my-env-template/v1/
to my-env-template:1
und den Inhalt von /templates/my-env-template/v2/
tomy-env-template:2
. Falls sie noch nicht existieren, werden diese Hauptversionen erstellt.
AWS Proton hat das erste Verzeichnis gefunden, das dem Vorlagennamen entsprach. Sie können die AWS Proton Suche nach Verzeichnissen einschränken, indem Sie subdirectoryPath
beim Erstellen oder Bearbeiten einer Vorlagensynchronisierungskonfiguration eine angeben. Sie können beispielsweise /production-templates/
für angebensubdirectoryPath
.
Sie können mit der Konsole oder der CLI eine Vorlagensynchronisierungskonfiguration erstellen.
Synchronisieren von Dienstvorlagen
Die vorherigen Beispiele zeigen, wie Sie Umgebungsvorlagen synchronisieren können. Dienstvorlagen sind ähnlich. Um Dienstvorlagen zu synchronisieren, fügen Sie jedem Hauptversionsverzeichnis in Ihrem Vorlagenpaket eine zusätzliche Datei mit dem Namen .template-registration.yaml
hinzu. Diese Datei enthält zusätzliche Details, die AWS Proton benötigt werden, wenn sie nach einem Commit eine Service-Vorlagenversion für Sie erstellt. Wenn Sie mithilfe der AWS Proton Konsole oder API explizit eine Service-Vorlagenversion erstellen, geben Sie diese Details als Eingaben an, und diese Datei ersetzt diese Eingaben für die Vorlagensynchronisierung.
./templates/ # subdirectory (optional) /templates/my-svc-template/ # service template name /templates/my-svc-template/v1/ # service template version /templates/my-svc-template/v1/.template-registration.yaml # service template version properties /templates/my-svc-template/v1/instance_infrastructure/ # template bundle /templates/my-svc-template/v1/schema/
Die .template-registration.yaml
Datei enthält die folgenden Details:
-
Kompatible Umgebungen [erforderlich] — Umgebungen, die auf diesen Umgebungsvorlagen und Hauptversionen basieren, sind mit Diensten kompatibel, die auf dieser Dienstvorlagenversion basieren.
-
Unterstützte Komponentenquellen [optional] — Komponenten, die diese Quellen verwenden, sind mit Diensten kompatibel, die auf dieser Dienstvorlagenversion basieren. Wenn nicht angegeben, können Komponenten nicht an diese Dienste angehängt werden. Weitere Informationen zu Komponenten finden Sie unterAWS Proton-Komponenten.
Die YAML-Syntax der Datei lautet wie folgt:
compatible_environments: -
env-templ-name
:major-version
- ... supported_component_sources: - DIRECTLY_DEFINED
Geben Sie eine oder mehrere Kombinationen aus Umgebungsvorlage und Hauptversion an. Die Angabe supported_component_sources
ist optional und der einzige unterstützte Wert istDIRECTLY_DEFINED
.
Beispiel .template-registration.yaml
In diesem Beispiel ist die Version der Dienstvorlage mit den Hauptversionen 1 und 2 der Umgebungsvorlage kompatibel. my-env-template
Sie ist auch mit den Hauptversionen 1 und 3 der another-env-template
Umgebungsvorlage kompatibel. In der Datei ist nichts angegebensupported_component_sources
, sodass Komponenten nicht an Dienste angehängt werden können, die auf dieser Version der Dienstvorlage basieren.
compatible_environments: - my-env-template:1 - my-env-template:2 - another-env-template:1 - another-env-template:3
Anmerkung
Zuvor wurde eine andere Datei zur Angabe kompatibler Umgebungen AWS Proton definiert. .compatible-envs
AWS Proton unterstützt diese Datei und ihr Format aus Gründen der Abwärtskompatibilität weiterhin. Wir empfehlen, es nicht mehr zu verwenden, da es nicht erweiterbar ist und neuere Funktionen wie Komponenten nicht unterstützt.