Questa guida mostra come utilizzare lo strumento dell'interfaccia a riga di comando (CLI) di gactions in scenari di utilizzo comuni. Per informazioni sulla creazione di Azioni end-to-end, consulta consulta la documentazione sulla creazione delle azioni conversazionali.
Sincronizzazione dei progetti
Quando utilizzi l'SDK Actions, gactions è lo strumento per sincronizzare i progetti di azione tra la console di Actions e il tuo file system locale.
Le operazioni di gactions pull
esportano un progetto dalla console Actions
il file system locale e le operazioni gactions push
eseguono il push di un progetto
alla console Actions.
Scaricare le azioni dalla console di Actions
Esegui gactions pull
per copiare la configurazione di un progetto Actions nell'ambiente locale
file system in-app.
L'elemento project-id
del progetto che vuoi copiare può essere passato al comando
riga di comando o scritto nel file settings/settings.yaml
. Se sono presenti entrambi,
L'interfaccia a riga di comando dà la precedenza al valore passato come opzione.
mkdir -p myAction/sdk
cd myAction/sdk
gactions pull --project-id my-project-id
Pulling your project files from Draft for a project id: "my-project-id" ✔ Done. You should see the files written in path/to/myAction/sdkls -l
total 8 drwxr-x--- 3 user primarygroup 96 May 7 10:00 actions drwxr-x--- 4 user primarygroup 128 May 7 10:00 custom -rw-r----- 1 user primarygroup 15 May 7 10:00 manifest.yaml drwxr-x--- 3 user primarygroup 96 May 7 10:00 settingsvi settings/settings.yaml
// change projectId to "my-other-project-id"gactions pull
Pulling your project files from Draft for a project id: "my-other-project-id" path/to/myAction/sdk/manifest.yaml already exists. Would you like to overwrite it?. [y/n] ... ✔ Done. You should see the files written in path/to/myAction/sdk
Lo snippet di codice riportato sopra mostra come estrarre un'azione dalla bozza del progetto. È anche possibile estrarre da una versione specifica dell'azione. Una versione rappresenta una copia inviata del progetto Actions, di cui potrebbe essere eseguito il deployment in un canale di rilascio.
Il flag --version-id
specifica la versione di cui eseguire il pull.
mkdir -p myAction/sdk
cd myAction/sdk
gactions pull --project-id my-project-id --version-id my-version-id
Pulling version "my-version-id" of the project "my-project-id" from Actions Console... ✔ Done. You should see the files written in path/to/myAction/sdkls -l
total 8 drwxr-x--- 3 user primarygroup 96 May 7 10:00 actions drwxr-x--- 4 user primarygroup 128 May 7 10:00 custom -rw-r----- 1 user primarygroup 15 May 7 10:00 manifest.yaml drwxr-x--- 3 user primarygroup 96 May 7 10:00 settings
Utilizza il flag --force
se vuoi sovrascrivere le copie locali del file senza
ti viene chiesta conferma. Usa il flag --clean
per rimuovere qualsiasi
che non sono presenti nella bozza o nella versione remota. Usali insieme per ottenere
una copia esatta del progetto
della console Actions.
touch local_file.txt
gactions pull --force
Pulling your project files from Draft for a project id: "my-project-id" [WARNING] 2020/05/07 17:34:32 path/to/myAction/sdk/local_file.txt is not present in the draft of your Action. To remove, run pull with --clean flag. ✔ Done. You should see the files written in path/to/myAction/sdkgactions pull --force --clean
Pulling your project files from Draft for a project id: "my-project-id" [WARNING] 2020/05/07 17:43:44 path/to/myAction/sdk/local_file.txt is not present in the draft of your Action. Removing path/to/myAction/sdk/local_file.txt. ✔ Done. You should see the files written in path/to/myAction/sdk
Esegui il push delle azioni alla bozza del progetto della console Actions
Esegui gactions push
per eseguire il push delle modifiche dal file system locale alla bozza di
l'azione nella console. Questo processo può essere utile durante lo sviluppo
visualizzare le modifiche riflesse nella console Actions, senza influire sulle
fornita per i test.
gactions push
Pushing your project files to your Actions console draft for a project id: "my-project-id". This may take a few minutes.
Sending configuration files
Waiting for server to respond.
✔ Done. You can now navigate to the Actions Console: https://console.actions.google.com/project/my-project-id/overview to view your project. If you want to test your changes in the simulator, run "gactions deploy preview"
Importa un progetto esistente da un sistema di gestione del codice sorgente
Se vuoi lavorare su un progetto esistente da una revisione in un controllo della versione di sistema:
- Controlla la revisione della destinazione (dipende dal sistema).
- Sostituisci il valore di
projectId
nel valoresettings.yaml
del progetto. - Facoltativamente, esegui
gactions push
per copiare i file di configurazione locale nella Progetto Actions.
git clone https://github.com/my/repo.git
Cloning into 'repo'... remote: Enumerating objects: 10, done. remote: Counting objects: 100% (10/10), done. remote: Compressing objects: 100% (9/9), done. remote: Total 51 (delta 3), reused 3 (delta 1), pack-reused 41 Receiving objects: 100% (51/51), 36.86 KiB | 3.69 MiB/s, done. Resolving deltas: 100% (11/11), done.cd repo/sdk/
vi settings/settings.yaml
// change the value of `projectId`gactions push
Elenco delle versioni
Esegui gactions versions list
per visualizzare i dettagli sulle versioni dell'Azione.
Per saperne di più sugli stati delle versioni, consulta il riferimento per lo stato.
gactions versions list
Version Status Last Modified By Modified On
1 Created your-email@your-domain.com 2020-09-28 20:22:04
Se lo stato del deployment è "Creazione non riuscita", puoi ottenere maggiori dettagli nella sezione "Release" della console .
Esegui il deployment dei progetti
Il comando gactions deploy
ti consente di eseguire il deployment del tuo progetto per eseguire test nel
Simulatore di azioni o deployment nei canali di rilascio alfa/beta/di produzione.
Anteprima nel simulatore
Esegui gactions deploy preview
per eseguire il deployment dell'azione in "anteprima". In questo modo
testerai l'azione nella console, senza aggiornare effettivamente la versione
il tuo progetto Action o avere un impatto su altri sviluppatori. In altre parole, nessuna delle
le modifiche apportate nel file system locale vengono propagate alle versioni di cui è stato eseguito il deployment
del progetto Actions, ma sono disponibili per il test in una versione di anteprima.
gactions deploy preview
Deploying your project files to your Actions console preview for a project id: "my-project". This may take a few minutes.
Sending configuration files
Waiting for server to respond.
✔ Done. You can now navigate to the Actions Console simulator to test your changes: http://console.actions.google.com/project/my-project/simulator?disableAutoPreview
Crea release
Esegui gactions deploy
per creare release di versione per i canali alfa/beta/di produzione
che puoi gestire tramite la sezione Esegui il deployment della console Actions.
Utilizzala per testare i candidati alla release dell'azione con la versione alpha e/o beta
i canali e sposta il candidato di uscita in produzione quando è soddisfacente
con il feedback.
gactions deploy alpha
Deploying your project files to a actions.channels.Alpha channel for a project id: "my-project-id"
Sending configuration files
Waiting for server to respond.
✔ Done. Your Action was deployed to actions.channels.Alpha channel. You can check status of deployment in the Actions Console.
Elenco dei canali di rilascio
Esegui gactions release-channels list
per visualizzare i dettagli sui canali di rilascio
per l'Azione. Puoi usare questo comando per identificare la versione
di cui è stato eseguito il deployment
o in attesa per ciascun canale.
gactions release-channels list
Release Channel Current Version Pending Version
alpha 1 N/A
Collegamento degli account
I comandi gactions encrypt
e gactions decrypt
ti consentono di amministrare OAuth2
i tuoi client secret. Questi comandi sono specifici per il collegamento degli account.
Cripta i client secret dell'account OAuth2
Esegui gactions encrypt
per aggiungere in modo sicuro client secret per l'account OAuth2 con codice di autenticazione
flussi di collegamento o per criptare i secret esistenti con una nuova chiave di crittografia.
gactions encrypt
Write your secret: *********************
Encrypting your client secret
path/to/myAction/sdk/settings/accountLinkingSecret.yaml already exists. Would you like to overwrite it?. [y/n]
y
✔ Done. Encrypted secret was written to path/to/myAction/sdk/settings/accountLinkingSecret.yaml
Accedi al valore in testo normale dei secret criptati per il collegamento degli account.
Esegui gactions decrypt
se devi accedere temporaneamente al valore in testo normale di
il secret del progetto. Il comando stampa il valore su un file di testo di tua scelta.
Consigliamo che il file di destinazione si trovi al di fuori della cartella principale del progetto
per evitare la perdita accidentale del valore del testo normale.
gactions decrypt ../../burn_after_read.txt
Decrypting your client secret ✔ Done. Check path/above/myActions/burn_after_read.txt to find decrypted client secret.vi ../../burn_after_read.txt
rm ../../burn_after_read.txt