این راهنما به شما نشان می دهد که چگونه از ابزار رابط خط فرمان gactions (CLI) در سناریوهای استفاده رایج استفاده کنید. برای کسب اطلاعات در مورد ساختن اقدامات انتها به انتها، به مستندات ساخت کنش های مکالمه مراجعه کنید.
همگام سازی پروژه
هنگام استفاده از Actions SDK، gactions ابزار شما برای همگام سازی پروژه های Action بین کنسول Actions و سیستم فایل محلی شما است.
gactions pull یک پروژه را از کنسول Actions به سیستم فایل محلی شما صادر می کند و عملیات gactions push یک پروژه را از سیستم فایل محلی شما به کنسول Actions منتقل می کند.
Actions را از کنسول Actions دانلود کنید
gactions pull اجرا کنید تا پیکربندی یک پروژه Actions را در سیستم فایل محلی کپی کنید.
project-id پروژه ای که می خواهید کپی کنید را می توان در خط فرمان ارسال کرد یا در فایل settings/settings.yaml نوشت. اگر هر دو وجود داشته باشند، CLI به مقدار ارسال شده به عنوان یک گزینه اولویت می دهد.
mkdir -p myAction/sdkcd myAction/sdkgactions pull --project-id my-project-idPulling your project files from Draft for a project id: "my-project-id" ✔ Done. You should see the files written in path/to/myAction/sdkls -ltotal 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 pullPulling 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 از پیش نویس پروژه را نشان می دهد. همچنین این امکان وجود دارد که از نسخه خاصی از Action خود خارج شوید. یک نسخه نشان دهنده یک کپی ارسال شده از پروژه Actions شما است که می تواند در یک کانال انتشار مستقر شود.
پرچم --version-id مشخص می کند که کدام نسخه باید کشیده شود.
mkdir -p myAction/sdkcd myAction/sdkgactions pull --project-id my-project-id --version-id my-version-idPulling 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 -ltotal 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.txtgactions pull --forcePulling 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 --cleanPulling 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"
یک پروژه موجود را از یک سیستم مدیریت کد منبع وارد کنید
اگر می خواهید روی یک پروژه موجود از یک ویرایش در یک سیستم کنترل نسخه کار کنید:
- بازبینی هدف را بررسی کنید (بستگی به سیستم دارد).
- مقدار
projectIdرا درsettings.yamlپروژه جایگزین کنید. - به صورت اختیاری،
gactions pushرا اجرا کنید تا فایل های پیکربندی محلی را در پروژه Actions کپی کنید.
git clone https://github.com/my/repo.gitCloning 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 را اجرا کنید تا جزئیات مربوط به نسخههای Action خود را مشاهده کنید. برای کسب اطلاعات بیشتر در مورد وضعیت نسخه، به مرجع 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 به شما امکان می دهد پروژه خود را برای آزمایش در شبیه ساز Actions یا استقرار در کانال های انتشار آلفا/بتا/تولید اجرا کنید.
پیش نمایش در شبیه ساز
اجرای gactions deploy preview برای استقرار Action خود در «پیشنمایش» اجرا میکند، که به شما امکان میدهد Action خود را در کنسول آزمایش کنید، بدون اینکه واقعاً نسخه پروژه Action خود را بهروزرسانی کنید یا روی دیگر توسعهدهندگان تأثیر بگذارد. به عبارت دیگر، هیچ یک از تغییراتی که در سیستم فایل محلی خود ایجاد می کنید، به نسخه های مستقر شده پروژه 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 برای ایجاد نسخههای منتشر شده برای کانالهای آلفا/بتا/پرود که میتوانید از طریق بخش 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.
فهرست کانال های انتشار
برای مشاهده جزئیات کانالهای انتشار برای Action خود gactions release-channels list را اجرا کنید. می توانید از این دستور برای شناسایی نسخه مستقر شده یا در انتظار هر کانال استفاده کنید.
gactions release-channels list
Release Channel Current Version Pending Version
alpha 1 N/A
پیوند دادن حساب
دستورات gactions encrypt و gactions decrypt به شما امکان می دهند اسرار مشتری OAuth2 را مدیریت کنید. این دستورات مختص پیوند حساب هستند.
رمزگذاری حساب OAuth2 که اسرار مشتری را پیوند می دهد
برای افزودن ایمن اسرار مشتری به جریانهای پیوندی حساب OAuth2 یا برای رمزگذاری اسرار موجود با یک کلید رمزگذاری جدید، gactions encrypt کنید.
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.txtDecrypting your client secret ✔ Done. Check path/above/myActions/burn_after_read.txt to find decrypted client secret.vi ../../burn_after_read.txtrm ../../burn_after_read.txt