panduan pengguna Gaction

Panduan ini menunjukkan cara menggunakan alat antarmuka command line (CLI) Gaction skenario penggunaan umum. Untuk informasi tentang cara membuat Action secara menyeluruh, lihat dokumentasi Build Action Percakapan.

Sinkronisasi proyek

Saat menggunakan Actions SDK, gaction adalah alat untuk menyinkronkan project Action antara konsol Actions dan sistem file lokal Anda.

Operasi gactions pull mengekspor project dari konsol Actions ke sistem file lokal, dan operasi gactions push mendorong project dari ke konsol Actions.

Mendownload Actions dari Konsol Actions

Jalankan gactions pull untuk menyalin konfigurasi project Action ke lokal sistem file.

project-id project yang ingin Anda salin dapat diteruskan pada perintah baris, atau ditulis dalam file settings/settings.yaml. Jika keduanya ada, CLI lebih mementingkan nilai yang diteruskan sebagai opsi.

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

Cuplikan kode di atas menunjukkan cara mengambil Action dari draf project. Penting juga dapat diambil dari versi tertentu Action Anda. Versi mewakili salinan project Action Anda yang dikirimkan, yang dapat di-deploy ke saluran rilis.

Flag --version-id menentukan versi yang akan ditarik.

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

Gunakan tanda --force jika Anda ingin menimpa salinan lokal file tanpa diminta untuk mengonfirmasi. Gunakan flag --clean untuk menghapus yang tidak ada di Draf atau Versi jarak jauh. Gunakan bersama-sama untuk mendapatkan salinan persis project konsol 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

Draf project konsol Actions to Actions

Jalankan gactions push untuk mengirim perubahan dari sistem file lokal ke Draf Action Anda di konsol. Proses ini dapat berguna selama pengembangan untuk melihat perubahan yang tercermin di Konsol Actions, tanpa memengaruhi yang disediakan untuk pengujian.

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"

Mengimpor proyek yang ada dari sistem pengelolaan kode sumber

Jika Anda ingin mengerjakan project yang sudah ada dari revisi dalam kontrol versi sistem:

  1. Periksa revisi target (tergantung pada sistem).
  2. Ganti nilai projectId dalam settings.yaml project.
  3. Secara opsional, jalankan gactions push untuk menyalin file konfigurasi lokal ke Action.
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

Versi listingan

Jalankan gactions versions list untuk melihat detail tentang versi Action Anda. Untuk mempelajari status versi lebih lanjut, lihat referensi untuk Status.

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

Jika status deployment menunjukkan "Pembuatan gagal", Anda bisa mendapatkan detail selengkapnya di Konsol di bagian "Release" bagian.

Men-deploy project

Perintah gactions deploy memungkinkan Anda men-deploy project untuk diuji di Simulator tindakan atau deploy ke saluran rilis alfa/beta/produksi.

Lihat pratinjau di simulator

Jalankan gactions deploy preview untuk men-deploy Action Anda ke "pratinjau", yang memungkinkan Anda menguji Action Anda di konsol, tanpa benar-benar memperbarui versi project Action Anda atau memengaruhi developer lain. Dengan kata lain, tidak ada perubahan yang Anda buat di sistem file lokal akan disebarkan ke versi yang di-deploy project Actions Anda, tetapi tersedia untuk diuji pada versi pratinjau.

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

Membuat rilis

Jalankan gactions deploy guna membuat rilis versi untuk saluran alfa/beta/prod yang dapat Anda kelola melalui bagian Deploy di Konsol Actions. Gunakan untuk menguji kandidat rilis Action Anda dengan alfa dan/atau beta saluran TV, dan memindahkan kandidat rilis ke produksi jika Anda puas dengan masukan.

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.

Mencantumkan saluran rilis

Jalankan gactions release-channels list untuk melihat detail tentang saluran rilis untuk Action Anda. Anda dapat menggunakan perintah ini untuk mengidentifikasi versi yang di-deploy atau tertunda di setiap saluran.

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

Penautan akun

Perintah gactions encrypt dan gactions decrypt memungkinkan Anda mengelola OAuth2 rahasia klien. Perintah ini khusus untuk penautan akun.

Mengenkripsi rahasia klien penautan akun OAuth2

Jalankan gactions encrypt guna menambahkan rahasia klien dengan aman untuk akun OAuth2 kode autentikasi menghubungkan alur, atau mengenkripsi rahasia yang sudah ada dengan kunci enkripsi baru.

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

Akses nilai teks biasa dari rahasia penautan akun terenkripsi.

Jalankan gactions decrypt jika Anda perlu mengakses nilai teks biasa untuk sementara rahasia proyek. Perintah tersebut mencetak nilai ke file teks pilihan Anda. Sebaiknya file tujuan berada di luar folder {i>root<i} project, untuk menghindari kebocoran nilai teks polos yang tidak disengaja.

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