In diesem Leitfaden erfahren Sie, wie Sie das gactions-Befehlszeilentool verwenden in gängigen Nutzungsszenarien. Informationen zur durchgängigen Erstellung von Aktionen findest du unter der Dokumentation zum Build für Conversational Actions
Projektsynchronisierung
Wenn du das Actions SDK verwendest, kannst du Action-Projekte mit gactions synchronisieren zwischen der Actions Console und Ihrem lokalen Dateisystem.
gactions pull
-Vorgänge exportieren ein Projekt von der Actions Console in Ihr
lokales Dateisystem und gactions push
-Vorgänge übertragen ein Projekt von Ihrem lokalen
mit der Actions Console verknüpft.
Aktionen aus der Actions Console herunterladen
Führen Sie gactions pull
aus, um die Konfiguration eines Actions-Projekts auf das lokale Projekt zu kopieren
Dateisystem.
Die project-id
des Projekts, das Sie kopieren möchten, können im Befehl übergeben werden.
oder in die Datei settings/settings.yaml
geschrieben. Wenn beide vorhanden sind,
Die Befehlszeile gibt dem als Option übergebenen Wert Vorrang.
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
Das Code-Snippet oben zeigt, wie eine Aktion aus dem Projektentwurf abgerufen wird. Es ist Du kannst auch Daten aus einer bestimmten Version deiner Aktion abrufen. Eine Version stellt eine eingereichte Kopie Ihres Actions-Projekts dar, das auf einem Release-Version.
Das Flag --version-id
gibt an, welche Version abgerufen werden soll.
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
Verwenden Sie das Flag --force
, wenn Sie lokale Kopien der Datei ohne
um Bestätigung gebeten. Verwenden Sie das Flag --clean
, um lokale Elemente zu entfernen.
Dateien, die nicht im Remote-Entwurf oder in der Remote-Version vorhanden sind. Wenn Sie sie zusammen verwenden, erhalten Sie
exakte Kopie des Actions Console-Projekts.
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
Aktionen an Actions Console-Projektentwurf übertragen
Führen Sie gactions push
aus, um Änderungen aus dem lokalen Dateisystem in den Entwurf von
Aktion in der Konsole aus. Dieser Prozess kann während der Entwicklung nützlich sein,
Ihre Änderungen werden in der Actions Console angezeigt, ohne dass sich dies auf
die zum Testen bereitgestellt wird.
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"
Vorhandenes Projekt aus einem Quellcode-Verwaltungssystem importieren
Wenn Sie an einem vorhandenen Projekt aus einer Version in einer Versionsverwaltung arbeiten möchten System:
- Sehen Sie sich die Zielversion an (abhängig vom System).
- Ersetzen Sie den Wert von
projectId
in dersettings.yaml
des Projekts. - Führen Sie optional
gactions push
aus, um die lokalen Konfigurationsdateien in den Actions-Projekt.
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
Versionen auflisten
Führen Sie gactions versions list
aus, um Details zu Versionen Ihrer Aktion aufzurufen.
Weitere Informationen zu Versionsstatus finden Sie in der Referenz zu Status.
gactions versions list
Version Status Last Modified By Modified On
1 Created your-email@your-domain.com 2020-09-28 20:22:04
Wenn der Status Ihrer Bereitstellung „Erstellung fehlgeschlagen“ lautet, erhalten Sie weitere Details in der Konsole unter „Release“ .
Projekte bereitstellen
Mit dem Befehl gactions deploy
können Sie Ihr Projekt zum Testen im
Actions-Simulator oder Bereitstellung in Alpha-, Beta- und Produktionsversionen
Vorschau im Simulator
Führen Sie gactions deploy preview
aus, um die Aktion in der Vorschau bereitzustellen. Dadurch können Sie
testen Sie Ihre Aktion in der Konsole, ohne die Version
oder andere Entwickelnde beeinträchtigen. Mit anderen Worten: Keine der
Änderungen, die Sie in Ihrem lokalen Dateisystem vornehmen, werden auf die bereitgestellten Versionen angewendet
Ihres Actions-Projekts. Sie können jedoch in einer Vorschauversion getestet werden.
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
Releases erstellen
Führen Sie gactions deploy
aus, um Versions-Releases für Alpha-, Beta- und Produktionskanäle zu erstellen.
die Sie über den Abschnitt Deploy (Bereitstellen) in der Actions Console verwalten können.
Damit kannst du Releasekandidaten deiner Aktion mit deinem Alpha- und/oder Betatest testen
und den Release-Kandidaten in die Produktion verschieben, wenn Sie zufrieden sind
Feedback geben.
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.
Release-Versionen auflisten
Führen Sie gactions release-channels list
aus, um Details zu den Release-Versionen anzusehen
für Ihre Aktion. Mit diesem Befehl können Sie die Version
bereitgestellt oder ausstehend ist.
gactions release-channels list
Release Channel Current Version Pending Version
alpha 1 N/A
Kontoverknüpfung
Mit den Befehlen gactions encrypt
und gactions decrypt
können Sie OAuth2 verwalten.
Clientschlüssel. Diese Befehle gelten speziell für die Kontoverknüpfung.
Clientschlüssel für OAuth2-Kontoverknüpfung verschlüsseln
Führen Sie gactions encrypt
aus, um Clientschlüssel für das OAuth2-Konto mit Authentifizierungscode sicher hinzuzufügen
oder vorhandene Secrets mit einem neuen Verschlüsselungsschlüssel zu verschlüsseln.
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
Zugriff auf Nur-Text-Werte verschlüsselter Kontoverknüpfungs-Secrets.
Führen Sie gactions decrypt
aus, wenn Sie vorübergehend auf den Nur-Text-Wert von
das Geheimnis des Projekts. Der Befehl gibt den Wert in einer Textdatei Ihrer Wahl aus.
Wir empfehlen, dass sich die Zieldatei außerhalb des Stammordners des Projekts befindet.
um versehentliche Datenlecks zu vermeiden.
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