دليل مستخدم gactions

يشرح لك هذا الدليل كيفية استخدام أداة واجهة سطر الأوامر gactions (CLI) في سيناريوهات الاستخدام الشائعة. للحصول على معلومات عن تطوير "المهام" من البداية إلى النهاية، يُرجى الاطّلاع على مستندات إنشاء الإجراءات الحوارية

مزامنة المشروع

عند استخدام حزمة تطوير البرامج (SDK) للإجراءات، تكون gactions هي الأداة المستخدمة لمزامنة مشاريع الإجراءات. بين وحدة تحكم "المهام" ونظام الملفات المحلي.

تصدِّر عمليات gactions pull مشروعًا من وحدة تحكّم المهام إلى نظام ملفات محلي، وتؤدي عمليات gactions push إلى إرسال مشروع من إلى وحدة تحكم الإجراءات.

تنزيل "المهام" من وحدة تحكّم "المهام"

شغِّل gactions pull لنسخ إعدادات مشروع المهام إلى المحلي. نظام الملفات.

يمكن تمرير project-id من المشروع الذي تريد نسخه في الأمر أو مكتوبًا في ملف settings/settings.yaml. في حالة وجود كليهما، يعطي واجهة سطر الأوامر الأسبقية للقيمة التي يتم تمريرها كخيار.

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

يوضح مقتطف الرمز أعلاه كيفية سحب إجراء من مسودة المشروع. من المهم من الممكن أيضًا سحبها من إصدار معين من الإجراء الخاص بك. إصدار نسخة تم إرسالها من مشروع الإجراءات الخاص بك، والتي يمكن نشرها قناة الإصدار.

تحدد العلامة --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 لإزالة أي من الإعدادات الملفات غير المتوفرة في المسودة أو الإصدار البعيدين. استخدمها معًا للحصول على نسخة مماثلة لمشروع وحدة التحكم في الإجراءات.

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

مسودة مشروع وحدة تحكم "الإجراءات الفورية"

شغِّل gactions push لإرسال التغييرات من نظام الملفات المحلي إلى مسودة الإجراء الخاص بك في وحدة التحكم. يمكن أن تكون هذه العملية مفيدة أثناء التطوير عرض التغييرات التي تظهر في وحدة تحكم "الإجراءات"، بدون التأثير في والنسخة المقدمة للاختبار.

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 لنسخ ملفات الإعداد على الجهاز إلى مشروع الإجراءات.
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" لعرض تفاصيل حول إصدارات الإجراء الخاص بك. لمزيد من المعلومات حول حالات الإصدار، يمكنك الرجوع إلى مرجع State.

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 لنشر الإجراء على "معاينة"، ما يتيح اختبار الإجراء في وحدة التحكم، دون تحديث إصدار بمشروع الإجراء أو التأثير على المطورين الآخرين. بعبارة أخرى، لا شيء من يتم نشر التغييرات التي تجريها في نظام الملفات على الجهاز إلى الإصدارات المنشورة من مشروعك على "المهام"، لكنها متاحة للاختبار على إصدار معاينة.

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 لإنشاء إصدارات لقنوات الإصدار الأولي/التجريبي/الإنتاج التي يمكنك إدارتها من خلال القسم النشر في وحدة تحكّم المهام. استخدِمه لاختبار العناصر المرشّحة للإصدار للإجراء الخاص بك من خلال الإصدار الأولي و/أو التجريبي. والقنوات المرشحة للإصدار إلى مرحلة الإنتاج عندما تكون راضيًا مع الملاحظات.

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" لعرض تفاصيل حول قنوات الإصدار لـ Action. يمكنك استخدام هذا الأمر لتحديد الإصدار أو المنشورة أو في انتظار المراجعة لكل قناة.

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