

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.

# Tutorial: Erstellen einer Pipeline zum Bereitstellen eines Amazon Alexa-Skills
<a name="tutorials-alexa-skills-kit"></a>

In diesem Tutorial konfigurieren Sie eine Pipeline, über die Ihre Alexa-Qualifikation kontinuierlich bereitgestellt wird, indem das Alexa Skills Kit auf Ihrer Bereitstellungsstufe als Bereitstellungsanbieter verwendet wird. Die fertige Pipeline erkennt Änderungen an Ihrer Qualifikation, wenn Sie in Ihrem Quell-Repository eine Änderung an den Quelldateien vornehmen. Die Pipeline nutzt dann das Alexa Skills Kit für Bereitstellungen für die Entwicklungsstufe der Alexa-Qualifikation.

**Wichtig**  
Im Rahmen der Erstellung einer Pipeline wird ein vom Kunden bereitgestellter S3-Artefakt-Bucket von CodePipeline for Artifacts verwendet. (Dies unterscheidet sich von dem Bucket, der für eine S3-Quellaktion verwendet wird.) Wenn sich der S3-Artefakt-Bucket in einem anderen Konto befindet als das Konto für Ihre Pipeline, stellen Sie sicher, dass der S3-Artefakt-Bucket denjenigen gehört AWS-Konten , die sicher und zuverlässig sind.

**Anmerkung**  
Diese Funktion ist in der Region Asien-Pazifik (Hongkong) oder Europa (Mailand) nicht verfügbar. Informationen zur Verwendung anderer Bereitstellungsaktionen, die in dieser Region verfügbar sind, finden Sie unter[Bereitstellungsaktions-Integrationen](integrations-action-type.md#integrations-deploy).

Informationen zum Erstellen Ihres benutzerdefinierten Skills als Lambda-Funktion finden Sie unter [Hosten eines benutzerdefinierten Skills als AWS Lambda-Funktion](https://developer.amazon.com/docs/custom-skills/host-a-custom-skill-as-an-aws-lambda-function.html). Sie können auch eine Pipeline erstellen, die Lambda-Quelldateien und ein CodeBuild Projekt verwendet, um Änderungen an Lambda für Ihre Fähigkeiten bereitzustellen.

## Voraussetzungen
<a name="tutorials-alexa-skills-kit-prereq"></a>

Sie müssen bereits über Folgendes verfügen:
+ Ein CodeCommit Repository. Sie können das AWS CodeCommit Repository verwenden, in dem Sie es erstellt haben[Tutorial: Erstellen Sie eine einfache Pipeline (CodeCommit Repository)](tutorials-simple-codecommit.md).
+ Ein Amazon-Entwicklerkonto. Dies ist das Konto, das im Besitz Ihrer Alexa-Qualifikationen ist. Sie können unter [Alexa Skills Kit](https://developer.amazon.com/alexa-skills-kit) kostenlos ein Konto erstellen. 
+ Eine Alexa-Qualifikation. Sie können eine Beispielqualifikation erstellen, indem Sie das Tutorial [Get Custom Skill Sample Code](https://developer.amazon.com/docs/custom-skills/use-the-alexa-skills-kit-samples.html) (Verwenden von Beispiel-Code für eine benutzerdefinierte Qualifikation) verwenden.
+ Installieren Sie die ASK CLI und konfigurieren Sie sie `ask init` mit Ihren AWS Anmeldeinformationen. Siehe [Installieren und Initialisieren von ASK CLI](https://developer.amazon.com/docs/smapi/quick-start-alexa-skills-kit-command-line-interface.html#install-initialize).

## Schritt 1: Erstellen eines Alexa Developer Services-LWA-Sicherheitsprofils
<a name="tutorials-alexa-skills-kit-profile"></a>

In diesem Abschnitt erstellen Sie ein Sicherheitsprofil für Login With Amazon (LWA). Falls Sie bereits über ein Profil verfügen, können Sie diesen Schritt überspringen.
+ Verwenden Sie die Schritte unter [generate-lwa-tokens](https://developer.amazon.com/docs/smapi/ask-cli-command-reference.html#generate-lwa-tokens), um ein Sicherheitsprofil zu erstellen.
+ Notieren Sie sich die **Client-ID** und den **Clientschlüssel**, nachdem Sie das Profil erstellt haben.
+ Stellen Sie sicher, dass Sie den Wert „**Zulässige Rücksendung**“ URLs wie in den Anweisungen angegeben eingeben. Sie URLs ermöglichen es dem ASK CLI-Befehl, Aktualisierungstoken-Anfragen umzuleiten.

## Schritt 2: Erstellen Sie Alexa-Skill-Quelldateien und übertragen Sie sie in Ihr CodeCommit Repository
<a name="tutorials-alexa-skills-kit-push"></a>

In diesem Abschnitt erstellen Sie die Quelldateien für Ihre Alexa-Qualifikation und übertragen sie per Push an das Repository, das von der Pipeline für Ihre Quellstufe verwendet wird. Für die Qualifikation, die Sie in der Amazon-Entwicklerkonsole erstellt haben, erstellen und übertragen Sie Folgendes: 
+ Die Datei `skill.json`.
+ Einen `interactionModel/custom`-Ordner.
**Anmerkung**  
Diese Verzeichnisstruktur entspricht den Anforderungen des Alexa Skills Kit-Skill-Pakets, wie in [Skill-Paketformat](https://developer.amazon.com/docs/smapi/skill-package-api-reference.html#skill-package-format) beschrieben. Wenn Ihre Verzeichnisstruktur nicht das richtige Skill-Paketformat verwendet, werden Änderungen nicht erfolgreich in der Alexa Skills Kit-Konsole bereitgestellt.

**So erstellen Sie Quelldateien für Ihre Qualifikation**

1. Rufen Sie Ihre Qualifikations-ID aus der Alexa Skills Kit-Entwicklerkonsole ab. Verwenden Sie diesen Befehl:

   ```
   ask api list-skills
   ```

   Suchen Sie anhand des Namens nach Ihrer Qualifikation und kopieren Sie die zugehörige ID anschließend in das Feld `skillId`.

1. Generieren Sie die Datei `skill.json`, die Ihre Qualifikationsdetails enthält. Verwenden Sie diesen Befehl:

   ```
   ask api get-skill -s {{skill-ID}} > skill.json
   ```

1. (Optional) Erstellen Sie einen `interactionModel/custom`-Ordner.

   Verwenden Sie diesen Befehl, um die Interaktionsmodelldatei im Ordner zu generieren. Als Gebietsschema wird in diesem Tutorial „en-US“ im Dateinamen verwendet.

   ```
   ask api get-model --skill-id {{skill-ID}} --locale {{locale}} >
       ./interactionModel/custom/{{locale}}.json
   ```

**Um Dateien in Ihr CodeCommit Repository zu übertragen**

1. Push oder lade die Dateien in dein CodeCommit Repository hoch. Diese Dateien stellen das Quellartefakt dar, das vom Assistenten **Create Pipeline (Pipeline erstellen)** für Ihre Bereitstellungsaktion in AWS CodePipeline erstellt wurde. Ihre Dateien sollten in Ihrem lokalen Verzeichnis wie folgt aussehen:

   ```
   skill.json
   /interactionModel
     /custom
       |en-US.json
   ```

1. Wählen Sie die Methode aus, mit der Sie Ihre Dateien hochladen möchten:

   1. So verwenden Sie die Git-Befehlszeile aus einem geklonten Repository auf Ihrem lokalen Computer:

      1. Führen Sie den folgenden Befehl aus, um alle Dateien auf einmal zu übertragen:

         ```
         git add -A
         ```

      1. Führen Sie den folgenden Befehl aus, um einen Commit für Dateien mit einer Commit-Nachricht durchzuführen:

         ```
         git commit -m "Added Alexa skill files"
         ```

      1. Führen Sie den folgenden Befehl aus, um die Dateien von Ihrem lokalen Repository in Ihr CodeCommit Repository zu übertragen:

         ```
         git push
         ```

   1. So verwenden Sie die CodeCommit Konsole, um Ihre Dateien hochzuladen: 

      1. Öffnen Sie die CodeCommit Konsole und wählen Sie Ihr Repository aus der **Repository-Liste** aus.

      1. Wählen Sie **Add file (Datei hinzufügen)** und dann **Upload file (Datei hochladen)** aus. 

      1. Wählen Sie **Choose file (Datei auswählen)** aus und navigieren Sie anschließend zu Ihrer Datei. Übernehmen Sie die Änderung, indem Sie Ihren Benutzernamen und Ihre E-Mail-Adresse eingeben. Wählen Sie **Commit changes (Änderungen übernehmen)** aus.

      1. Wiederholen Sie diesen Schritt für jede Datei, die Sie hochladen möchten.

## Schritt 3: Verwenden von ASK-CLI-Befehlen zum Erstellen eines Aktualisierungs-Tokens
<a name="tutorials-alexa-skills-kit-token"></a>

CodePipeline verwendet ein Aktualisierungstoken, das auf der Client-ID und dem geheimen Schlüssel in Ihrem Amazon-Entwicklerkonto basiert, um Aktionen zu autorisieren, die es in Ihrem Namen ausführt. In diesem Abschnitt verwenden Sie die ASK-CLI zum Erstellen des Tokens. Sie nutzen diese Anmeldeinformationen bei der Verwendung des Assistenten **Create Pipeline (Pipeline erstellen)**.

**So erstellen Sie ein Aktualisierungs-Token mit den Anmeldeinformationen Ihres Amazon-Entwicklerkontos**

1. Verwenden Sie den folgenden Befehl: 

   ```
   ask util generate-lwa-tokens
   ```

1. Geben Sie bei entsprechender Aufforderung Ihre Client-ID und den Schlüssel wie in diesem Beispiel ein: 

   ```
   ? Please type in the client ID: 
   amzn1.application-client.example112233445566
   ? Please type in the client secret:
   example112233445566
   ```

1. Die Browserseite für die Anmeldung wird angezeigt. Melden Sie sich mit den Anmeldeinformationen für Ihr Amazon-Entwicklerkonto an.

1. Wechseln Sie zurück zum Fenster mit der Befehlszeile. Das Zugriffstoken und das Aktualisierungstoken werden in der Ausgabe generiert. Kopieren Sie das zurückgegebene Aktualisierungs-Token, das in der Ausgabe enthalten ist.

## Schritt 4: Erstellen Ihrer Pipeline
<a name="tutorials-alexa-skills-kit-pipeline"></a>

In diesem Abschnitt erstellen Sie eine Pipeline mit den folgenden Aktionen:
+ Eine Quellphase mit einer CodeCommit Aktion, bei der es sich bei den Quellartefakten um die Alexa-Skill-Dateien handelt, die Ihren Skill unterstützen.
+ Eine Bereitstellungsstufe mit einer Alexa Skills Kit-Bereitstellungsaktion.

**So erstellen Sie mit dem Assistenten eine Pipeline**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die CodePipeline Konsole unter [http://console.aws.amazon. com/codesuite/codepipeline/home](https://console.aws.amazon.com/codesuite/codepipeline/home).

1. Wählen Sie die AWS Region aus, in der Sie das Projekt und seine Ressourcen erstellen möchten. Die Alexa Skill-Laufzeit ist nur in den folgenden Regionen verfügbar:
   + Asien-Pazifik (Tokio)
   + Europa (Irland)
   + USA Ost (Nord-Virginia)
   + USA West (Oregon)

1. Wählen sie auf der Seite **Welcome (Willkommen)** die Option **Getting started (Erste Schritte)** aus, oder auf der Seite **Pipelines** die Option **Create pipeline (Pipeline erstellen)**.

1. Wählen Sie auf der Seite **Schritt 1: Erstellungsoption auswählen** unter **Erstellungsoptionen** die Option **Benutzerdefinierte Pipeline erstellen** aus. Wählen Sie **Weiter** aus.

1. Geben Sie in **Schritt 2: Pipeline-Einstellungen auswählen** im Feld **Pipeline-Name** den Wert ein**MyAlexaPipeline**.

1. CodePipeline bietet Pipelines vom Typ V1 und V2, die sich in Eigenschaften und Preis unterscheiden. Der Typ V2 ist der einzige Typ, den Sie in der Konsole auswählen können. Weitere Informationen finden Sie unter [Pipeline-Typen](https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types-planning.html?icmpid=docs_acp_help_panel). Informationen zur Preisgestaltung für finden Sie CodePipeline unter [Preisgestaltung](https://aws.amazon.com/codepipeline/pricing/).

1. Wählen Sie unter **Servicerolle** die Option **Neue Servicerolle** aus, um CodePipeline die Erstellung einer Servicerolle in IAM zu ermöglichen.

1. Belassen Sie die Einstellungen unter **Erweiterte Einstellungen** bei den Standardeinstellungen, und wählen Sie dann **Next (Weiter)** aus.

1. Wählen Sie in **Schritt 3: Quellstufe hinzufügen** im Feld **Quellanbieter** die Option **AWS CodeCommit**. Wählen Sie unter **Repository-Name** den Namen des CodeCommit Repositorys aus, in dem Sie es erstellt haben[Schritt 1: Erstelle ein CodeCommit Repository](tutorials-simple-codecommit.md#codecommit-create-repository). Wählen Sie in **Branch name** den Namen des Branch aus, der das neueste Code-Update enthält.

   Nachdem Sie den Repository-Namen und den Branch ausgewählt haben, wird in einer Meldung die Amazon CloudWatch Events-Regel angezeigt, die für diese Pipeline erstellt werden soll. 

   Wählen Sie **Weiter** aus.

1. Wählen Sie in **Schritt 4: Build-Phase hinzufügen** die Option **Build-Phase überspringen** und akzeptieren Sie dann die Warnmeldung, indem Sie erneut auf **Überspringen** klicken.

   Wählen Sie **Weiter** aus.

1. Wählen Sie in **Schritt 5: Testphase hinzufügen** die Option **Testphase überspringen** aus und akzeptieren Sie dann die Warnmeldung, indem Sie erneut **Überspringen** wählen. 

   Wählen Sie **Weiter** aus.

1. Gehen Sie in **Schritt 6: Bereitstellungsphase hinzufügen** wie folgt vor:

   1. Wählen Sie unter **Deploy provider (Bereitstellungsanbieter)** die Option **Alexa Skills Kit**. 

   1. Geben Sie unter **Alexa Skill-ID** die Qualifikations-ID ein, die Ihrer Qualifikation in der Alexa Skills Kit-Entwicklerkonsole zugewiesen ist.

   1. Geben Sie unter **Client-ID** die ID der von Ihnen registrierten Anwendung ein.

   1. Geben Sie unter **Clientschlüssel** den Schlüssel ein, den Sie während der Registrierung gewählt haben.

   1. Geben Sie unter **Aktualisierungs-Token** das Token ein, das Sie in Schritt 3 generiert haben.  
![Die Seite „Schritt 6: Bereitstellen“ für eine Alexa Skills Kit-Aktion](http://docs.aws.amazon.com/de_de/codepipeline/latest/userguide/images/alexa-deploy.png)

   1. Wählen Sie **Weiter** aus.

1. Überprüfen **Sie in Schritt 7: Überprüfen** Sie die Informationen und wählen Sie dann **Pipeline erstellen** aus.

## Schritt 5: Vornehmen einer Änderung an einer beliebigen Quelldatei und Überprüfen der Bereitstellung
<a name="tutorials-alexa-skills-kit-update"></a>

Nehmen Sie eine Änderung an Ihrer Qualifikation vor und übertragen Sie die Änderung per Push in Ihr Repository. Damit wird die Ausführung Ihrer Pipeline ausgelöst. Vergewissern Sie sich, dass Ihre Qualifikation in der [Alexa Skills Kit-Entwicklerkonsole](https://developer.amazon.com/alexa/console/ask) aktualisiert wurde.