คู่มือผู้ใช้ gactions

คำแนะนำนี้แสดงวิธีใช้เครื่องมือบรรทัดคำสั่ง gactions (CLI) ในสถานการณ์การใช้งานทั่วไป สำหรับข้อมูลเกี่ยวกับการสร้างการดำเนินการจากต้นทางถึงปลายทาง โปรดดู เอกสารสร้างการดำเนินการแบบการสนทนา (Conversational Actions)

การซิงค์โปรเจ็กต์

เมื่อใช้ Actions SDK gactions จะเป็นเครื่องมือในการซิงค์โปรเจ็กต์ Action ระหว่างคอนโซล Actions และระบบไฟล์ในเครื่องของคุณ

การดำเนินการ gactions pull จะส่งออกโปรเจ็กต์จากคอนโซล Actions ไปยัง ระบบไฟล์ในเครื่อง และการดำเนินการ gactions push จะพุชโปรเจ็กต์จากในเครื่อง ไปยังคอนโซล Actions

ดาวน์โหลดการดําเนินการจากคอนโซล Actions

เรียกใช้ gactions pull เพื่อคัดลอกการกำหนดค่าของโปรเจ็กต์ Actions ไปยังในเครื่อง ระบบไฟล์

ส่ง project-id ของโปรเจ็กต์ที่คุณต้องการคัดลอกในคำสั่งได้ หรือเขียนไว้ในไฟล์ settings/settings.yaml หากมีทั้งคู่ ค่า โดย CLI จะให้ความสำคัญกับค่าที่ส่งผ่านเป็นตัวเลือก

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

ข้อมูลโค้ดด้านบนแสดงวิธีดึงการดำเนินการจากแบบร่างของโปรเจ็กต์ ตอนนี้ ยังสามารถดึงข้อมูลจาก Action เวอร์ชันที่เจาะจง เวอร์ชัน แสดงสำเนาที่ส่งของโปรเจ็กต์ Actions ซึ่งอาจนำไปติดตั้งใช้งานกับ เวอร์ชันการเผยแพร่

แฟล็ก --version-id จะระบุเวอร์ชันที่จะดึงข้อมูล

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

ใช้แฟล็ก --force หากต้องการเขียนทับสำเนาไฟล์ในเครื่องโดยที่ไม่มี กำลังขอให้ยืนยัน ใช้แฟล็ก --clean เพื่อนำรายการในเครื่องออก ที่ไม่มีในฉบับร่างหรือเวอร์ชันระยะไกล ใช้พร้อมกันเพื่อ สำเนาของโปรเจ็กต์คอนโซล 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

พุชฉบับร่างของโปรเจ็กต์คอนโซล Actions ไปยัง Actions

เรียกใช้ gactions push เพื่อส่งการเปลี่ยนแปลงจากระบบไฟล์ในเครื่องไปยังฉบับร่างของ การดำเนินการของคุณในคอนโซล ซึ่งจะเป็นประโยชน์ในระหว่างการพัฒนาเพื่อ ดูการเปลี่ยนแปลงของคุณที่แสดงในคอนโซล Actions โดยไม่ส่งผลกระทบต่อ เวอร์ชันที่เผยแพร่สำหรับการทดสอบ

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"

นําเข้าโปรเจ็กต์ที่มีอยู่จากระบบจัดการซอร์สโค้ด

หากต้องการทำงานในโปรเจ็กต์ที่มีอยู่จากการแก้ไขในการควบคุมเวอร์ชัน ระบบ:

  1. ตรวจสอบการแก้ไขเป้าหมาย (ขึ้นอยู่กับระบบ)
  2. แทนที่ค่า projectId ใน settings.yaml ของโปรเจ็กต์
  3. (ไม่บังคับ) เรียกใช้ gactions push เพื่อคัดลอกไฟล์การกำหนดค่าในเครื่องไปยังไฟล์ Actions
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

เวอร์ชันของรายชื่อ

เรียกใช้ gactions versions list เพื่อดูรายละเอียดเกี่ยวกับเวอร์ชันของการดำเนินการของคุณ ดูข้อมูลเพิ่มเติมเกี่ยวกับสถานะของเวอร์ชันได้จากข้อมูลอ้างอิงในส่วนสถานะ

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

หากสถานะการทำให้ใช้งานได้ระบุว่า "สร้างไม่สำเร็จ" คุณดูรายละเอียดเพิ่มเติมได้ เกี่ยวกับรายการดังกล่าวในคอนโซลใต้ "รุ่น"

ทำให้โปรเจ็กต์ใช้งานได้

คำสั่ง gactions deploy ช่วยให้คุณทำให้โปรเจ็กต์ใช้งานได้เพื่อทดสอบใน เครื่องมือจำลองการดำเนินการหรือทำให้ใช้งานได้ในเวอร์ชันอัลฟ่า/เบต้า/เวอร์ชันที่ใช้งานจริง

แสดงตัวอย่างในเครื่องจำลอง

เรียกใช้ gactions deploy preview เพื่อทำให้การดำเนินการของคุณ "แสดงตัวอย่าง" ใช้งานได้ ซึ่งจะช่วยให้ คุณทดสอบการดำเนินการของคุณในคอนโซล โดยไม่อัปเดตเวอร์ชันของ โปรเจ็กต์การดำเนินการของคุณหรือสร้างผลกระทบ ต่อนักพัฒนาซอฟต์แวร์รายอื่นๆ กล่าวคือ ไม่มี การเปลี่ยนแปลงที่คุณทำในระบบไฟล์ในเครื่องจะเผยแพร่ไปยังเวอร์ชันที่ทำให้ใช้งานได้ ของโปรเจ็กต์ Actions แต่สามารถทดสอบในเวอร์ชันตัวอย่างได้

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

สร้างรุ่น

เรียกใช้ gactions deploy เพื่อสร้างรุ่นของเวอร์ชันสำหรับเวอร์ชันอัลฟ่า/เบต้า/โปรดักชัน ที่คุณจัดการได้ผ่านส่วนทำให้ใช้งานได้ในคอนโซล Actions ใช้เวอร์ชันอัลฟ่าและ/หรือเบต้าเพื่อทดสอบตัวเลือกที่เผยแพร่ของการดำเนินการของคุณ ช่องต่างๆ และย้ายผู้ที่รอการพิจารณา ไปเป็นเวอร์ชันที่ใช้งานจริงเมื่อคุณพอใจ พร้อมกับความคิดเห็น

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.

เวอร์ชันการเผยแพร่ข้อมูลผลิตภัณฑ์

เรียกใช้ gactions release-channels list เพื่อดูรายละเอียดเกี่ยวกับเวอร์ชันการเผยแพร่ สำหรับการดำเนินการของคุณ คุณใช้คําสั่งนี้เพื่อระบุเวอร์ชันได้ ทำให้ใช้งานได้หรือรอดำเนินการในแต่ละช่องทาง

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

การลิงก์บัญชี

คำสั่ง gactions encrypt และ gactions decrypt ช่วยให้คุณดูแลระบบ OAuth2 ได้ รหัสลับไคลเอ็นต์ คำสั่งเหล่านี้ใช้เฉพาะกับการลิงก์บัญชีเท่านั้น

เข้ารหัสรหัสลับไคลเอ็นต์การลิงก์บัญชี OAuth2

เรียกใช้ gactions encrypt เพื่อเพิ่มรหัสลับไคลเอ็นต์สำหรับบัญชี OAuth2 ของรหัสการให้สิทธิ์อย่างปลอดภัย การลิงก์ขั้นตอน หรือเข้ารหัสข้อมูลลับที่มีอยู่ด้วยคีย์การเข้ารหัสใหม่

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

เข้าถึงค่าข้อความธรรมดาของข้อมูลลับในการลิงก์บัญชีที่เข้ารหัส

เรียกใช้ gactions decrypt หากคุณต้องการเข้าถึงค่าข้อความธรรมดาของ ข้อมูลลับของโปรเจ็กต์ คำสั่งจะพิมพ์ค่าลงในไฟล์ข้อความที่คุณเลือก เราขอแนะนำให้ไฟล์ปลายทางอยู่นอกโฟลเดอร์รูทของโปรเจ็กต์ เพื่อป้องกันการรั่วไหลของค่าข้อความธรรมดาโดยไม่ได้ตั้งใจ

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