Maßgeschneiderte Blueprint-Konzepte - Amazon CodeCatalyst

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.

Maßgeschneiderte Blueprint-Konzepte

Im Folgenden finden Sie einige Konzepte und Begriffe, die Sie kennen sollten, wenn Sie mit benutzerdefinierten Blueprints in arbeiten. CodeCatalyst

Blueprint-Projekt

Ein Blueprint-Projekt gibt Ihnen die Möglichkeit, Blueprints zu entwickeln und in Ihrem Bereich zu veröffentlichen. Ein Quell-Repository wird während der Projekterstellung erstellt, und der Name des Repositorys ist der, den Sie bei der Eingabe der Projektressourcendetails gewählt haben. Wenn Sie sich während des Blueprint-Erstellungsprozesses dafür entscheiden, eine Workflow-Version zu generieren, wird in Ihrem Blueprint mit dem Blueprint Builder-Blueprint ein Veröffentlichungsworkflow erstellt. Der Workflow veröffentlicht automatisch Ihre neueste Version.

Baupläne für den Weltraum

Sie können alle Blueprints in der Tabelle Space-Blueprints anzeigen und verwalten, wenn Sie in Ihrem Space zum Bereich Blueprints navigieren. Nachdem Blueprints in deinem Space veröffentlicht wurden, werden sie als Space-Blueprints zur Verfügung gestellt, sodass sie dem Blueprints-Katalog deines Spaces hinzugefügt und daraus entfernt werden können. Im Bereich Blueprints in deinem Space kannst du auch Veröffentlichungsberechtigungen verwalten und Blueprints löschen. Weitere Informationen finden Sie unter Details, Versionen und Projekte eines benutzerdefinierten Blueprints anzeigen.

Katalog der Weltraum-Blueprints

Sie können alle hinzugefügten benutzerdefinierten Blueprints aus dem Blueprints-Katalog eines Spaces anzeigen. Hier kann ein Space-Mitglied Ihren benutzerdefinierten Blueprint auswählen, um ein neues Projekt zu erstellen. Dieser Katalog unterscheidet sich vom CodeCatalyst Katalog, in dem bereits Blueprints für alle Space-Mitglieder verfügbar sind. Weitere Informationen finden Sie unter Erstellung eines umfassenden Projekts mit CodeCatalyst Blueprints.

Synthese

Synthese ist der Prozess der Generierung eines CodeCatalyst Projektpakets, das den Quellcode, die Konfiguration und die Ressourcen in einem Projekt darstellt. Das Paket wird dann von CodeCatalyst API Bereitstellungsvorgängen zur Bereitstellung in einem Projekt verwendet. Der Prozess kann während der Entwicklung Ihres benutzerdefinierten Blueprints lokal ausgeführt werden, um die Projekterstellung zu emulieren, ohne dass Sie ein Projekt in erstellen müssen. CodeCatalyst Die folgenden Befehle können verwendet werden, um die Synthese durchzuführen:

yarn blueprint:synth # fast mode yarn blueprint:synth --cache # wizard emulation mode

Der Blueprint beginnt von selbst, indem er die blueprint.ts Hauptklasse aufruft, in der die Option zusammengeführt ist. defaults.json Unter dem synth/synth.[options-name]/proposed-bundle/ Ordner wird ein neues Projektpaket generiert. Die Ausgabe enthält das Projektpaket, das ein benutzerdefinierter Blueprint anhand der von Ihnen festgelegten Optionen generiert, einschließlich der Teiloptionen, die Sie möglicherweise konfiguriert haben.

Resynthese

Resynthese ist der Prozess der Neugenerierung eines Blueprints mit verschiedenen Blueprint-Optionen oder Blueprint-Versionen vorhandener Projekte. Als Blueprint-Autor können Sie im benutzerdefinierten Blueprint-Code benutzerdefinierte Zusammenführungsstrategien definieren. Sie können auch Eigentumsgrenzen definieren, .ownership-file um anzugeben, in welchen Teilen der Codebasis ein Blueprint aktualisiert werden darf. Der benutzerdefinierte Blueprint kann zwar Aktualisierungen für vorschlagen, aber Projektentwickler.ownership-file, die den benutzerdefinierten Blueprint verwenden, können die Eigentumsgrenzen für ihre Projekte festlegen. Sie können Resynthesis lokal ausführen und testen und aktualisieren, bevor Sie Ihren benutzerdefinierten Blueprint veröffentlichen. Verwenden Sie die folgenden Befehle, um die Resynthese durchzuführen:

yarn blueprint:resynth # fast mode yarn blueprint:resynth --cache # wizard emulation mode

Der Blueprint beginnt von selbst, indem er die blueprint.ts Hauptklasse aufruft, bei der die Option zusammengeführt ist. defaults.json Unter dem synth/resynth.[options-name]/ Ordner wird ein neues Projektpaket generiert. Die Ausgabe enthält das Projektpaket, das ein benutzerdefinierter Blueprint anhand der von Ihnen festgelegten Optionen generiert, einschließlich der Teiloptionen, die Sie möglicherweise konfiguriert haben.

Die folgenden Inhalte werden nach den Synthese- und Resynthesevorgängen erstellt:

  • proposed-bundle — Die Ausgabe der Synthese, wenn sie mit neuen Optionen für die Ziel-Blueprint-Version ausgeführt wird.

  • existing-bundle — Ein Modell Ihres bestehenden Projekts. Wenn sich in diesem Ordner nichts befindet, wird er mit derselben Ausgabe generiert wie er. proposed-bundle

  • ancestor-bundle — Ein Modell dessen, was Ihr Blueprint generieren würde, wenn er entweder mit einer früheren Version, früheren Optionen oder einer Kombination ausgeführt würde. Wenn sich in diesem Ordner nichts befindet, wird er mit derselben Ausgabe generiert wie der. proposed-bundle

  • resolved-bundle — Das Bundle wird immer neu generiert und verwendet standardmäßig eine Drei-Wege-Zusammenführung zwischen, und dem. proposed-bundle existing-bundle ancestor-bundle Dieses Bundle bietet eine Emulation dessen, was eine Resynthese lokal ausgeben würde.

Weitere Informationen zu Blueprint-Ausgabepaketen finden Sie unter. Generieren von Dateien mit Resynthese

Teilweise Optionen

Sie können Optionsvarianten darunter hinzufügen, ohne src/wizard-configuration/ dass die gesamte Options Oberfläche aufgezählt werden muss, und die Optionen werden über der Datei zusammengeführt. defaults.json Auf diese Weise können Sie Testfälle an bestimmte Optionen anpassen.

Beispiel:

OptionsSchnittstelle:

{ language: "Python" | "Java" | "Typescript", repositoryName: string ... }

defaults.json-Datei:

{ language: "Python", repositoryName: "Myrepo" ... }

Zusätzliche Konfigurationstests:

  • #wizard-config-typescript-test.json { language: "Typescript", }
  • #wizard-config-java-test.json { language: "Java", }

Projen

Projen ist ein Open-Source-Tool, mit dem benutzerdefinierte Blueprints auf dem neuesten Stand und konsistent bleiben. Blueprints werden als Projen-Pakete geliefert, da dieses Framework Ihnen die Möglichkeit bietet, Projekte zu erstellen, zu bündeln und zu veröffentlichen, und Sie können die Benutzeroberfläche verwenden, um die Konfigurationen und Einstellungen eines Projekts zu verwalten.

Sie können Projen verwenden, um Blueprints in großem Umfang zu aktualisieren, auch nachdem sie erstellt wurden. Das Projen-Tool ist die zugrundeliegende Technologie hinter der Blueprint-Synthese, die ein Projektpaket generiert. Projen besitzt die Konfiguration für ein Projekt, und das sollte Sie als Blueprint-Autor nicht beeinflussen. Sie können ausführenyarn projen, um die Konfiguration Ihres Projekts nach dem Hinzufügen von Abhängigkeiten neu zu generieren, oder Sie können Optionen in der Datei ändern. projenrc.ts Projen ist auch das zugrunde liegende Generierungstool für benutzerdefinierte Blueprints zur Synthese eines Projekts. Weitere Informationen finden Sie auf der Projen-Seite. GitHub Weitere Informationen zur Arbeit mit Projen finden Sie in der Dokumentation zu Projen.