Google Spreadsheet adalah solusi spreadsheet berbasis cloud yang mendukung kolaborasi real-time dan menyediakan alat untuk memvisualisasikan, memproses, dan mengomunikasikan data.
Tutorial ini menunjukkan cara memicu Workflows dari Spreadsheet.
Tujuan
Dalam tutorial ini, Anda akan:
- Gunakan Google Formulir, sebuah solusi survei dan kuesioner berbasis cloud, untuk membuat formulir yang dapat mengirimkan permintaan membuat instance virtual machine (VM).
- Tautkan spreadsheet Google Spreadsheet ke formulir untuk mengumpulkan dan menyimpan respons apa pun.
- Gunakan Google Apps Script, platform JavaScript berbasis cloud yang memungkinkan Anda membuat, membaca, dan mengedit produk Google Workspace secara terprogram, untuk memicu alur kerja setiap kali permintaan disetujui melalui pembaruan pada spreadsheet.
- Deploy alur kerja yang memanggil konektor Compute Engine API dan membuat instance VM Compute Engine berdasarkan spesifikasi yang dikumpulkan melalui formulir. Konektor menyederhanakan panggilan Google Cloud API lainnya. Pelajari lebih lanjut konektor Workflows.
- Uji seluruh proses dan pastikan bahwa instance VM dibuat seperti yang diharapkan.
Biaya
Dalam dokumen ini, Anda menggunakan komponen Google Cloud yang dapat ditagih berikut:
Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda,
gunakan kalkulator harga.
Tutorial ini juga menggunakan Google Workspace. Layanan tingkat bisnis yang tidak disertakan dengan aplikasi konsumen gratis Google dapat ditagih.
Sebelum memulai
Anda dapat menjalankan beberapa perintah berikut di Konsol Google Cloud, atau dengan menggunakan Google Cloud CLI di terminal atau Cloud Shell.
Batasan keamanan yang ditentukan oleh organisasi mungkin mencegah Anda menyelesaikan langkah-langkah berikut. Untuk mengetahui informasi pemecahan masalah, lihat Mengembangkan aplikasi di lingkungan Google Cloud yang terbatas.
Konsol
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda. Pelajari cara memeriksa apakah penagihan telah diaktifkan pada suatu project.
Aktifkan Compute Engine dan Workflows API.
Project baru yang telah mengaktifkan Compute Engine API memiliki akun layanan default Compute Engine yang dibuat dengan peran Editor dasar Identity and Access Management (IAM), dan dengan format email berikut:
PROJECT_NUMBER-compute@developer.gserviceaccount.com
Anda dapat menemukan nomor project di halaman Welcome pada Konsol Google Cloud.
Catat akun layanan ini karena Anda akan mengaitkannya dengan alur kerja dalam tutorial ini untuk tujuan pengujian.
gcloud
Di konsol Google Cloud, aktifkan Cloud Shell.
Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.
Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda. Pelajari cara memeriksa apakah penagihan telah diaktifkan pada suatu project.
Aktifkan Compute Engine dan Workflows API.
gcloud services enable \ compute.googleapis.com \ workflows.googleapis.com
Project baru yang telah mengaktifkan Compute Engine API memiliki akun layanan default Compute Engine yang dibuat dengan peran Editor dasar IAM, dan dengan format email berikut:
PROJECT_NUMBER-compute@developer.gserviceaccount.com
Anda dapat mengambil nomor project:
gcloud projects describe PROJECT_ID
Catat akun layanan ini karena Anda akan mengaitkannya dengan alur kerja dalam tutorial ini untuk tujuan pengujian.
Buat formulir untuk meminta instance VM
Buat formulir yang dapat digunakan untuk mengirim permintaan guna membuat instance virtual machine (VM) Compute Engine. Secara default, saat Anda membuat formulir melalui Google Formulir, formulir tersebut akan disimpan di Google Drive.
- Buka forms.google.com.
- Klik Kosong
.
Formulir baru akan terbuka.
- Buat formulir dengan lima bagian yang wajib diisi. Formulir akan terlihat
seperti berikut:
Lihat contoh formulir
Nama perangkat Teks jawaban singkat
Zone {i>Dropdown<i}:
- us-central1-a
- us-central1-b
- us-central1-c
- us-central1-f
Type {i>Dropdown<i}:
- e2-micro
- e2-small
- e2-medium
- e2-standard-2
- e2-standard-4
Ukuran disk (GB) Teks jawaban singkat
Sistem operasi {i>Dropdown<i}:
- debian-10
- centos-stream-9
- cos-93-lts
- cos-97-lts
- Aktifkan pengumpulan email untuk mencatat alamat email orang yang mengisi formulir Anda:
- Klik Setelan.
- Luaskan bagian Responses.
- Klik tombol Kumpulkan alamat email.
Tautkan spreadsheet ke formulir Anda
Setelah Anda membuat formulir, tautkan spreadsheet ke formulir tersebut agar Anda dapat menyimpan respons formulir ke dalam spreadsheet tersebut. Spreadsheet akan disimpan di Drive.
- Buka formulir Anda di Formulir.
- Klik Tanggapan.
- Klik Tautkan ke Spreadsheet.
- Pada dialog Select destination for response, pilih Create a new spreadsheet.
Klik Create.
Spreadsheet yang ditautkan akan terbuka.
Di kolom H, tambahkan judul Approved?.
Tempatkan kursor Anda di baris pertama kolom H, lalu pilih Insert > Checkbox.
{i>Spreadsheet <i}akan tampak seperti berikut ini:
Setiap kali sheet diperbarui dengan respons, kotak centang juga akan muncul di baris untuk respons tersebut.
Memperluas Google Spreadsheet menggunakan Apps Script
Apps Script memungkinkan Anda membuat, membaca, dan mengedit Spreadsheet secara terprogram. Sebagian besar skrip yang dirancang untuk Spreadsheet memanipulasi array untuk berinteraksi dengan sel, baris, dan kolom dalam spreadsheet. Untuk pengantar penggunaan Apps Script dengan Spreadsheet, lihat Panduan memulai fungsi kustom.
Membuat project Apps Script dari Spreadsheet:
- Buka spreadsheet Spreadsheet Anda.
- Pilih Ekstensi > Apps Script.
- Di editor skrip, klik Project tanpa judul.
- Beri nama project Anda, lalu klik Ganti nama.
Skrip Anda kini terikat dengan spreadsheet, sehingga skrip dapat mengubah antarmuka pengguna atau merespons saat spreadsheet dibuka.
Project skrip mewakili kumpulan file dan resource Apps Script. File kode dalam project skrip memiliki ekstensi
.gs
.Anda dapat menggunakan Apps Script untuk menulis fungsi kustom yang dapat digunakan di Spreadsheet seperti fungsi bawaan. Fungsi kustom dibuat menggunakan JavaScript standar. Buat fungsi:
- Buka project Apps Script.
- Klik Editor .
- File skrip akan muncul sebagai file project bernama
Code.gs
. Untuk mengedit {i>file<i}, pilih file tersebut. Ganti kode apa pun di editor skrip dengan kode berikut yang membaca data di spreadsheet Anda dan meneruskannya sebagai input untuk eksekusi alur kerja:
Ganti
your-project-id
dengan ID project Google Cloud Anda.Anda dapat menemukan project ID di halaman Welcome pada Konsol Google Cloud.
Klik Simpan
.
Pemicu yang dapat diinstal Apps Script memungkinkan project skrip mengeksekusi fungsi yang ditentukan saat kondisi tertentu terpenuhi, seperti saat spreadsheet dibuka atau diedit. Buat pemicu:
- Buka project Apps Script.
- Klik Pemicu .
- Klik Tambahkan Pemicu.
- Pada dialog Add Trigger for Your_PROJECT_NAME, konfigurasikan pemicu:
- Di daftar Choose mana function to run, pilih handleEdit.
- Dalam daftar Choose which deployment should run, pilih Head.
- Dalam daftar Pilih sumber peristiwa, pilih Dari spreadsheet.
- Di daftar Pilih jenis peristiwa, pilih Saat diedit.
- Dalam daftar Setelan notifikasi kegagalan, pilih Beri tahu saya setiap hari.
- Klik Save.
Jika Anda menerima perintah untuk memilih Akun Google, pilih akun yang sesuai, lalu klik Izinkan.
Hal ini memungkinkan project Apps Script Anda untuk melihat, mengedit, membuat, dan menghapus spreadsheet Spreadsheet Anda; serta terhubung ke layanan eksternal.
File manifes project Apps Script adalah file JSON yang menentukan informasi project dasar yang diperlukan Apps Script agar dapat menjalankan skrip dengan sukses. Perlu diperhatikan bahwa editor Apps Script menyembunyikan file manifes secara default untuk melindungi setelan project Apps Script Anda. Edit file manifes:
- Buka project Apps Script.
- Klik Setelan Project .
- Pilih kotak centang Tampilkan file manifes "appsscript.json" dalam editor.
- Klik Editor .
- File manifes akan muncul sebagai file project bernama
appsscript.json
. Untuk mengedit file, pilih file tersebut. Kolom
oauthScopes
menentukan array string. Untuk menetapkan cakupan otorisasi yang digunakan project Anda, tambahkan array dengan cakupan yang ingin didukung. Contoh:{ "timeZone": "America/Toronto", "dependencies": { }, "exceptionLogging": "STACKDRIVER", "runtimeVersion": "V8", "oauthScopes": [ "https://www.googleapis.com/auth/script.external_request", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spreadsheets" ] }
Tindakan ini menetapkan cakupan eksplisit ke:
- Menghubungkan ke layanan eksternal
- Melihat, mengedit, mengonfigurasi, dan menghapus data Google Cloud Anda serta melihat alamat email untuk Akun Google Anda
- Melihat, mengedit, membuat, dan menghapus semua spreadsheet Spreadsheet Anda
Klik Simpan
.
Men-deploy alur kerja yang membuat instance VM
Men-deploy alur kerja yang dipicu saat permintaan untuk membuat instance VM disetujui. Alur kerja memanggil konektor Compute Engine API untuk membuat instance VM Compute Engine berdasarkan spesifikasi yang dikumpulkan melalui formulir.
Konsol
Di konsol Google Cloud, buka halaman Workflows:
Klik
Buat.Masukkan nama untuk alur kerja baru:
create-vm-from-form
.Pada daftar Region, pilih us-central1 (Iowa).
Untuk Service account, pilih akun layanan default Compute Engine (
PROJECT_NUMBER-compute@developer.gserviceaccount.com
).Klik Next.
Di editor alur kerja, masukkan definisi berikut untuk alur kerja Anda:
Klik Deploy.
gcloud
Buat file kode sumber untuk alur kerja Anda:
touch create-vm-from-form.yaml
Di editor teks, salin alur kerja berikut ke file kode sumber Anda:
Deploy alur kerja dengan memasukkan perintah berikut:
gcloud workflows deploy create-vm-from-form \ --source=create-vm-from-form.yaml \ --location=us-central1 \ --service-account=PROJECT_NUMBER-compute@developer.gserviceaccount.com
Ganti
PROJECT_NUMBER
dengan nomor project Google Cloud Anda. Anda dapat mengambil nomor project:gcloud projects describe PROJECT_ID
Menguji alur end-to-end
Untuk memastikan bahwa semuanya berfungsi seperti yang diharapkan, coba jalankan seluruh proses.
Kirimkan formulir Anda ke diri sendiri dan jawab pertanyaan dengan tepat.
Pastikan spesifikasi yang Anda gunakan untuk membuat instance VM valid. Jika tidak, eksekusi alur kerja Anda akan gagal. Untuk informasi selengkapnya, lihat Kelompok mesin tujuan umum Compute Engine.
Untuk mengirimkan respons, klik Kirim.
Buka formulir Anda di Formulir.
Klik Tanggapan.
Klik Lihat di Spreadsheet.
Spreadsheet yang tertaut akan terbuka.
Di baris untuk respons Anda, centang kotak Disetujui?.
Buka project Apps Script.
Klik Executions
.Pemicu Anda harus dijalankan dan dicantumkan dengan status
Completed
.Konfirmasi bahwa alur kerja
create-vm-from-form
berhasil diselesaikan:Konsol
Di konsol Google Cloud, buka halaman Workflows.
Di halaman Workflows, klik alur kerja create-vm-from-form untuk membuka halaman detailnya.
Di halaman Workflow details, untuk mengambil detail eksekusi tertentu, klik ID eksekusi yang sesuai.
Execution state harus Succeeded dan, di panel Input, Anda akan melihat spesifikasi VM yang Anda minta.
gcloud
Ambil daftar upaya eksekusi alur kerja Anda:
gcloud workflows executions list create-vm-from-form
Hasilnya akan terlihat seperti berikut:
NAME: projects/918619793306/locations/us-central1/workflows/create-vm-from-form/executions/d8947ecb-9ccb-4ea1-ba10-e5c10414e3be STATE: SUCCEEDED START_TIME: 2023-01-24T15:07:40.404741791Z END_TIME: 2023-01-24T15:07:55.649373625Z
Pastikan VM baru telah dibuat seperti yang diharapkan:
Konsol
Di konsol Google Cloud, buka halaman Instance VM.
Instance VM Anda akan dicantumkan dengan status yang menunjukkan bahwa instance tersebut sedang berjalan.
gcloud
Ambil daftar gabungan semua VM di semua zona untuk sebuah project:
gcloud compute instances list
Instance VM Anda akan dicantumkan dengan status yang menunjukkan bahwa instance tersebut sedang berjalan.
Untuk informasi selengkapnya tentang perintah
gcloud compute instances list
, lihat halaman referensinya.
Pembersihan
Jika Anda membuat project baru untuk tutorial ini, hapus project tersebut. Jika Anda menggunakan project yang ada dan ingin mempertahankannya tanpa perubahan yang ditambahkan dalam tutorial ini, hapus resource yang dibuat untuk tutorial.
Menghapus project
Cara termudah untuk menghilangkan penagihan adalah dengan menghapus project yang Anda buat untuk tutorial.
Untuk menghapus project:
- Di konsol Google Cloud, buka halaman Manage resource.
- Pada daftar project, pilih project yang ingin Anda hapus, lalu klik Delete.
- Pada dialog, ketik project ID, lalu klik Shut down untuk menghapus project.