guide de l'utilisateur gactions

Ce guide vous explique comment utiliser l'interface de ligne de commande (CLI) gactions dans des scénarios d'utilisation courants. Pour en savoir plus sur la création d'actions de bout en bout, consultez documentation Build d'actions conversationnelles.

Synchronisation des projets

Lorsque vous utilisez le SDK Actions, gactions vous permet de synchroniser les projets Action entre la console Actions et votre système de fichiers local.

Les opérations gactions pull exportent un projet de la console Actions vers votre le système de fichiers local, et les opérations gactions push, qui transfèrent un projet système de fichiers à la console Actions.

Télécharger des actions depuis la console Actions

Exécutez gactions pull pour copier la configuration d'un projet Actions dans le répertoire local système de fichiers.

Le project-id du projet que vous souhaitez copier peut être transmis via la commande ou dans le fichier settings/settings.yaml. Si les deux sont présents, La CLI donne la priorité à la valeur transmise en option.

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/sdk
ls -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
vi 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

L'extrait de code ci-dessus montre comment extraire une action du brouillon du projet. Il est mais aussi à partir d'une version spécifique de votre action. Une version représente une copie envoyée de votre projet Actions, qui peut être déployée sur version disponible.

L'option --version-id spécifie la version à extraire.

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/sdk
ls -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

Utilisez l'indicateur --force si vous souhaitez écraser les copies locales du fichier sans il vous sera demandé une confirmation. Utilisez l'indicateur --clean pour supprimer l'un des éléments locaux. de fichiers qui ne figurent pas dans le brouillon ou la version distant. Combinez-les pour obtenir la copie exacte du projet de la 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/sdk
gactions 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

Brouillon du projet "Actions push vers la console Actions"

Exécutez gactions push pour transférer les modifications du système de fichiers local vers le brouillon de votre action dans la console. Ce processus peut être utile pendant le développement pour vos modifications sont répercutées dans la console Actions, sans affecter qui est diffusée à des fins de 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"

Importer un projet existant à partir d'un système de gestion de code source

Si vous souhaitez travailler sur un projet existant à partir d'une révision dans un système de contrôle des versions système:

  1. Vérifiez la révision cible (en fonction du système).
  2. Remplacez la valeur de projectId dans le settings.yaml du projet.
  3. Si vous le souhaitez, exécutez gactions push pour copier les fichiers de configuration locaux dans le Projet 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

Afficher les versions

Exécutez gactions versions list pour afficher les détails des versions de votre action. Pour en savoir plus sur les états des versions, consultez la documentation de référence sur l'état.

gactions versions list
Version         Status          Last Modified By        Modified On     
1           Created     your-email@your-domain.com  2020-09-28 20:22:04

Si l'état de votre déploiement indique "Échec de la création", vous pouvez obtenir plus d'informations à ce sujet dans la console, sous "Version", .

Déployer des projets

La commande gactions deploy vous permet de déployer votre projet pour le tester dans Simulateur d'actions ou déploiement vers les versions alpha, bêta et de production.

Prévisualiser dans le simulateur

Exécutez gactions deploy preview pour déployer votre action en "preview", ce qui permet vous testez votre action dans la console, sans mettre à jour la version votre projet Action ni impacter d'autres développeurs. En d'autres termes, aucun des les modifications que vous apportez dans votre système de fichiers local sont propagées aux versions déployées. du projet Actions, mais vous pouvez les tester dans une version preview.

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

Créer des versions

Exécuter gactions deploy pour créer des versions alpha, bêta et de production que vous pouvez gérer dans la section Déployer de la console Actions. Utilisez-le pour tester les versions candidates de votre action avec vos versions alpha et/ou bêta canaux de distribution, et de faire passer la version finale en production une fois que vous êtes satisfait avec les commentaires.

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.

Répertorier les canaux de publication

Exécutez gactions release-channels list pour afficher les détails des versions disponibles pour votre action. Vous pouvez utiliser cette commande pour identifier la version déployées ou en attente sur chaque canal.

gactions release-channels list
Release Channel             Current Version             Pending Version
alpha                   1                     N/A

Associer des comptes

Les commandes gactions encrypt et gactions decrypt vous permettent d'administrer OAuth2. les codes secrets du client. Ces commandes sont spécifiques à l'association de comptes.

Chiffrer les codes secrets du client d'association de comptes OAuth2

Exécutez gactions encrypt pour ajouter en toute sécurité les codes secrets du client pour le compte OAuth2 avec code d'autorisation. associer des flux ou chiffrer des secrets existants avec une nouvelle clé de chiffrement.

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

Accéder à la valeur en texte brut des codes secrets chiffrés d'association de comptes.

Exécutez gactions decrypt si vous avez besoin d'accéder temporairement à la valeur en texte brut de le secret du projet. La commande imprime la valeur dans un fichier texte de votre choix. Nous recommandons que le fichier de destination se trouve en dehors du dossier racine du projet, pour éviter toute fuite accidentelle de la valeur en texte brut.

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