hướng dẫn sử dụng gactions

Hướng dẫn này cho bạn biết cách sử dụng công cụ giao diện dòng lệnh (CLI) g actions trong các trường hợp sử dụng phổ biến. Để biết thông tin về cách xây dựng Hành động hai đầu, hãy xem tài liệu Tạo hành động trò chuyện.

Đồng bộ hoá dự án

Khi bạn dùng SDK Hành động, gHành động là công cụ để đồng bộ hoá các dự án Hành động giữa bảng điều khiển Actions và hệ thống tệp trên máy.

Thao tác gactions pull sẽ xuất dự án từ bảng điều khiển Actions sang hệ thống tệp cục bộ và các thao tác gactions push sẽ đẩy một dự án từ cục bộ hệ thống tệp vào bảng điều khiển Actions.

Tải Actions xuống từ bảng điều khiển Actions

Chạy gactions pull để sao chép cấu hình của dự án Actions vào tệp cục bộ hệ thống tệp.

Bạn có thể truyền project-id của dự án muốn sao chép bằng lệnh hoặc được ghi trong tệp settings/settings.yaml. Nếu có cả hai trường hợp trên, thì CLI sẽ ưu tiên giá trị được truyền dưới dạng tuỳ chọ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/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

Đoạn mã ở trên cho biết cách kéo một Hành động từ bản nháp dự án. Bây giờ bạn cũng có thể lấy một phiên bản cụ thể của Hành động. Một phiên bản mô tả một bản sao đã gửi của dự án Actions (Hành động) của bạn. Bản sao này có thể được triển khai cho một kênh phát hành.

Cờ --version-id chỉ định phiên bản cần kéo.

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

Sử dụng cờ --force nếu bạn muốn ghi đè bản sao trên máy của tệp mà không được yêu cầu xác nhận. Sử dụng cờ --clean để xoá bất kỳ các tệp không có trong Phiên bản hoặc Bản nháp từ xa. Sử dụng kết hợp chúng để có được bản sao chính xác của dự án Actions Console.

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

Bản nháp dự án của bảng điều khiển Actions to Actions

Chạy gactions push để đẩy các thay đổi từ hệ thống tệp cục bộ sang Bản nháp của Hành động của bạn trong bảng điều khiển. Quá trình này có thể hữu ích trong quá trình phát triển để xem các thay đổi được phản ánh trong bảng điều khiển Actions mà không ảnh hưởng đến phiên bản được phân phát để thử nghiệm.

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"

Nhập dự án hiện có từ hệ thống quản lý mã nguồn

Nếu bạn muốn thao tác trên một dự án hiện có từ bản sửa đổi trong hệ thống quản lý phiên bản hệ thống:

  1. Hãy xem bản sửa đổi mục tiêu (tuỳ thuộc vào hệ thống).
  2. Thay thế giá trị của projectId trong settings.yaml của dự án.
  3. Bạn có thể chạy gactions push để sao chép các tệp cấu hình cục bộ vào Dự án Actions (Hành động).
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

Phiên bản trang thông tin

Hãy chạy gactions versions list để xem thông tin chi tiết về các phiên bản của Hành động. Để tìm hiểu thêm về trạng thái phiên bản, hãy tham khảo tài liệu tham khảo về Trạng thái.

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

Nếu trạng thái triển khai là "Không tạo được", bạn có thể xem thêm thông tin giới thiệu về trò chơi đó trong Console trong phần "Bản phát hành" .

Triển khai dự án

Lệnh gactions deploy cho phép bạn triển khai dự án để kiểm thử trong Trình mô phỏng thao tác hoặc triển khai cho các kênh phát hành alpha/beta/chính thức.

Xem trước trong trình mô phỏng

Chạy gactions deploy preview để triển khai Hành động của bạn thành "xem trước", để cho phép bạn kiểm thử Hành động của mình trong bảng điều khiển mà không thực sự cập nhật phiên bản của dự án Hành động của bạn hoặc ảnh hưởng đến các nhà phát triển khác. Nói cách khác, không có sự kiện nào các thay đổi bạn thực hiện trong hệ thống tệp cục bộ sẽ được phổ biến đến các phiên bản đã triển khai của dự án Actions, nhưng bạn có thể thử nghiệm các tính năng này trên phiên bản xem trước.

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

Tạo bản phát hành

Chạy gactions deploy để tạo bản phát hành phiên bản cho kênh alpha/beta/sản phẩm mà bạn có thể quản lý thông qua phần Triển khai trong bảng điều khiển Actions. Sử dụng công cụ này để thử nghiệm các bản phát hành đề xuất của Hành động ở giai đoạn alpha và/hoặc beta kênh và chuyển bản phát hành dùng thử sang giai đoạn phát hành chính thức khi bạn hài lòng với phản hồi.

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.

Kênh phát hành trang thông tin

Chạy gactions release-channels list để xem chi tiết về các kênh phát hành cho Hành động của bạn. Bạn có thể sử dụng lệnh này để xác định phiên bản được triển khai hoặc đang chờ xử lý cho từng kênh.

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

Liên kết tài khoản

Các lệnh gactions encryptgactions decrypt cho phép bạn quản trị OAuth2 mật khẩu ứng dụng khách. Những lệnh này dành riêng cho việc liên kết tài khoản.

Mã hoá mật khẩu ứng dụng khách liên kết tài khoản OAuth2

Chạy gactions encrypt để thêm mật khẩu ứng dụng khách một cách an toàn cho mã xác thực tài khoản OAuth2 các luồng liên kết hoặc mã hoá các thông tin bí mật hiện có bằng một khoá mã hoá mới.

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

Truy cập vào giá trị văn bản thuần tuý của các bí mật liên kết tài khoản đã mã hoá.

Chạy gactions decrypt nếu bạn cần tạm thời truy cập vào giá trị văn bản thuần tuý của bí mật của dự án. Lệnh này sẽ in giá trị vào một tệp văn bản mà bạn chọn. Tệp đích nên nằm bên ngoài thư mục gốc của dự án, để tránh vô tình rò rỉ giá trị văn bản thuần tuý.

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