Bu kılavuzda, gactions komut satırı arayüzü (CLI) aracının yaygın kullanım senaryolarında nasıl kullanılacağı gösterilmektedir. Uçtan uca İşlem oluşturma hakkında bilgi için Conversational Actions Derleme dokümanlarına bakın.
Proje senkronizasyonu
Actions SDK'sını kullanırken gactions, Action projelerini Actions konsolu ve yerel dosya sisteminiz arasında senkronize etmek için kullanabileceğiniz araçtır.
gactions pull
işlemleri, bir projeyi Actions konsolundan yerel dosya sisteminize aktarır ve gactions push
işlemleri, bir projeyi yerel dosya sisteminizden Actions konsoluna aktarır.
Actions Console'dan Actions'ı indirme
Bir Actions projesinin yapılandırmasını yerel dosya sistemine kopyalamak için gactions pull
komutunu çalıştırın.
Kopyalamak istediğiniz projenin project-id
değeri, komut satırında iletilebilir veya settings/settings.yaml
dosyasına yazılabilir. Her ikisi de mevcutsa KSA, seçenek olarak iletilen değere öncelik verir.
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
Yukarıdaki kod snippet'i, proje taslağından bir Action'ın nasıl alınacağını gösterir. İşleminizin belirli bir sürümünden de çekmeniz mümkündür. Sürüm, Actions projenizin gönderilen ve bir sürüm kanalına dağıtılabilen kopyasını temsil eder.
--version-id
işareti, hangi sürümün alınacağını belirtir.
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
Onay istenmeden dosyanın yerel kopyalarının üzerine yazmak istiyorsanız --force
işaretini kullanın. Uzak Taslak veya Sürüm'de bulunmayan yerel dosyalardan herhangi birini kaldırmak için --clean
işaretini kullanın. Actions Console projesinin tam bir kopyasını almak için
bunları birlikte kullanın.
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
İşlemler'i İşlemler konsolu proje taslağına aktarma
Yerel dosya sistemindeki değişiklikleri konsolda İşleminizin Taslağı'na aktarmak için gactions push
komutunu çalıştırın. Bu işlem, geliştirme sırasında test için sunulan sürümü etkilemeden Actions konsoluna yansıtılan değişiklikleri görüntülemek için yararlı olabilir.
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"
Kaynak kodu yönetim sisteminden mevcut bir projeyi içe aktarma
Bir sürüm kontrol sistemindeki düzeltmeden mevcut bir proje üzerinde çalışmak isterseniz:
- Hedef düzeltmeyi kontrol edin (sisteme bağlıdır).
- Projenin
settings.yaml
bölümündeprojectId
değerini değiştirin. - İsteğe bağlı olarak, yerel yapılandırma dosyalarını Actions projesine kopyalamak için
gactions push
komutunu çalıştırın.
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
Listeleme sürümleri
İşleminizin sürümleriyle ilgili ayrıntıları görüntülemek için gactions versions list
komutunu çalıştırın.
Sürüm durumları hakkında daha fazla bilgi edinmek için Durum referansına bakın.
gactions versions list
Version Status Last Modified By Modified On
1 Created your-email@your-domain.com 2020-09-28 20:22:04
Dağıtımınızın durumu "Oluşturulamadı" yazıyorsa Console'daki "Sürüm" bölümünde bununla ilgili daha fazla bilgi edinebilirsiniz.
Projeleri dağıtma
gactions deploy
komutu, projenizi İşlemler simülatöründe test etmek için dağıtmanıza veya alfa/beta/üretim sürümü kanallarına dağıtmanıza olanak tanır.
Simülasyon aracında önizleme
İşleminizi "önizleme" olarak dağıtmak için gactions deploy preview
çalıştırın. Bu sayede, Action projenizin sürümünü gerçekten güncellemeden veya diğer geliştiricileri etkilemeden İşleminizi konsolda test edebilirsiniz. Diğer bir deyişle, yerel dosya sisteminizde yaptığınız değişikliklerin hiçbiri Actions projenizin dağıtılmış sürümlerine yayılmaz ancak bunlar önizleme sürümünde test edilebilir.
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
Sürüm oluşturma
Actions konsolunun Dağıtma bölümünden yönetebileceğiniz alfa/beta/üretim kanalları için sürüm sürümleri oluşturmak üzere gactions deploy
komutunu çalıştırın.
İşleminizin sürüm adaylarını alfa ve/veya beta kanallarınızla test etmek ve geri bildirimden memnun kaldığınızda sürüm adayını üretime taşımak için bu API'yi kullanın.
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.
Sürüm kanallarını listeleme
İşleminizin sürüm kanallarıyla ilgili ayrıntıları görüntülemek için gactions release-channels list
öğesini çalıştırın. Her bir kanala dağıtılan veya beklemede olan sürümü belirlemek için bu komutu kullanabilirsiniz.
gactions release-channels list
Release Channel Current Version Pending Version
alpha 1 N/A
Hesap bağlama
gactions encrypt
ve gactions decrypt
komutları, OAuth2 istemci gizli anahtarlarını yönetmenize olanak tanır. Bu komutlar hesap bağlama işlemine özeldir.
OAuth2 hesap bağlama istemci gizli anahtarlarını şifreleme
Yetkilendirme kodu OAuth2 hesap bağlama akışları için istemci gizli anahtarlarını güvenli bir şekilde eklemek veya mevcut gizli anahtarları yeni bir şifreleme anahtarıyla şifrelemek için gactions encrypt
komutunu çalıştırın.
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
Şifrelenmiş hesap bağlama gizli anahtarlarının düz metin değerine erişin.
Proje gizli anahtarının düz metin değerine geçici olarak erişmeniz gerekiyorsa gactions decrypt
öğesini çalıştırın. Komut, değeri seçtiğiniz bir metin dosyasına yazdırır.
Düz metin değerinin yanlışlıkla sızdırılmasını önlemek için hedef dosyanın, projenin kök klasörünün dışında olmasını öneririz.
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