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
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 unterBereitstellungsaktions-Integrationen.
Informationen zum Erstellen Ihres benutzerdefinierten Skills als Lambda-Funktion finden Sie unter Hosten eines benutzerdefinierten Skills als AWS Lambda-Funktion
Voraussetzungen
Sie müssen bereits über Folgendes verfügen:
-
Ein CodeCommit Repository. Sie können das AWS CodeCommit Repository verwenden, in dem Sie es erstellt habenTutorial: Erstellen einer einfachen Pipeline (CodeCommit-Repository).
-
Ein Amazon-Entwicklerkonto. Dies ist das Konto, das im Besitz Ihrer Alexa-Qualifikationen ist. Sie können unter 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
(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.
Schritt 1: Erstellen eines Alexa Developer Services-LWA-Sicherheitsprofils
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
, 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
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
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
-
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
. -
Generieren Sie die Datei
skill.json
, die Ihre Qualifikationsdetails enthält. Verwenden Sie diesen Befehl:ask api get-skill -s
skill-ID
> skill.json -
(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
--localelocale
> ./interactionModel/custom/locale
.json
Um Dateien in Ihr CodeCommit Repository zu übertragen
-
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
-
Wählen Sie die Methode aus, mit der Sie Ihre Dateien hochladen möchten:
-
So verwenden Sie die Git-Befehlszeile aus einem geklonten Repository auf Ihrem lokalen Computer:
-
Führen Sie den folgenden Befehl aus, um alle Dateien auf einmal zu übertragen:
git add -A
-
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"
-
Führen Sie den folgenden Befehl aus, um die Dateien von Ihrem lokalen Repository in Ihr CodeCommit Repository zu übertragen:
git push
-
-
So verwenden Sie die CodeCommit Konsole, um Ihre Dateien hochzuladen:
-
Öffnen Sie die CodeCommit Konsole und wählen Sie Ihr Repository aus der Repository-Liste aus.
-
Wählen Sie Add file (Datei hinzufügen) und dann Upload file (Datei hochladen) aus.
-
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.
-
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
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
-
Verwenden Sie den folgenden Befehl:
ask util generate-lwa-tokens
-
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
-
Die Browserseite für die Anmeldung wird angezeigt. Melden Sie sich mit den Anmeldeinformationen für Ihr Amazon-Entwicklerkonto an.
-
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
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
Melden Sie sich bei der an AWS Management Console und öffnen Sie die CodePipeline Konsole unter http://console.aws.amazon. com/codesuite/codepipeline/home
. -
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)
-
-
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).
-
Wählen Sie auf der Seite Schritt 1: Erstellungsoption auswählen unter Erstellungsoptionen die Option Benutzerdefinierte Pipeline erstellen aus. Wählen Sie Weiter.
-
Geben Sie in Schritt 2: Pipeline-Einstellungen auswählen im Feld Pipeline-Name den Wert ein
MyAlexaPipeline
. -
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. Informationen zur Preisgestaltung für finden Sie CodePipeline unter Preisgestaltung
. -
Wählen Sie unter Servicerolle die Option Neue Servicerolle aus, um CodePipeline die Erstellung einer Servicerolle in IAM zu ermöglichen.
-
Belassen Sie die Einstellungen unter Erweiterte Einstellungen bei den Standardeinstellungen, und wählen Sie dann Next (Weiter) aus.
-
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 habenSchritt 1: Erstelle ein CodeCommit 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.
-
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.
-
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.
-
Gehen Sie in Schritt 6: Bereitstellungsphase hinzufügen wie folgt vor:
-
Wählen Sie unter Deploy provider (Bereitstellungsanbieter) die Option Alexa Skills Kit.
-
Geben Sie unter Alexa Skill-ID die Qualifikations-ID ein, die Ihrer Qualifikation in der Alexa Skills Kit-Entwicklerkonsole zugewiesen ist.
-
Geben Sie unter Client-ID die ID der von Ihnen registrierten Anwendung ein.
-
Geben Sie unter Clientschlüssel den Schlüssel ein, den Sie während der Registrierung gewählt haben.
-
Geben Sie unter Aktualisierungs-Token das Token ein, das Sie in Schritt 3 generiert haben.
-
Wählen Sie Weiter.
-
-
Ü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
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