Anda dapat menentukan variabel lingkungan untuk Alur Kerja pada waktu deployment. Misalnya, Anda dapat membuat alur kerja yang dikonfigurasi secara dinamis bergantung pada lingkungan tempat alur kerja tersebut di-deploy. Atau, Anda dapat membuat alur kerja yang dapat digunakan kembali sebagai template dan dikonfigurasi sesuai dengan variabel lingkungan yang dikelola secara terpisah.
Variabel lingkungan ditetapkan sebagai pasangan string kunci dan nilai arbitrer yang dapat diakses oleh alur kerja Anda saat runtime. Data ini disimpan di backend Alur Kerja, dicakup untuk eksekusi alur kerja, dan tidak dapat diubah selama eksekusi alur kerja.
Semua variabel lingkungan terikat pada deployment alur kerja, dan hanya dapat ditetapkan atau diubah dengan deployment. Membuat atau mengubah variabel lingkungan memerlukan deployment yang berhasil. Jika deployment gagal karena suatu alasan, perubahan apa pun pada variabel lingkungan tidak akan diterapkan.
Anda dapat menambahkan, memperbarui, atau menghapus variabel lingkungan yang ditentukan pengguna menggunakan Google Cloud CLI.
Nama yang digunakan sistem
Variabel lingkungan bawaan yang ditentukan untuk Alur Kerja dilindungi dan tidak dapat ditetapkan.
Perhatikan bahwa Anda tidak dapat menggunakan hal berikut saat menentukan variabel lingkungan untuk Alur Kerja:
Kunci | Deskripsi |
---|---|
Kosong ('' ) |
Kunci tidak boleh berupa string kosong. |
GOOGLE_ |
Kunci tidak boleh berisi awalan GOOGLE_ . |
WORKFLOWS_ |
Kunci tidak boleh berisi awalan WORKFLOWS_ . |
Menetapkan variabel lingkungan
Anda dapat menentukan variabel baru atau mengganti variabel yang ada saat men-deploy alur kerja. Untuk membuat perubahan tambahan, lihat Memperbarui variabel lingkungan dalam dokumen ini.
Konsol
Di konsol Google Cloud, buka halaman Workflows:
Di halaman Alur kerja, klik
Buat.Di halaman Create workflow, isi kolom yang sesuai untuk mengonfigurasi definisi alur kerja Anda.
Di bagian Environment variables (optional), klik Add variable.
Di kolom Name 1, tentukan nama variabel.
Di kolom Value 1, tentukan nilai variabel.
Untuk menambahkan variabel lain, klik Tambahkan variabel.
Klik Berikutnya.
Setelah menentukan alur kerja, untuk men-deploy-nya, klik Deploy.
gcloud
Untuk menetapkan variabel lingkungan, gunakan flag --set-env-vars
:
gcloud workflows deploy WORKFLOW_NAME \ --set-env-vars KEY1=VALUE1
Ganti kode berikut:
WORKFLOW_NAME
: ID alur kerja Anda.KEY1=VALUE1
: nama variabel lingkungan dan nilainya; misalnya,MONTH=January
.
Terraform
Untuk membuat alur kerja, gunakan resource google_workflows_workflow
dan ubah file main.tf
seperti yang ditunjukkan dalam contoh. Untuk mengetahui informasi selengkapnya, baca artikel Membuat alur kerja menggunakan Terraform.
Gunakan argumen user_env_vars
untuk mengaitkan variabel lingkungan dengan
revisi alur kerja.
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
Menetapkan beberapa variabel lingkungan
Untuk menetapkan beberapa variabel lingkungan, gunakan daftar yang dipisahkan koma:
gcloud workflows deploy WORKFLOW_NAME \ --set-env-vars KEY1=VALUE1,KEY2=VALUE2
Escape karakter koma
Karena karakter koma (,
) digunakan untuk membatasi variabel lingkungan, jika
nilai variabel Anda menyertakan koma, Anda harus menentukan karakter pemisah
yang berbeda, misalnya, @
:
gcloud workflows deploy WORKFLOW_NAME \ --set-env-vars ^@^KEY1=VALUE1,VALUE2,VALUE3@KEY2=VALUE2
Menyimpan variabel dalam file
Untuk menyimpan variabel dalam file (misalnya, di bawah kontrol sumber), gunakan
file YAML dan flag --env-vars-file
:
gcloud workflows deploy WORKFLOW_NAME \ --env-vars-file FILE_PATH
Ganti FILE_PATH
dengan jalur ke file YAML lokal
yang mencantumkan definisi untuk variabel lingkungan Anda. Perhatikan bahwa
nama dan nilai variabel harus berupa string. Semua variabel lingkungan yang ada
akan dihapus oleh Alur Kerja sebelum variabel lingkungan baru
ditambahkan.
Misalnya, konten file YAML mungkin seperti berikut:
KEY1: "value1" KEY2: "value2"
Untuk informasi selengkapnya tentang perintah deploy
, lihat
gcloud workflows deploy
.
Mengakses variabel lingkungan
Untuk mengakses variabel lingkungan, lakukan panggilan ke fungsi sys.get_env()
dalam ekspresi, dengan meneruskan nama variabel lingkungan sebagai parameter. Nama
variabel lingkungan harus diteruskan sebagai string.
Misalnya, alur kerja berikut menetapkan nilai variabel lingkungan KEY1
ke variabel alur kerja yang disebut keyValue
, lalu menghasilkan nilai tersebut:
main: steps: - init: assign: - keyValue: ${sys.get_env("KEY1")} - returnResult: return: ${keyValue}
Memperbarui variabel lingkungan
Anda dapat memperbarui variabel lingkungan buatan pengguna untuk alur kerja yang ada. Ini adalah pendekatan non-destruktif yang mengubah atau menambahkan variabel lingkungan, tetapi tidak menghapus variabel.
Konsol
Di konsol Google Cloud, buka halaman Workflows.
Klik nama alur kerja yang ingin diperbarui.
Halaman Workflow details akan muncul.
Untuk mengedit variabel lingkungan yang ada, lakukan salah satu tindakan berikut:
Klik tab Detail.
- Di samping Environment variables, klik ikon .
- Buat perubahan.
- Untuk men-deploy alur kerja yang diperbarui, klik Simpan.
Klik
Edit.- Di bagian Environment variables (optional), buat perubahan.
- Untuk men-deploy alur kerja yang telah diperbarui, klik Berikutnya, lalu Deploy.
gcloud
Untuk memperbarui variabel, gunakan flag --update-env-vars
:
gcloud workflows deploy WORKFLOW_NAME \ --update-env-vars KEY1=VALUE1
Untuk memperbarui beberapa variabel lingkungan, gunakan daftar yang dipisahkan koma:
gcloud workflows deploy WORKFLOW_NAME \ --update-env-vars KEY1=VALUE1,KEY2=VALUE2
Menghapus variabel lingkungan
Anda dapat menghapus variabel lingkungan yang ditentukan pengguna untuk alur kerja yang ada.
Konsol
Di konsol Google Cloud, buka halaman Workflows.
Klik nama alur kerja yang ingin diperbarui.
Halaman Workflow details akan muncul.
Untuk menghapus variabel lingkungan yang ada, lakukan salah satu tindakan berikut:
Klik tab Detail.
- Klik yang sesuai.
- Di samping variabel lingkungan yang ingin Anda hapus, klik ikon .
- Untuk men-deploy alur kerja yang diperbarui, klik Simpan.
Klik
Edit.- Di samping variabel lingkungan yang ingin Anda hapus, klik ikon .
- Untuk men-deploy alur kerja yang telah diperbarui, klik Berikutnya, lalu Deploy.
gcloud
Jika Anda ingin menghapus variabel lingkungan secara selektif, gunakan flag --remove-env-vars
:
gcloud workflows deploy WORKFLOW_NAME \ --remove-env-vars KEY1,KEY2
Atau, Anda dapat menghapus semua variabel lingkungan yang ditetapkan sebelumnya dengan flag --clear-env-vars
:
gcloud workflows deploy WORKFLOW_NAME \ --clear-env-vars
Praktik terbaik
Sebagai praktik terbaik, sebaiknya Anda tidak bergantung pada atau mengubah variabel lingkungan yang belum ditetapkan secara eksplisit. Jika Anda mengubah variabel lingkungan selain yang telah Anda tetapkan secara eksplisit, hal ini dapat menyebabkan konsekuensi yang tidak diinginkan.
Mengelola secret
Variabel lingkungan dapat digunakan untuk mengonfigurasi alur kerja, tetapi tidak direkomendasikan sebagai cara untuk menyimpan dan menggunakan secret seperti kredensial database atau kunci API. Nilai sensitif ini harus disimpan secara terpisah dari kode sumber dan variabel lingkungan Anda, dan tidak dikirim secara tidak sengaja ke log.
Untuk menyimpan secret, sebaiknya Anda meninjau praktik terbaik untuk pengelolaan secret, dan mengikuti petunjuk untuk menggunakan Secret Manager dengan Alur Kerja.
Konvensi penamaan
Sebagai aturan umum, sebaiknya kunci variabel lingkungan hanya terdiri dari huruf besar, angka, dan garis bawah (_
), dan tidak dimulai dengan angka. Pertimbangkan untuk memberi awalan pada variabel lingkungan yang ditentukan pengguna dengan kunci unik untuk menghindari konflik dengan variabel lain.
Batas ukuran
Anda dapat menentukan maksimum 20 variabel lingkungan buatan pengguna. Setiap
string definisi (KEY=value
) dibatasi hingga 4 KiB.