Pendahuluan
Terdapat beberapa cara untuk mendeploy Cloud Functions, antara lain:
- Menggunakan GCP Console
- Menggunakan gcloud CLI
- Menggunakan Cloud Functions API
Dalam artikel ini, saya akan fokus pada cara mendeploy Cloud Functions menggunakan perintah gcloud.
Perintah gcloud
Anda dapat menggunakan perintah gcloud functions deploy
untuk mendeploy Cloud Functions.
$ gcloud functions deploy NAMA_FUNGSI_ANDA \
[--gen2] \
--region=REGION_ANDA \
--runtime=RUNTIME_ANDA \
--source=LOKASI_SOURCE_ANDA \
--entry-point=ENTRY_POINT_KODE_ANDA
-
NAMA_FUNGSI_ANDA
Nama fungsi yang akan didedeploy. Nama fungsi dapat menggunakan huruf kecil, angka, tanda hubung, dan garis bawah. -
--gen2
Tentukan untuk didedeploy ke Cloud Functions (Generasi 2). Jika flag ini tidak dimasukkan, maka akan didedeploy ke Cloud Functions (Generasi 1). -
--region
Wilayah di mana fungsi akan didedeploy. -
--runtime
Runtime bahasa yang digunakan oleh fungsi. -
--source
Lokasi kode sumber fungsi. -
--entry-point
Titik masuk (nama fungsi) dalam kode sumber.
Contoh Perintah
Berikut beberapa contoh penggunaan perintah.
Mendeploy fungsi HTTP dari kode sumber lokal
Misalkan Anda memiliki fungsi HTTP:
- Menggunakan Node.js 16.
- Kode sumber berada di direktori kerja saat ini (
.
). - Titik masuk kode adalah
myHttpFunction
.
Untuk mendeploy fungsi ke Cloud Functions (Generasi 2) dengan nama my-http-function
di wilayah us-central1
dan memicu fungsi dengan pemicu HTTP, gunakan perintah berikut:
$ gcloud functions deploy my-http-function \
--gen2 \
--region=us-central1 \
--runtime=nodejs16 \
--source=. \
--entry-point=myHttpFunction \
--trigger-http
Mendeploy fungsi Pub/Sub dari kode sumber di Cloud Storage
Misalkan Anda memiliki fungsi yang dipicu oleh peristiwa:
- Menangani peristiwa publikasi pesan Pub/Sub.
- Menggunakan Python 3.9.
- Kode sumber berada di jalur Cloud Storage
gs://my-bucket/my_function_source.zip
. - Titik masuk kode adalah
pubsub_handler
.
Untuk mendeploy fungsi ke Cloud Functions (Generasi 2) dengan nama my-pubsub-function
di wilayah europe-west1
dan memicu fungsi dengan topik Pub/Sub my-topic
, gunakan perintah berikut:
$ gcloud functions deploy my-pubsub-function \
--gen2 \
--region=europe-west1 \
--runtime=python39 \
--source=gs://my-bucket/my_function_source.zip \
--entry-point=pubsub_handler \
--trigger-topic=my-topic
Mendeploy fungsi Cloud Storage dari kode sumber lokal
Misalkan Anda memiliki fungsi yang dipicu oleh peristiwa:
- Menangani peristiwa penghapusan objek Cloud Storage.
- Menggunakan Java 11.
- Kode sumber berada di jalur lokal
./functions/storage-function
. - Titik masuk kode adalah
myproject.StorageFunction
.
Untuk mendeploy fungsi ke Cloud Functions (Generasi 2) dengan nama my-storage-function
di wilayah asia-northeast1
dan memicu fungsi dengan peristiwa pada bucket Cloud Storage my-bucket
, gunakan perintah berikut:
$ gcloud functions deploy my-storage-function \
--gen2 \
--region=asia-northeast1 \
--runtime=java11 \
--source=./functions/storage-function \
--entry-point=myproject.StorageFunction \
--trigger-event-filters="type=google.cloud.storage.object.v1.deleted" \
--trigger-event-filters="bucket=my-bucket"
Referensi