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/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
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/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
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/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
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:
- Vérifiez la révision cible (en fonction du système).
- Remplacez la valeur de
projectId
dans lesettings.yaml
du projet. - 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