

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.

# Optimieren Sie die Entwicklung und Bereitstellung von Amazon Lex Lex-Bot mithilfe eines automatisierten Workflows
<a name="streamline-amazon-lex-bot-development-and-deployment-using-an-automated-workflow"></a>

*Balaji Panneerselvam, Attila Dancso, Pavan Dusanapudi, Anand Jumnani und James O'Hara, Amazon Web Services*

## Zusammenfassung
<a name="streamline-amazon-lex-bot-development-and-deployment-using-an-automated-workflow-summary"></a>

Die Entwicklung und Bereitstellung von Amazon Lex Conversational Bots kann eine Herausforderung sein, wenn Sie versuchen, mehrere Funktionen, Entwickler und Umgebungen zu verwalten. Ein automatisierter Arbeitsablauf, der die Prinzipien von Infrastructure as Code (IaC) verwendet, kann dazu beitragen, den Prozess zu rationalisieren. Dieses Muster kann dazu beitragen, die Produktivität der Amazon Lex-Entwickler zu verbessern und ein effizientes Bot-Lebenszyklusmanagement auf folgende Weise zu ermöglichen:
+ **Ermöglichen Sie die gleichzeitige Entwicklung mehrerer Funktionen** — Mit einem automatisierten Workflow können Entwickler in separaten Zweigen parallel an verschiedenen Funktionen arbeiten. Änderungen können dann zusammengeführt und bereitgestellt werden, ohne dass andere Arbeiten blockiert werden.
+ **Verwenden Sie die Benutzeroberfläche der Amazon Lex-Konsole** — Entwickler können die benutzerfreundliche Amazon Lex-Konsole verwenden, um Bots zu erstellen und zu testen. Die Bots werden dann im Infrastrukturcode für die Bereitstellung beschrieben.
+ **Werbung für Bots in allen Umgebungen** — Der Workflow automatisiert das Bewerben von Bot-Versionen aus niedrigeren Umgebungen wie Entwicklung und Test bis hin zur Produktion. Dieser Ansatz reduziert das Risiko und den Aufwand manueller Werbeaktionen.
+ **Behalten Sie die Versionskontrolle** bei — Die Verwaltung von Bot-Definitionen in Git statt ausschließlich über den Amazon Lex Lex-Service bietet Ihnen Versionskontrolle und einen Audit-Trail. Änderungen werden bis zu den einzelnen Entwicklern zurückverfolgt, anders als wenn nur die AWS-Managementkonsole oder APIs zur Änderung der darin gespeicherten Bots verwendet werden AWS. 

Durch die Automatisierung des Amazon Lex Lex-Bot-Release-Prozesses können Teams Funktionen schneller und mit geringerem Risiko und geringerem Aufwand bereitstellen. Bots unterliegen weiterhin der Versionskontrolle und sind nicht isoliert in der Amazon Lex Lex-Konsole. 

## Voraussetzungen und Einschränkungen
<a name="streamline-amazon-lex-bot-development-and-deployment-using-an-automated-workflow-prereqs"></a>

**Voraussetzungen**
+ Der Workflow umfasst mehrere AWS-Konten für verschiedene Umgebungen (Entwicklung, Produktion und DevOps), was Kontoverwaltung und kontenübergreifende Zugriffskonfigurationen erfordert.
+ Python 3.9 ist in Ihrer Bereitstellungsumgebung oder Pipeline verfügbar.
+ Git [wurde auf einer lokalen Workstation für die Quellcodeverwaltung installiert](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) und konfiguriert.
+ AWS Command Line Interface (AWS CLI) [installiert](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html) und konfiguriert, um sich über die Befehlszeile oder Python zu authentifizieren.

**Einschränkungen**
+ **Zugriff auf das Repository** — Der Workflow geht davon aus, dass die CI/CD-Pipeline (Continuous Integration and Continuous Delivery) über die erforderlichen Berechtigungen verfügt, um Änderungen an das Quellcode-Repository zu übertragen. 
+ **Erste Bot-Version** — Das Tooling erfordert, dass eine erste Version des Bots mithilfe von Vorlagen bereitgestellt wird. AWS CloudFormation Sie müssen die erste Iteration des Bots erstellen und sie in das Repository übernehmen, bevor der automatisierte Workflow die Kontrolle übernehmen kann.
+ **Zusammenführungskonflikte** — Obwohl der Workflow darauf abzielt, die gleichzeitige Entwicklung zu ermöglichen, besteht immer noch die Möglichkeit von Zusammenführungskonflikten, wenn Änderungen aus verschiedenen Branchen integriert werden. Die Lösung von Konflikten in Bot-Konfigurationen erfordert möglicherweise manuelles Eingreifen.

**Produktversionen**
+ [Python 3.9](https://www.python.org/downloads/) oder höher
+ [AWS CDK v2 2.124.0 oder höher](https://docs.aws.amazon.com/cdk/api/versions.html)
+ [AWS SDK für Python (Boto3)](https://docs.aws.amazon.com/pythonsdk/)1.28 oder höher

## Architektur
<a name="streamline-amazon-lex-bot-development-and-deployment-using-an-automated-workflow-architecture"></a>

Das folgende Diagramm zeigt die allgemeine Architektur und die wichtigsten Komponenten der Lösung.

![\[Workflow zur Automatisierung der Entwicklung und Bereitstellung von Amazon Lex Lex-Bots.\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/images/pattern-img/3c7f9d16-9708-43c4-afa6-9d804d6b9dad/images/cdc73e82-a777-4e88-8bf8-a73c9bacb47f.png)


Zu den wichtigsten Komponenten gehören:
+ **Lex-Bot-Repo** — Ein Git-Repository, das die IaC-Definitionen für die Amazon Lex-Bots speichert.
+ **DevOps**— Ein, das sich der Unterbringung der CI/CD Pipelines und der zugehörigen Ressourcen für den Entwicklungs- und Bereitstellungsprozess AWS-Konto widmet.
+ **Pipelines** — Die AWS CodePipeline Instanzen, die verschiedene Phasen des Bot-Entwicklungs- und Bereitstellungszyklus automatisieren, z. B. das Erstellen eines neuen Bots, das Exportieren einer Bot-Definition, das Importieren einer Bot-Definition und das Löschen eines Bots.
+ **Ticket-Bots und Haupt-Bot** — Die Amazon Lex Lex-Bot-Ressourcen, wobei es sich bei den Ticket-Bots um funktionsspezifische Bots handelt, die von einzelnen Teams oder Entwicklern entwickelt wurden, und der Haupt-Bot der Basis-Bot ist, der alle Funktionen integriert.

Das Architekturdiagramm veranschaulicht den folgenden Arbeitsablauf:

1. **Baseline-Haupt-Bot** — Der Ausgangspunkt des Workflows besteht darin, den Haupt-Bot in der Entwicklungsumgebung (Dev) als Basis zu betrachten. Der Haupt-Bot dient als Grundlage für future Entwicklungen und Funktionserweiterungen.

1. **Ticket-Bot erstellen** — Wenn eine neue Funktion oder Änderung erforderlich ist, wird ein Ticket-Bot erstellt. Der Ticket-Bot ist im Grunde eine Kopie oder ein Zweig des Haupt-Bots, an dem Entwickler arbeiten können, ohne die Hauptversion zu beeinträchtigen.

1. **Ticket-Bot exportieren** — Nachdem die Arbeit am Ticket-Bot abgeschlossen ist, wird er aus dem Amazon Lex Lex-Service exportiert. Dann wird der Zweig, der den Ticket-Bot enthält, vom Hauptzweig aus umbenannt. Dieser Schritt stellt sicher, dass alle Änderungen, die während der Entwicklung des Ticket-Bot am Haupt-Bot vorgenommen wurden, übernommen werden, wodurch potenzielle Konflikte reduziert werden.

1. **Bot für rebased Ticket importieren und validieren** — Der Bot für rebased Tickets wird zurück in die Entwicklungsumgebung importiert und validiert, um sicherzustellen, dass er mit den neuesten Änderungen aus dem Hauptzweig korrekt funktioniert. Wenn die Validierung erfolgreich ist, wird eine Pull-Anfrage (PR) erstellt, um die Ticket-Bot-Änderungen mit dem Hauptzweig zusammenzuführen.

1. **Ticket-Bot löschen** — Nachdem die Änderungen erfolgreich mit dem Hauptzweig zusammengeführt wurden, wird der Ticket-Bot nicht mehr benötigt. Der Ticket-Bot kann gelöscht werden, um die Umgebung sauber und überschaubar zu halten.

1. **Den Haupt-Bot in der Entwicklungsumgebung bereitstellen und testen** — Der aktualisierte Haupt-Bot, der jetzt die neuen Funktionen oder Änderungen enthält, wird in der Entwicklungsumgebung bereitgestellt. Hier wird er gründlichen Tests unterzogen, um sicherzustellen, dass alle Funktionen wie erwartet funktionieren.

1. **Stellen Sie den Haupt-Bot in der Produktionsumgebung** bereit — Nachdem die Tests in der Entwicklungsumgebung abgeschlossen und erfolgreich abgeschlossen sind, wird der Haupt-Bot in der Produktionsumgebung bereitgestellt. Dieser Schritt ist die letzte Phase des Workflows, in der die neuen Funktionen den Endbenutzern zur Verfügung stehen.

**Automatisierung und Skalierung**

Der automatisierte Workflow ermöglicht es Entwicklern, parallel an verschiedenen Funktionen zu arbeiten, jeweils in separaten Zweigen. Dies erleichtert die gleichzeitige Entwicklung, sodass Teams effektiv zusammenarbeiten und Funktionen schneller bereitstellen können. Da die Filialen voneinander isoliert sind, können Änderungen zusammengeführt und bereitgestellt werden, ohne dass andere laufende Arbeiten blockiert oder beeinträchtigt werden.

Der Workflow automatisiert die Bereitstellung und Vermarktung von Bot-Versionen in verschiedenen Umgebungen, z. B. in der Entwicklung, beim Testen und bei der Produktion.

Das Speichern von Bot-Definitionen in einem Versionskontrollsystem wie Git bietet einen umfassenden Prüfpfad und ermöglicht eine effiziente Zusammenarbeit. Änderungen werden bis zu den einzelnen Entwicklern nachverfolgt, wodurch Transparenz und Rechenschaftspflicht während des gesamten Entwicklungszyklus gewährleistet sind. Dieser Ansatz erleichtert auch Code-Reviews, sodass Teams Probleme erkennen und beheben können, bevor sie in der Produktion eingesetzt werden.

Durch die Verwendung AWS CodePipeline und andere Funktionen kann der automatisierte Workflow skaliert werden AWS-Services, um der steigenden Arbeitsbelastung und Teamgröße gerecht zu werden.

## Tools
<a name="streamline-amazon-lex-bot-development-and-deployment-using-an-automated-workflow-tools"></a>

**AWS-Services**
+ [AWS Cloud Development Kit (AWS CDK)](https://docs.aws.amazon.com/cdk/v2/guide/home.html)ist ein Open-Source-Framework für die Softwareentwicklung zur Definition von AWS Cloud Infrastruktur im Code unter Verwendung vertrauter Programmiersprachen und deren Bereitstellung. CloudFormation Die Beispielimplementierung in diesem Muster verwendet Python.
+ [AWS CDK Befehlszeilenschnittstelle (AWS CDK CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) — Das AWS CDK Toolkit ist das wichtigste Tool für die Interaktion mit Ihrer AWS CDK App. Es führt Ihre App aus, fragt das von Ihnen definierte Anwendungsmodell ab und erstellt und stellt die vom CDK generierten CloudFormation Vorlagen bereit.
+ [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)hilft Ihnen dabei, AWS Ressourcen einzurichten, sie schnell und konsistent bereitzustellen und sie während ihres gesamten Lebenszyklus über und zu verwalten. AWS-Konten AWS-Regionen Dieses Muster wird CloudFormation für die Bereitstellung der Amazon Lex Lex-Bot-Konfigurationen und verwandter Ressourcen unter Verwendung von Infrastruktur als Code verwendet.
+ [AWS CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html)ist ein vollständig verwalteter Build-Service, der Ihnen hilft, Quellcode zu kompilieren, Komponententests durchzuführen und Artefakte zu erstellen, die sofort einsatzbereit sind. Dieses Muster wird CodeBuild zum Erstellen und Verpacken der Bereitstellungsartefakte verwendet.
+ [AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html)hilft Ihnen dabei, die verschiedenen Phasen einer Softwareversion schnell zu modellieren und zu konfigurieren und die Schritte zu automatisieren, die für die kontinuierliche Veröffentlichung von Softwareänderungen erforderlich sind. Dieses Muster dient CodePipeline zur Orchestrierung der Continuous Delivery-Pipeline.
+ [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) ist ein Open-Source-Tool, mit dem Sie AWS-Services über Befehle in Ihrer Befehlszeilen-Shell interagieren können.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) hilft Ihnen dabei, den Zugriff auf Ihre AWS Ressourcen sicher zu verwalten, indem es kontrolliert, wer authentifiziert und autorisiert ist, diese zu verwenden.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) ist ein Datenverarbeitungsservice, mit dem Sie Code ausführen können, ohne dass Sie Server bereitstellen oder verwalten müssen. Es führt Ihren Code nur bei Bedarf aus und skaliert automatisch, sodass Sie nur für die tatsächlich genutzte Rechenzeit zahlen.
+ [Amazon Lex V2](https://docs.aws.amazon.com/lexv2/latest/dg/what-is.html) dient AWS-Service zum Erstellen von Konversationsschnittstellen (Bots) für Anwendungen, die Sprache und Text verwenden.
+ [AWS SDK für Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html)ist ein Softwareentwicklungskit, mit dem Sie Ihre Python-Anwendung, -Bibliothek oder Ihr Skript integrieren können AWS-Services.

**Andere Tools**
+ [Git](https://git-scm.com/docs) ist ein verteiltes Open-Source-Versionskontrollsystem.

**Code-Repository**

Der Code für dieses Muster ist im Repository GitHub [management-framework-sample-for-amazon-lex](https://github.com/aws-samples/management-framework-sample-for-amazon-lex) verfügbar. Das Code-Repository enthält die folgenden Ordner und Dateien:
+ `prerequisite`Ordner — Enthält CloudFormation Stack-Definitionen (unter Verwendung von AWS CDK) für die Einrichtung der erforderlichen Ressourcen und Umgebungen.
+ `prerequisite/lexmgmtworkflow`folder — Hauptverzeichnis für das Lex Management Workflow-Projekt, einschließlich Stack-Definitionen und Python-Code.
+ `prerequisite/tests`— Enthält Komponententests.
+ `src`folder — Quellcode-Verzeichnis, einschließlich des Amazon Lex-Bot-Management-Wrappers und der Dienstprogramme.
+ `src/dialogue_lambda`— Quellcodeverzeichnis der Dialog-Hook-Lambda-Funktion, die Benutzereingaben während einer Konversation mit einem Amazon Lex Lex-Bot abfängt und verarbeitet.

## Best Practices
<a name="streamline-amazon-lex-bot-development-and-deployment-using-an-automated-workflow-best-practices"></a>
+ **Trennung der Anliegen**
  + Achten Sie auf eine klare Trennung der Zuständigkeiten zwischen DevOps Entwicklungs- und Produktionsumgebung.
  + Verwenden Sie separate AWS-Konten Optionen für jede Umgebung, um angemessene Isolations- und Sicherheitsgrenzen durchzusetzen.
  + Verwenden Sie kontenübergreifende Rollen und Prinzipien für den Zugriff mit den geringsten Rechten, um einen kontrollierten Zugriff zwischen Umgebungen sicherzustellen.
+ **Infrastruktur als Code**
  + Überprüfen und aktualisieren Sie den Infrastrukturcode regelmäßig, um ihn an bewährte Verfahren und sich ändernde Anforderungen anzupassen.
  + Etablieren Sie eine klare Strategie zur Verzweigung und Zusammenführung des Quellcode-Repositorys
+ **Testen und Validieren**
  + Implementieren Sie automatisierte Tests in verschiedenen Phasen der Pipeline, catch Probleme schon früh im Entwicklungszyklus zu erkennen.
  + Verwenden Sie die Amazon Lex Lex-Konsole oder automatisierte Test-Frameworks, um Bot-Konfigurationen und -Funktionen zu validieren, bevor Sie auf höhere Umgebungen umsteigen.
  + Erwägen Sie die Implementierung manueller Genehmigungsschranken für Bereitstellungen in Produktionsumgebungen oder kritischen Umgebungen.
+ **Überwachung und Protokollierung**
  + Richten Sie Überwachungs- und Protokollierungsmechanismen für die Pipelines, Bereitstellungen und Bot-Interaktionen ein.
  + Überwachen Sie Pipeline-Ereignisse, Bereitstellungsstatus und Bot-Leistungskennzahlen, um Probleme umgehend zu identifizieren und zu beheben.
  + Verwenden Sie AWS-Services wie Amazon CloudWatch und AWS X-Ray für die zentrale Protokollierung und Überwachung. AWS CloudTrail
  + Überprüfen und analysieren Sie regelmäßig die Leistung, Effizienz und Effektivität des automatisierten Workflows.
+ **Sicherheit und Einhaltung von Vorschriften**
  + Implementieren Sie sichere Programmierpraktiken und befolgen Sie bewährte AWS Sicherheitsmethoden für die Entwicklung und Bereitstellung von Amazon Lex Lex-Bot.
  + Überprüfen und aktualisieren Sie regelmäßig die IAM-Rollen, -Richtlinien und -Berechtigungen, damit sie dem Prinzip der geringsten Rechte entsprechen.
  + Erwägen Sie, Sicherheitsscans und Konformitätsprüfungen in die Pipelines zu integrieren.

## Epen
<a name="streamline-amazon-lex-bot-development-and-deployment-using-an-automated-workflow-epics"></a>

### IaC für Amazon Lex-Bot-Management einrichten
<a name="set-up-iac-for-lex2-bot-management"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Richten Sie die lokale CDK-Umgebung ein. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/streamline-amazon-lex-bot-development-and-deployment-using-an-automated-workflow.html) | AWS DevOps | 
| Erstellen Sie eine kontoübergreifende Rolle in der `devops` Umgebung. | Das `devops` Konto ist für das Hosting und die Verwaltung der CI/CD Pipelines verantwortlich. Damit die CI/CD Pipelines mit den `prod` Umgebungen `dev` und interagieren können, führen Sie die folgenden Befehle aus, um eine kontenübergreifende Rolle für das Konto zu erstellen. `devops`<pre>cdk bootstrap --profile=devops<br /><br />cdk deploy LexMgmtDevopsRoleStack -c dev-account-id=2222222222222 -c prod-account-id=333333333333 --profile=devops</pre> | AWS DevOps | 
| Erstellen Sie eine kontoübergreifende Rolle in der `dev` Umgebung. | Erstellen Sie im `dev` Konto eine IAM-Rolle mit den erforderlichen Berechtigungen, damit das `devops` Konto diese Rolle übernehmen kann. Die CI/CD Pipeline verwendet diese Rolle, um Aktionen im `dev` Konto auszuführen, z. B. die Bereitstellung und Verwaltung von Amazon Lex Lex-Bot-Ressourcen.Führen Sie die folgenden Befehle aus, um die IAM-Rolle zu erstellen:<pre>cdk bootstrap --profile=dev<br /><br />cdk deploy LexMgmtCrossaccountRoleStack -c devops-account-id=1111111111111 --profile=dev</pre> | AWS DevOps | 
| Erstellen Sie eine kontoübergreifende Rolle in der `prod` Umgebung. | Erstellen Sie im `prod` Konto eine IAM-Rolle mit den erforderlichen Berechtigungen, damit das `devops` Konto diese Rolle übernehmen kann. Die CI/CD Pipeline verwendet diese Rolle, um Aktionen im `prod` Konto auszuführen, z. B. die Bereitstellung und Verwaltung von Amazon Lex Lex-Bot-Ressourcen.<pre>cdk bootstrap --profile=prod<br /><br />cdk deploy LexMgmtCrossaccountRoleStack -c devops-account-id=1111111111111 --profile=prod</pre> | AWS DevOps | 
| Erstellen Sie Pipelines in der `devops` Umgebung. | Um den Entwicklungsworkflow für Amazon Lex-Bots zu verwalten, führen Sie den folgenden Befehl aus, um Pipelines in der `devops` Umgebung einzurichten. <pre>cdk deploy LexMgmtWorkflowStack -c devops-account-id=1111111111111 -c dev-account-id=2222222222222 -c prod-account-id=333333333333 --profile=devops</pre> | AWS DevOps | 

### Legen Sie die Grundlage für den Haupt-Bot fest
<a name="establish-the-baseline-for-the-main-bot"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Definiere die erste Version des Haupt-Bots. | Um die erste Version des Haupt-Bots zu definieren, [lösen](https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-triggers) Sie die `BaselineBotPipeline` Pipeline aus.Die Pipeline stellt die grundlegende Bot-Definition bereit, die in der CloudFormation Vorlage definiert ist, exportiert die Haupt-Bot-Definition als.json-Dateien und speichert den Haupt-Bot-Code in einem Versionskontrollsystem. | AWS DevOps | 

### Implementieren Sie den Workflow zur Feature-Entwicklung
<a name="implement-the-feature-development-workflow"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Erstellen Sie den Ticket-Bot, um eine Funktion zu entwickeln und zu testen. | `TicketBot`ist eine neue Bot-Instanz, die aus der vorhandenen Haupt-Bot-Definition im Feature-Branch importiert wurde. Dieser Ansatz stellt sicher, dass der neue Bot über alle aktuellen Funktionen und Konfigurationen des Haupt-Bot verfügt.Um die erste Version des Ticketbots zu definieren, lösen Sie die `CreateTicketBotPipeline` Pipeline aus.Die Pipeline erstellt einen neuen Funktionszweig im Versionskontrollsystem und erstellt eine neue Ticket-Bot-Instanz, die auf dem Haupt-Bot basiert. | Lex Bot Entwickler | 
| Entwickeln und testen Sie die Ticket-Bot-Funktion.  | Um die Funktion zu entwickeln und zu testen, melden Sie sich bei der Amazon Lex Lex-Konsole an AWS-Managementkonsole und öffnen Sie sie unter [https://console.aws.amazon.com/lex/](https://console.aws.amazon.com/lex/). Weitere Informationen finden Sie in [der Amazon Lex Lex-Dokumentation unter Einen Bot mithilfe der Konsole testen](https://docs.aws.amazon.com/lexv2/latest/dg/test-bot.html).Mit der `TicketBot` Instance können Sie jetzt die Funktionalität des Bots hinzufügen, ändern oder erweitern, um die neue Funktion zu implementieren. Sie können beispielsweise Absichten, Äußerungen, Slots und Dialogabläufe erstellen oder ändern. Weitere Informationen finden Sie unter [Hinzufügen von Absichten](https://docs.aws.amazon.com/lexv2/latest/dg/add-intents.html) in der Amazon Lex Lex-Dokumentation. | Lex Bot Entwickler | 
| Exportieren Sie die Ticket-Bot-Definition. | Die exportierte Bot-Definition ist im Wesentlichen eine Darstellung der Konfiguration und Funktionalität des Bots in einem JSON-Format.Um die Ticket-Bot-Definition zu exportieren, lösen Sie die `ExportTicketBotPipeline` Pipeline aus.Die Pipeline exportiert die Ticket-Bot-Definition als.json-Dateien und speichert den Ticket-Bot-Code in einem Feature-Branch im Versionskontrollsystem. | Lex Bot Entwickler | 
| Der Feature-Branch wird vom letzten Hauptzweig aus neu erstellt. | Während der Entwicklung einer neuen Funktion hat der Hauptzweig möglicherweise weitere Änderungen von anderen Entwicklern oder Teams erhalten. Um diese Änderungen in den Feature-Branch zu integrieren, führen Sie eine `rebase` Git-Operation aus. Bei dieser Operation werden im Wesentlichen die Commits aus dem Feature-Branch zusätzlich zu den letzten Commits aus dem Haupt-Branch wiederholt, sodass sichergestellt wird, dass der Feature-Branch alle aktuellen Änderungen enthält | Lex Bot Entwickler | 
| Importieren und validieren Sie den neu erstellten Ticket-Bot. | Nachdem Sie den Feature-Branch neu erstellt haben, müssen Sie ihn in die Ticket-Bot-Instanz importieren. Durch diesen Import wird der bestehende Ticket-Bot mit den neuesten Änderungen aus dem neu basierten Branch aktualisiert.Um den umbasierten Ticket-Bot zu importieren, lösen Sie die `ImportTicketBotPipeline` Pipeline aus.Die Pipeline importiert die .json-Dateien mit der Ticket-Bot-Definition im Feature-Branch des Versionskontrollsystems in die `TicketBot` Instanz. | Lex Bot Entwickler | 
| Validieren Sie die neu erstellte Bot-Definition. | Nachdem Sie die Definition des neu erstellten Bots importiert haben, ist es wichtig, ihre Funktionalität zu überprüfen. Sie möchten sicherstellen, dass die neue Funktion wie erwartet funktioniert und nicht mit der vorhandenen Funktionalität kollidiert. Diese Validierung umfasst in der Regel das Testen des Bots anhand verschiedener Eingabeszenarien, das Überprüfen der Antworten und das Überprüfen, ob sich der Bot wie beabsichtigt verhält. Sie können die Validierung auf eine der folgenden Arten durchführen:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/streamline-amazon-lex-bot-development-and-deployment-using-an-automated-workflow.html) | Lex Bot Entwickler | 
| Führen Sie den Feature-Zweig mit dem Hauptzweig zusammen. | Nachdem Sie die neue Funktion in der isolierten `TicketBot` Instanz entwickelt und getestet haben, gehen Sie wie folgt vor:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/streamline-amazon-lex-bot-development-and-deployment-using-an-automated-workflow.html) | Lex Bot Entwickler, Repository-Administrator | 
| Löschen Sie den Feature-Branch und den Ticket-Bot.  | Nachdem ein Feature-Branch erfolgreich mit dem Haupt-Branch zusammengeführt wurde, löschen Sie den Feature-Branch und den Ticket-Bot aus dem Quellcode-Repository. Um den Feature Branch und den Ticket-Bot zu löschen, lösen Sie die `DeleteTicketBotPipeline` Pipeline aus.Die Pipeline entfernt temporäre Bot-Ressourcen, die während des Entwicklungsprozesses erstellt wurden (z. B. der Ticket-Bot). Diese Aktion trägt dazu bei, ein sauberes Repo aufrechtzuerhalten und Verwirrung oder Konflikte mit future Feature-Branches zu vermeiden.  | Lex Bot Entwickler | 

### Pflegen Sie den Haupt-Bot
<a name="maintain-the-main-bot"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Importieren Sie die neueste Haupt-Bot-Definition in die `dev` Umgebung. | Um die neueste Haupt-Bot-Definition im Hauptzweig in die `dev` Umgebung zu importieren, lösen Sie die `DeployBotDevPipeline` Pipeline aus.Die Pipeline erstellt bei der Genehmigung auch ein Git-Tag. | AWS DevOps | 
| Importieren Sie die neueste Haupt-Bot-Definition in die `prod` Umgebung. | Um die neueste Bot-Definition im Hauptzweig in die `prod` Umgebung zu importieren, geben Sie die Tag-Referenz aus der vorherigen Aufgabe als Parameter an und lösen Sie die `DeployBotProdPipeline` Pipeline aus.Die Pipeline importiert die neueste Bot-Definition aus einem bestimmten Tag in die `prod` Umgebung. | AWS DevOps | 

## Fehlerbehebung
<a name="streamline-amazon-lex-bot-development-and-deployment-using-an-automated-workflow-troubleshooting"></a>


| Problem | Lösung | 
| --- | --- | 
| Wenn Sie Amazon Lex-Bots auf verschiedenen Konten bereitstellen AWS-Konten, müssen die Tooling-Services über die erforderlichen Berechtigungen für den Zugriff auf Ressourcen in diesen Konten verfügen. | Verwenden Sie IAM-Rollen und -Richtlinien, um kontoübergreifenden Zugriff zu gewähren. Erstellen Sie IAM-Rollen in den Zielkonten und fügen Sie den Rollen Richtlinien hinzu, die die erforderlichen Berechtigungen gewähren. Nehmen Sie dann diese Rollen von dem Konto aus an, in dem der Amazon Lex Lex-Bot bereitgestellt wird.Weitere Informationen finden Sie in der Amazon Lex [Lex-Dokumentation unter Für den Import erforderliche](https://docs.aws.amazon.com/lexv2/latest/dg/import.html#import-permissions) [IAM-Berechtigungen und für den Export von Bots in Lex V2 erforderliche](https://docs.aws.amazon.com/lexv2/latest/dg/export.html#export-permissions) IAM-Berechtigungen. | 

## Zugehörige Ressourcen
<a name="streamline-amazon-lex-bot-development-and-deployment-using-an-automated-workflow-resources"></a>
+ [Bots in Amazon Lex V2 importieren](https://docs.aws.amazon.com/lexv2/latest/dg/import.html)
+ [Starten Sie eine Pipeline in CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/pipelines-about-starting.html)
+ [Arbeiten mit Amazon Lex V2-Bots](https://docs.aws.amazon.com/lexv2/latest/dg/building-bots.html)