این راهنما به شما نشان می دهد که چگونه از ابزار رابط خط فرمان 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/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/sdkls -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 settingsvi 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 از پیش نویس پروژه را نشان می دهد. همچنین این امکان وجود دارد که از نسخه خاصی از 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/sdkls -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/sdkgactions 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"
یک پروژه موجود را از یک سیستم مدیریت کد منبع وارد کنید
اگر می خواهید روی یک پروژه موجود از یک ویرایش در یک سیستم کنترل نسخه کار کنید:
- بازبینی هدف را بررسی کنید (بستگی به سیستم دارد).
- مقدار
projectId
را درsettings.yaml
پروژه جایگزین کنید. - به صورت اختیاری،
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
را اجرا کنید تا جزئیات مربوط به نسخههای 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.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