

Amazon CodeCatalyst ist nicht mehr offen für Neukunden. Bestandskunden können den Service weiterhin wie gewohnt nutzen. Weitere Informationen finden Sie unter [Wie migriert man von CodeCatalyst](migration.md).

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
<a name="custom-bp-concepts"></a>

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

**Topics**
+ [Blueprint-Projekt](#blueprint-project-concept)
+ [Baupläne für den Weltraum](#space-blueprints-concept)
+ [Katalog der Weltraum-Blueprints](#blueprint-catalog-concept)
+ [Synthese](#synthesis-concept)
+ [Resynthese](#resynthesis-concept)
+ [Teilweise Optionen](#partial-options-concept)
+ [Projen](#projen-concept)

## Blueprint-Projekt
<a name="blueprint-project-concept"></a>

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
<a name="space-blueprints-concept"></a>

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](view-bp.md).

## Katalog der Weltraum-Blueprints
<a name="blueprint-catalog-concept"></a>

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 BlueprintsErstellung eines umfassenden Projekts mit Blueprints](project-blueprints.md).

## Synthese
<a name="synthesis-concept"></a>

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-Bereitstellungsoperationen 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 ein Projekt in erstellen zu 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](#partial-options-concept), die Sie möglicherweise konfiguriert haben.

## Resynthese
<a name="resynthesis-concept"></a>

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, in 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](#partial-options-concept), 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](merge-strategies-lm.md#three-way-merge-lm)

## Teilweise Optionen
<a name="partial-options-concept"></a>

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:**

`Options`Schnittstelle:

```
{
  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
<a name="projen-concept"></a>

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ühren`yarn 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 ](https://github.com/projen/projen) Weitere Informationen zur Arbeit mit Projen finden Sie in der Dokumentation zu [Projen](http://projen.io/).