In diesem Leitfaden erfahren Sie, wie Sie das Befehlszeilen-Tool von gactions in gängigen Nutzungsszenarien verwenden. Informationen zum vollständigen Erstellen von Aktionen finden Sie in der Dokumentation zum Erstellen von Konversationsaktionen.
Projektsynchronisierung
Wenn Sie das Actions SDK verwenden, können Sie mit gactions Aktionsprojekte zwischen der Actions Console und Ihrem lokalen Dateisystem synchronisieren.
Mit gactions pull
-Vorgängen wird ein Projekt aus der Actions Console in Ihr lokales Dateisystem exportiert. Mit gactions push
-Vorgängen wird ein Projekt von Ihrem lokalen Dateisystem an die Actions Console übertragen.
Aktionen aus der Actions Console herunterladen
Führen Sie gactions pull
aus, um die Konfiguration eines Actions-Projekts in das lokale Dateisystem zu kopieren.
Der project-id
des Projekts, das Sie kopieren möchten, kann an die Befehlszeile übergeben oder in die Datei settings/settings.yaml
geschrieben werden. Wenn beide vorhanden sind, gibt die Befehlszeile 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 obige Code-Snippet zeigt, wie Sie eine Aktion aus einem Projektentwurf abrufen. Es ist auch möglich, aus einer bestimmten Version deiner Aktion abzurufen. Eine Version stellt eine eingereichte Kopie Ihres Actions-Projekts dar, die in einer Release-Version bereitgestellt werden kann.
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 überschreiben möchten, ohne nach Bestätigung gefragt zu werden. Mit dem Flag --clean
können Sie lokale Dateien entfernen, die im Remote-Entwurf oder in der Remote-Version nicht vorhanden sind. Verwenden Sie sie, um eine exakte Kopie des Actions Console-Projekts zu erhalten.
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 den Projektentwurf in der Actions Console senden
Führen Sie gactions push
aus, um Änderungen aus dem lokalen Dateisystem in den Entwurf Ihrer Aktion in der Console zu übertragen. Dieser Prozess kann während der Entwicklung nützlich sein, um Ihre Änderungen in der Actions Console zu sehen, ohne die Version zu beeinträchtigen, die für den Test 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 aus einer Überarbeitung in einem Versionsverwaltungssystem an einem vorhandenen Projekt arbeiten möchten:
- Sehen Sie sich die Zielversion an (abhängig vom System).
- Ersetzen Sie den Wert von
projectId
in dersettings.yaml
des Projekts. - Optional können Sie
gactions push
ausführen, um die lokalen Konfigurationsdateien in das Actions-Projekt zu kopieren.
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 zum 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, finden Sie in der Console im Abschnitt „Release“ weitere Informationen.
Projekte bereitstellen
Mit dem Befehl gactions deploy
können Sie Ihr Projekt für den Test im Actions-Simulator oder für die Alpha-/Beta-/Produktionsversionen bereitstellen.
Vorschau im Simulator
Führe gactions deploy preview
aus, um deine Aktion für die Vorabversion bereitzustellen. So kannst du deine Aktion in der Konsole testen, ohne die Version deines Aktionsprojekts zu aktualisieren oder andere Entwickler zu beeinträchtigen. Mit anderen Worten: Keine der Änderungen, die Sie in Ihrem lokalen Dateisystem vornehmen, werden an die bereitgestellten Versionen Ihres Actions-Projekts weitergegeben. 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 Versionsreleases für Alpha-/Beta-/Produktversionen zu erstellen, die Sie in der Actions Console im Abschnitt Deploy (Bereitstellen) verwalten können.
Du kannst damit Releasekandidaten deiner Aktion mit deinen Alpha- und/oder Betakanälen testen und den Releasekandidaten in die Produktion verschieben, wenn du mit dem Feedback zufrieden bist.
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 Ihrer Aktion aufzurufen. Mit diesem Befehl können Sie die für jeden Kanal bereitgestellte oder ausstehende Version ermitteln.
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-Clientschlüssel verwalten. Diese Befehle gelten speziell für die Kontoverknüpfung.
Clientschlüssel zur OAuth2-Kontoverknüpfung verschlüsseln
Führen Sie gactions encrypt
aus, um Clientschlüssel sicher für OAuth2-Kontoverknüpfungsabläufe mit Autorisierungscode 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
Auf Nur-Text-Wert von Secrets zur Kontoverknüpfung zugreifen.
Führen Sie gactions decrypt
aus, wenn Sie vorübergehend auf den Nur-Text-Wert des Projekt-Secrets zugreifen müssen. Der Befehl gibt den Wert in einer Textdatei Ihrer Wahl aus.
Wir empfehlen, sich die Zieldatei außerhalb des Stammordners des Projekts zu befinden, um ein versehentliches Verlust des reinen Textwerts 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