Dokumen ini menjelaskan cara mengonfigurasi tugas di Cloud Deploy. Tugas adalah unit kerja yang dapat digunakan sebagai hook deployment, untuk verifikasi deployment, untuk analisis deployment, atau untuk render kustom atau deployment kustom dalam jenis target kustom.
Anda dapat mengonfigurasi tugas di pipeline pengiriman (sebagai bagian dari strategi) atau render atau deploy jenis target kustom.
Dengan tugas, Anda dapat menggunakan parameter sistem dengan membuat template ke dalam konfigurasi tugas.
Menentukan tugas
Anda dapat menentukan tugas dalam konfigurasi pipeline penayangan atau sebagai bagian dari
definisi jenis target kustom. YAML berikut menunjukkan stanza task yang digunakan
dalam kedua kasus:
task:
type: container
image: IMAGE
command: [COMMANDS_TO_RUN]
args: [LIST_OF_ARGS]
env:
- KEY1:VAL1
- KEY2:VAL2
...
Untuk konfigurasi task:
typeMenentukan jenis tugas yang dikonfigurasi. Hanya
containeryang didukung.imageAdalah jalur ke image container.
commandAdalah perintah yang akan dijalankan di container.
argsAdalah kumpulan argumen ke
command.envAdalah kumpulan variabel lingkungan yang akan diberikan ke container yang sedang berjalan.
Parameter Sistem sebagai variabel lingkungan tugas
Cloud Deploy menawarkan parameter yang dibuat sistem yang dapat Anda gunakan sebagai
variabel lingkungan dalam tugas Anda, menggunakan kolom env dalam tugas
container. Parameter yang dibuat dengan template dapat ada di kolom kunci atau nilai entri peta env.
Berikut adalah beberapa contoh kasus penggunaan:
Meneruskan nama layanan Cloud Run, URL layanan, dan nama revisi sebagai variabel lingkungan.
task: type: container image: my-image command: ["/bin/bash"] env: - RUN_SERVICE_NAME : "${{ render.metadata.cloud_run.service.name }}" - RUN_SERVICE_URL: "${{ rollout.metadata.cloud_run.service_url }}" - RUN_REVISION_NAME: "${{ render.metadata.cloud_run.revision.name }}"Menggunakan beberapa parameter dalam satu entri.
task: type: container image: my-image command: ["/bin/bash"] env: - DEPLOY_PARAMS_KEY : "${{ deploy_params['FOO'] }}-with-${{ deploy_params['BAR'] }}" - "${{ project.id }}_${{ location }}" : "${{ target.id }}"
Parameter sistem yang tersedia
Cloud Deploy menyediakan parameter sistem berikut yang dapat Anda gunakan dalam konfigurasi tugas menggunakan format ini:
${{ parameter }}
$${{ }}.
Berikut adalah daftar parameter yang tersedia untuk pembuatan template:
| Nama | Definisi |
|---|---|
location |
Region yang berisi resource Cloud Deploy. Tersedia saat pembuatan rilis. |
project.num |
Nomor project Google Cloud untuk project yang berisi
resource Cloud Deploy. Tersedia saat pembuatan rilis. |
project.id |
Project ID Google Cloud untuk project. Tersedia saat pembuatan rilis. |
delivery_pipeline.name |
Nama resource yang ditentukan sepenuhnya dari pipeline pengiriman. Tersedia saat pembuatan rilis. |
delivery_pipeline.id |
ID pipeline pengiriman. Tersedia saat pembuatan rilis. |
target.name |
Nama resource yang ditentukan sepenuhnya dari target. Tersedia saat pembuatan rilis. |
target.id |
ID target. Tersedia saat pembuatan rilis. |
release.name |
Nama resource rilis yang ditentukan sepenuhnya. Tersedia saat pembuatan rilis. |
release.id |
ID rilis. Tersedia saat pembuatan rilis. |
rollout.name |
Nama resource peluncuran yang ditentukan sepenuhnya. Tersedia saat pembuatan peluncuran. |
rollout.id |
ID peluncuran. Tersedia saat pembuatan peluncuran. |
job.id |
ID tugas yang sedang dieksekusi. Tersedia saat pembuatan peluncuran. |
phase.id |
Fase
dalam peluncuran yang berisi tugas untuk tugas. Tersedia saat pembuatan peluncuran. |
job_run.name |
Nama resource yang sepenuhnya ditentukan dari
job run
yang merepresentasikan eksekusi tugas saat ini. Tersedia saat pembuatan peluncuran. |
job_run.id |
ID
tugas
berjalan yang merepresentasikan eksekusi tugas saat ini. Tersedia saat pembuatan peluncuran. |
deploy_params |
Peta parameter deployment
yang terkait dengan target. Contoh: deploy_params['KEY']
Mencoba mengakses kunci yang tidak ada akan menghasilkan string kosong. Tersedia saat pembuatan rilis. |
Untuk target berjenis RUN: |
|
cloud_run.project |
Project tempat layanan Cloud Run dibuat. Tersedia saat pembuatan rilis. |
cloud_run.location |
Region tempat layanan Cloud Run di-deploy. Tersedia saat pembuatan rilis. |
render.metadata.cloud_run.service.name |
Nama layanan Cloud Run yang di-deploy. Tersedia setelah operasi rendering selesai. |
render.metadata.cloud_run.service.id |
ID layanan Cloud Run yang di-deploy. Tersedia setelah operasi rendering selesai. |
rollout.metadata.cloud_run.service.url |
URL yang akan digunakan pengguna akhir untuk mengakses layanan Anda. Anda dapat menemukannya di detail layanan Cloud Run untuk layanan Anda, di konsol. Google Cloud Tersedia setelah operasi deployment selesai. |
render.metadata.cloud_run.revision.name |
Nama lengkap revisi layanan Cloud Run yang
sedang di-deploy. Tersedia setelah operasi rendering selesai. |
render.metadata.cloud_run.revision.id |
ID revisi layanan Cloud Run yang di-deploy. Tersedia setelah operasi rendering selesai. |
rollout.metadata.cloud_run.previous_revision.name |
Nama lengkap revisi sebelumnya dari layanan Cloud Run yang di-deploy. Tersedia setelah operasi deployment selesai. |
rollout.metadata.cloud_run.previous_revision.id |
ID revisi sebelumnya dari layanan Cloud Run yang sedang
di-deploy. Tersedia setelah operasi deployment selesai. |
Untuk target jenis GKE: |
|
gke.cluster.name |
Nama resource cluster GKE yang ditentukan sepenuhnya. Tersedia saat pembuatan rilis. |
gke.cluster.id |
ID cluster GKE. Tersedia saat pembuatan rilis. |
gke.cluster.project |
ID/nomor project cluster GKE. Tersedia saat pembuatan rilis. |
gke.cluster.location |
Lokasi cluster GKE. Tersedia saat pembuatan rilis. |
Untuk target jenis ANTHOS: |
|
anthos.membership.project |
ID/nomor project cluster GKE Enterprise. Tersedia saat pembuatan rilis. |
anthos.membership.location |
Lokasi cluster GKE Enterprise. Tersedia saat pembuatan rilis. |
anthos.membership.name |
Nama resource yang ditentukan sepenuhnya dari keanggotaan GKE Enterprise. Tersedia saat pembuatan rilis. |
anthos.membership.id |
ID keanggotaan GKE Enterprise. Tersedia saat pembuatan rilis. |
Untuk target Kubernetes (target jenis
GKE dan ANTHOS): |
|
render.metadata.kubernetes.deployment |
Nama deployment yang sedang diperbarui. Ini tidak disetel jika ada lebih dari satu deployment dalam manifes. Tersedia setelah operasi rendering selesai. |
render.metadata.kubernetes.canary_deployment |
|