En esta guía, se muestra cómo usar la herramienta de la interfaz de línea de comandos (CLI) de gactions en situaciones de uso comunes. Para obtener información sobre la compilación de acciones de extremo a extremo, consulta la documentación de compilación de acciones conversacionales.
Sincronización de proyectos
Cuando se usa el SDK de Actions, gactions es tu herramienta para sincronizar proyectos de acción entre la Consola de Actions y tu sistema de archivos local.
Las operaciones gactions pull
exportan un proyecto de la Consola de Actions a tu
el sistema de archivos local y las operaciones de gactions push
envían un proyecto desde tu entorno local
de archivos a la Consola de Actions.
Descargar Actions de la Consola de Actions
Ejecuta gactions pull
para copiar la configuración de un proyecto de Actions en la ubicación local.
un sistema de archivos completo.
El project-id
del proyecto que quieres copiar se puede pasar en el comando
la línea de comandos o se escribe en el archivo settings/settings.yaml
. Si ambos están presentes, el
CLI da prioridad al valor que se pasa como opción.
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
En el fragmento de código anterior, se muestra cómo extraer una acción del borrador del proyecto. Es también es posible obtener de una versión específica de tu acción. Una versión representa una copia enviada de tu proyecto de acciones, que podría implementarse en un canal de versiones.
La marca --version-id
especifica qué versión extraer.
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
Usa la marca --force
si deseas reemplazar las copias locales del archivo sin
en el que se te pida confirmación. Usa la marca --clean
para quitar las palabras clave
que no están presentes en el borrador o la versión remotos. Úsalos juntos para obtener una
copia exacta del proyecto de la Consola de 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
Enviar acciones al borrador del proyecto de la Consola de Actions
Ejecuta gactions push
para enviar cambios del sistema de archivos local al borrador de
tu Acción en la consola. Este proceso puede ser útil durante el desarrollo para
ver tus cambios reflejados en la Consola de Actions sin afectar el
que se entrega para realizar pruebas.
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 proyecto existente desde un sistema de administración de código fuente
Si deseas trabajar en un proyecto existente a partir de una revisión en un control de versión sistema:
- Comprueba la revisión de destino (depende del sistema).
- Reemplaza el valor de
projectId
en elsettings.yaml
del proyecto. - De manera opcional, ejecuta
gactions push
para copiar los archivos de configuración local en el Proyecto de acciones.
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
Enumerar versiones
Ejecuta gactions versions list
para ver detalles de las versiones de tu acción.
Para obtener más información sobre los estados de las versiones, consulta la referencia del Estado.
gactions versions list
Version Status Last Modified By Modified On
1 Created your-email@your-domain.com 2020-09-28 20:22:04
Si el estado de tu implementación indica “Creation failed”, puedes obtener más detalles en la consola, en la sección "Versión" sección.
Implementa proyectos
El comando gactions deploy
te permite implementar tu proyecto para probarlo en
Simulador de acciones o implementación en canales de versiones alfa, beta o de producción.
Vista previa en el simulador
Ejecuta gactions deploy preview
para implementar tu acción en la "vista previa", lo que permite
prueba tu acción en la consola, sin tener que actualizar la versión del
tu proyecto de Actions o que afecte a otros desarrolladores. En otras palabras, ninguno de los
los cambios que realices en tu sistema de archivos local se propagan a las versiones implementadas
de tu proyecto de Acciones, pero están disponibles para probarlos en una versión preliminar.
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 versiones
Ejecuta gactions deploy
para crear versiones de versiones para los canales alfa, beta o de producción.
que puedes administrar en la sección Implementar de la Consola de Actions.
Úsalo para probar versiones candidatas de tu acción en las versiones alfa o beta.
y trasladar la versión candidata a producción cuando estés conforme
con los comentarios.
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.
Muestra una lista de los canales de versiones
Ejecuta gactions release-channels list
para ver los detalles de los canales de versiones
para tu acción. Puedes usar este comando para identificar la versión
implementados o pendientes en cada canal.
gactions release-channels list
Release Channel Current Version Pending Version
alpha 1 N/A
Vinculación de las cuentas
Los comandos gactions encrypt
y gactions decrypt
te permiten administrar OAuth2.
Secrets del cliente. Estos comandos son específicos para la vinculación de cuentas.
Encripta los secretos del cliente para vincular cuentas de OAuth2
Ejecuta gactions encrypt
para agregar de forma segura secretos del cliente para la cuenta de OAuth2 del código de autenticación.
vincular flujos o encriptar los Secrets existentes con una nueva clave de encriptación.
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
Accede al valor de texto sin formato de los secretos encriptados de vinculación de cuentas.
Ejecuta gactions decrypt
si necesitas acceder temporalmente al valor de texto sin formato de
del secreto del proyecto. El comando imprime el valor en un archivo de texto que elijas.
Recomendamos que el archivo de destino esté fuera de la carpeta raíz del proyecto
para evitar filtraciones accidentales del valor de texto sin formato.
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