Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Tutorial: creazione di una pipeline che distribuisce una competenza Amazon Alexa
In questo tutorial, è possibile configurare una pipeline che distribuisce in modo continuo le competenze Alexa utilizzando Alexa Skills Kit come provider di operazioni di distribuzione nella fase di distribuzione. La pipeline completata rileva le modifiche alla competenza quando si modificano i file di origine nel repository di origine. La pipeline usa quindi Alexa Skills Kit per distribuire alla fase di sviluppo di competenze Alexa.
Importante
Come parte della creazione di una pipeline, per gli artefatti verrà utilizzato un bucket di artefatti S3 fornito dal cliente. CodePipeline (Questo è diverso dal bucket utilizzato per un'azione sorgente S3.) Se il bucket di artefatti S3 si trova in un account diverso da quello della pipeline, assicurati che il bucket di artefatti S3 sia di proprietà di utenti sicuri e affidabili. Account AWS
Nota
Questa funzionalità non è disponibile nella regione Asia Pacifico (Hong Kong) o Europa (Milano). Per utilizzare altre azioni di distribuzione disponibili in quella regione, consultaIntegrazioni di operazioni di distribuzione.
Per creare un'abilità personalizzata come funzione Lambda, consulta Ospitare un'abilità personalizzata come funzione Lambda AWS
Prerequisiti
Devi avere già quanto segue:
-
Un repository. CodeCommit È possibile utilizzare il AWS CodeCommit repository in cui è stato creato. Tutorial: crea una pipeline semplice (CodeCommitrepository)
-
Un account sviluppatore Amazon. Questo è l'account che possiede le competenze Alexa. È possibile creare un account gratuitamente nell'Alexa Skills Kit
. -
Una competenza Alexa. È possibile creare una competenza di esempio utilizzando il tutorial Ottieni il codice di esempio per competenze personalizzate
. -
Installalo ASK CLI e configuralo utilizzando
ask init
le tue AWS credenziali. Vedi Installazione e inizializzazione ASK CLI.
Passaggio 1: crea un profilo di sicurezza dei servizi LWA di sviluppo Alexa
In questa sezione, crei un profilo di sicurezza da utilizzare con Login with Amazon (LWA). Se hai già un profilo, questa fase può essere ignorata.
-
Segui la procedura descritta generate-lwa-tokens
per creare un profilo di sicurezza. -
Dopo aver creato il profilo, annotare il Client ID (ID client) e il Client Secret (Segreto client).
-
Assicurati di inserire la restituzione consentita URLs come indicato nelle istruzioni. URLsConsenti al ASK CLI comando di reindirizzare le richieste di token di aggiornamento.
Passaggio 2: crea i file sorgente delle abilità Alexa e inviali al tuo repository CodeCommit
In questa sezione, è possibile creare e inviare i file di origine di competenza Alexa nel repository che la pipeline impiega per la fase di origine. Per la competenza creata nella console per sviluppatori di Amazon, devi produrre e inviare quanto segue:
-
Un file
skill.json
. -
Una cartella
interactionModel/custom
.Nota
Questa struttura di directory è conforme ai requisiti del formato dei pacchetti di skill di Alexa Skills Kit, come descritto in Formato del pacchetto di competenze
. Se la struttura di directory non utilizza il formato dei pacchetti di skill corretto, le modifiche non vengono distribuite correttamente alla console Alexa Skills Kit.
Per creare file di origine per la competenza
-
Recupera l'ID competenza dalla console per sviluppatori Alexa Skills Kit. Usa questo comando:
ask api list-skills
Individua la competenza in base al nome e copia il relativo ID nel campo
skillId
. -
Genera un file
skill.json
che contiene i dettagli della competenza. Usa questo comando:ask api get-skill -s
skill-ID
> skill.json -
(Facoltativo) Crea una cartella
interactionModel/custom
.Utilizza questo comando per generare il file del modello di interazione all'interno della cartella. Come impostazione, questo tutorial utilizza en-US come lingua locale nel nome del file.
ask api get-model --skill-id
skill-ID
--localelocale
> ./interactionModel/custom/locale
.json
Per inviare file al tuo repository CodeCommit
-
Invia o carica i file nel tuo CodeCommit repository. Questi file sono l'artefatto di origine creato dalla procedura guidata Create Pipeline (Crea pipeline) per l'operazione di distribuzione in AWS CodePipeline. I file dovrebbero avere questo aspetto nella directory locale:
skill.json /interactionModel /custom |en-US.json
-
Scegli un metodo per caricare i file:
-
Per usare la riga di comando Git da un repository clonato sul computer locale:
-
Esegui il comando seguente per posizionare tutti i file contemporaneamente:
git add -A
-
Esegui il comando seguente per eseguire il commit dei file con un messaggio di commit:
git commit -m "Added Alexa skill files"
-
Esegui il comando seguente per inviare i file dal repository locale al tuo CodeCommit repository:
git push
-
-
Per utilizzare la CodeCommit console per caricare i file:
-
Apri la CodeCommit console e scegli il tuo repository dall'elenco Repository.
-
Seleziona Add file (Aggiungi file), quindi scegli Upload file (Carica file).
-
Seleziona Choose file (Scegli file), quindi seleziona il file. Conferma la modifica inserendo il tuo nome utente e indirizzo e-mail. Scegliere Commit changes (Applica modifiche).
-
Ripeti questa fase per ogni file da caricare.
-
-
Passaggio 3: Usa ASK CLI i comandi per creare un token di aggiornamento
CodePipeline utilizza un token di aggiornamento basato sull'ID cliente e sul segreto nel tuo account sviluppatore Amazon per autorizzare le azioni che esegue per tuo conto. In questa sezione, usi il ASK CLI per creare il token. Usa queste credenziali quando utilizzi la procedura guidata Create Pipeline (Crea pipeline).
Per creare un token di aggiornamento con le credenziali dell'account sviluppatore Amazon
-
Utilizza il seguente comando:
ask util generate-lwa-tokens
-
Quando richiesto, immetti l'ID e il segreto client come illustrato in questo esempio:
? Please type in the client ID: amzn1.application-client.example112233445566 ? Please type in the client secret: example112233445566
-
Viene visualizzata la pagina di accesso del browser. Accedi con le credenziali dell'account sviluppatore Amazon.
-
Torna alla schermata della riga di comando. Il token di accesso e di aggiornamento vengono generati nell'output. Copia il token di aggiornamento restituito nell'output.
Fase 4: creazione della pipeline
In questa sezione, andrai a creare una pipeline con le operazioni seguenti:
-
Una fase di origine con un' CodeCommit azione in cui gli artefatti di origine sono i file delle abilità di Alexa che supportano la tua abilità.
-
Una fase di distribuzione con un'operazione di distribuzione Alexa Skills Kit.
Per creare una pipeline con la procedura guidata
-
Scegli la AWS regione in cui desideri creare il progetto e le relative risorse. Il runtime delle competenze Alexa è disponibile solo nelle seguenti regioni:
-
Asia Pacifico (Tokyo)
-
Europa (Irlanda)
-
Stati Uniti orientali (Virginia settentrionale)
-
US West (Oregon)
-
-
Nella pagina Welcome (Benvenuto), pagina Getting started (Nozioni di base) o pagina Pipelines (Pipeline), scegliere Create pipeline (Crea pipeline).
-
In Step 1: Choose pipeline settings (Fase 1: scelta delle impostazioni della pipeline), in Pipeline name (Nome pipeline), immettere
MyAlexaPipeline
. -
Nel tipo di pipeline, scegli V2. Per ulteriori informazioni, consulta Tipi di tubazioni. Scegli Next (Successivo).
-
In Ruolo di servizio, scegli Nuovo ruolo di servizio in cui consentire CodePipeline la creazione di un ruolo di servizio. IAM
-
Lasciare i valori predefiniti delle impostazioni in Advanced settings (Impostazioni avanzate), quindi scegliere Next (Successivo).
-
In Step 2: Add source stage (Fase 2: aggiunta della fase di origine), in Source provider (Provider origine), scegliere AWS CodeCommit. In Nome archivio, scegli il nome del CodeCommit repository in cui hai creato. Fase 1: Creare un CodeCommit repository In Branch name (Nome ramo), scegliere il nome del ramo che contiene l'aggiornamento di codice più recente.
Dopo aver selezionato il nome del repository e il ramo, un messaggio mostra la regola Amazon CloudWatch Events da creare per questa pipeline.
Scegli Next (Successivo).
-
In Step 3: Add build stage (Fase 3: aggiunta della fase di compilazione), scegli Skip build stage (Ignora fase di compilazione) e quindi accetta il messaggio di avviso scegliendo Skip (Ignora).
Scegli Next (Successivo).
-
In Step 4: Add deploy stage (Fase 4: aggiunta della fase di distribuzione):
-
In Deploy provider (Provider di distribuzione), scegli Alexa Skills Kit.
-
In Alexa skill ID (ID competenza Alexa), immetti l'ID competenza assegnato alla tua competenza nella console per sviluppatori Alexa Skills Kit.
-
In Client ID (ID client), immetti l'ID dell'applicazione registrata.
-
In Client secret (Segreto client), immetti il segreto scelto al momento della registrazione.
-
In Refresh token (Token di aggiornamento), immetti il token generato alla fase 3.
-
Scegli Next (Successivo).
-
-
In Step 5: Review (Fase 5: revisione), esaminare le informazioni e quindi scegliere Create pipeline (Crea pipeline).
Fase 5: modifica di un file di origine e verifica della distribuzione
Modifica la competenza e applica la modifica al repository. In questo modo viene attivata la pipeline per l'esecuzione. Verifica che la competenza sia aggiornata nella console per sviluppatori Alexa Skills Kit