Alat: create_unit
Membuat resource Unit. Parameter wajib: 'parent' (mis. projects/my-project/locations/us-central1), 'unit_id', 'unit'. Parameter opsional: 'validate_only', 'request_id'.
Contoh berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP create_unit.
| Permintaan Curl |
|---|
curl --location 'https://saasservicemgmt.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "create_unit", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Skema Input
Struktur permintaan untuk metode CreateUnit.
CreateUnitRequest
| Representasi JSON |
|---|
{
"parent": string,
"unitId": string,
"unit": {
object ( |
| Kolom | |
|---|---|
parent |
Wajib. Induk unit. |
unitId |
Wajib. Nilai ID untuk unit baru. |
unit |
Wajib. Status yang diinginkan untuk unit. |
validateOnly |
Jika "validate_only" disetel ke benar (true), layanan akan mencoba memvalidasi bahwa permintaan ini akan berhasil, tetapi tidak akan benar-benar melakukan perubahan. |
requestId |
ID permintaan opsional untuk mengidentifikasi permintaan. Tentukan ID permintaan unik sehingga jika Anda harus mencoba lagi permintaan, server akan tahu untuk mengabaikan permintaan jika sudah selesai. Server akan menjamin hal tersebut setidaknya selama 60 menit sejak permintaan pertama. Misalnya, pertimbangkan situasi saat Anda membuat permintaan awal dan waktu permintaan habis. Jika Anda membuat permintaan lagi dengan ID permintaan yang sama, server dapat memeriksa apakah operasi asli dengan ID permintaan yang sama telah diterima, dan jika iya, akan mengabaikan permintaan kedua. Tindakan ini mencegah klien membuat komitmen duplikat secara tidak sengaja. ID permintaan harus berupa UUID yang valid, kecuali UUID nol tidak didukung (00000000-0000-0000-0000-000000000000). |
Unit
| Representasi JSON |
|---|
{ "name": string, "unitKind": string, "release": string, "tenant": string, "ongoingOperations": [ string ], "pendingOperations": [ string ], "scheduledOperations": [ string ], "dependents": [ { object ( |
| Kolom | |
|---|---|
name |
ID. Nama resource (URI lengkap resource) yang mengikuti skema penamaan standar: "projects/{project}/locations/{location}/units/{unit}" |
unitKind |
Opsional. Referensi ke UnitKind tempat Unit ini berada. Tidak dapat diubah setelah ditetapkan. |
release |
Opsional. Hanya output. Objek Rilis saat ini untuk Unit ini. |
tenant |
Opsional. Referensi ke resource Saas Tenant yang memiliki unit ini. Misalnya, hal ini memberi tahu kebijakan pemeliharaan yang akan digunakan untuk menjadwalkan update mendatang pada unit. (opsional dan tidak dapat diubah setelah dibuat) |
ongoingOperations[] |
Opsional. Hanya output. Daftar UnitOperation serentak yang beroperasi di Unit ini. |
pendingOperations[] |
Opsional. Hanya output. Daftar UnitOperation yang tertunda (menunggu untuk dieksekusi) untuk unit ini. |
scheduledOperations[] |
Opsional. Hanya output. Daftar UnitOperation terjadwal untuk unit ini. |
dependents[] |
Opsional. Hanya output. Daftar Unit yang bergantung pada unit ini. Unit hanya dapat dihentikan penyediaannya jika daftar ini kosong. Maksimum 1000. |
dependencies[] |
Opsional. Hanya output. Set dependensi untuk unit ini. Maksimum 10. |
inputVariables[] |
Opsional. Hanya output. Menunjukkan variabel input saat ini yang di-deploy oleh unit |
outputVariables[] |
Opsional. Hanya output. Kumpulan pasangan kunci/nilai yang sesuai dengan variabel output dari eksekusi template aktuasi. Variabel dideklarasikan dalam konfigurasi aktuasi (misalnya, dalam helm chart atau terraform) dan nilai diambil serta ditampilkan oleh mesin aktuasi setelah eksekusi selesai. |
maintenance |
Opsional. Mencatat arahan yang diminta untuk melakukan pemeliharaan unit di masa mendatang. Hal ini mencakup permintaan agar unit melewati pemeliharaan selama jangka waktu tertentu dan tetap disematkan ke rilis saat ini serta kontrol untuk menunda pemeliharaan yang dijadwalkan pada masa mendatang. |
state |
Opsional. Hanya output. Status siklus proses resource saat ini (misalnya, jika sedang dibuat atau siap digunakan). |
conditions[] |
Opsional. Hanya output. Serangkaian kondisi yang menunjukkan berbagai kondisi yang dapat dimiliki resource ini. |
managementMode |
Opsional. Tidak dapat diubah. Menunjukkan apakah Siklus proses unit dikontrol oleh pengguna atau oleh sistem. Tidak dapat diubah setelah dibuat. |
systemManagedState |
Opsional. Hanya output. Menunjukkan status unit yang dikelola sistem. |
systemCleanupAt |
Opsional. Hanya output. Jika disetel, menunjukkan waktu saat sistem akan mulai menghapus unit. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
flagRevisions[] |
Opsional. Hanya output. Revisi bendera yang digunakan oleh Unit ini. |
application |
Opsional. Referensi ke Aplikasi AppHub tempat unit ini berada. Semua resource yang di-deploy di Unit ini akan dikaitkan dengan Aplikasi yang ditentukan. |
flagConfigName |
Hanya output. Kolom ini menyimpan ID unik untuk konfigurasi tanda yang akan digunakan oleh Unit ini. |
labels |
Opsional. Label pada resource, yang dapat digunakan untuk kategorisasi, mirip dengan label resource Kubernetes. Objek yang berisi daftar pasangan |
annotations |
Opsional. Anotasi adalah peta nilai kunci tidak terstruktur yang disimpan dengan resource yang dapat ditetapkan oleh alat eksternal untuk menyimpan dan mengambil metadata arbitrer. Objek ini tidak dapat dikueri dan harus dipertahankan saat mengubah objek. Info selengkapnya: https://kubernetes.io/docs/user-guide/annotations Objek yang berisi daftar pasangan |
uid |
Hanya output. ID unik resource. UID bersifat unik dalam waktu dan ruang untuk resource ini dalam cakupan layanan. ID ini biasanya dibuat oleh server saat pembuatan resource berhasil dan tidak boleh diubah. UID digunakan untuk mengidentifikasi resource secara unik dengan penggunaan ulang nama resource. Nilai ini harus berupa UUID4. |
etag |
Hanya output. Nilai buram yang secara unik mengidentifikasi versi atau generasi resource. Nilai ini dapat digunakan untuk mengonfirmasi bahwa klien dan server menyetujui pengurutan resource yang sedang ditulis. |
createTime |
Hanya output. Stempel waktu saat resource dibuat. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
updateTime |
Hanya output. Stempel waktu saat resource terakhir diperbarui. Setiap perubahan pada resource yang dilakukan oleh pengguna harus memperbarui nilai ini. Perubahan pada resource yang dilakukan oleh layanan harus memperbarui nilai ini. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
satisfiesPzs |
Hanya output. Menunjukkan apakah lokasi resource memenuhi batasan Pemisahan Zona. Opsi ini false secara default. |
satisfiesPzi |
Hanya output. Dipesan untuk penggunaan di masa mendatang. |
UnitDependency
| Representasi JSON |
|---|
{ "alias": string, "unit": string } |
| Kolom | |
|---|---|
alias |
Hanya output. Alias untuk nama dependensi. |
unit |
Hanya output. Referensi ke objek Unit. |
UnitVariable
| Representasi JSON |
|---|
{
"variable": string,
"type": enum ( |
| Kolom | |
|---|---|
variable |
Wajib. Tidak dapat diubah. Nama variabel dari konfigurasi aktuasi. |
type |
Opsional. Tidak dapat diubah. Nama jenis variabel yang didukung. Jenis yang didukung adalah string, int, bool. |
value |
Opsional. Nilai yang dienkode string untuk variabel. |
MaintenanceSettings
| Representasi JSON |
|---|
{ "pinnedUntilTime": string } |
| Kolom | |
|---|---|
pinnedUntilTime |
Opsional. Jika ada, akan memperbaiki rilis di unit hingga waktu yang ditentukan; yaitu perubahan pada kolom rilis akan ditolak. Peluncuran juga harus dan akan mematuhinya dengan tidak meminta upgrade sejak awal. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
Stempel waktu
| Representasi JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Kolom | |
|---|---|
seconds |
Mewakili detik waktu UTC sejak epoch Unix 1970-01-01T00:00:00Z. Harus antara -62135596800 dan 253402300799 inklusif (yang sesuai dengan 0001-01-01T00:00:00Z hingga 9999-12-31T23:59:59Z). |
nanos |
Pecahan detik non-negatif pada resolusi nanodetik. Kolom ini adalah bagian nanodetik dari durasi, bukan alternatif untuk detik. Nilai detik negatif dengan pecahan harus tetap memiliki nilai nanos non-negatif yang dihitung maju dalam waktu. Harus antara 0 dan 999.999.999 inklusif. |
UnitCondition
| Representasi JSON |
|---|
{ "status": enum ( |
| Kolom | |
|---|---|
status |
Wajib. Status kondisi. |
type |
Wajib. Jenis kondisi. |
lastTransitionTime |
Wajib. Terakhir kali kondisi bertransisi dari satu status ke status lainnya. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
message |
Wajib. Pesan yang dapat dibaca manusia yang menunjukkan detail tentang transisi terakhir. |
reason |
Wajib. Alasan singkat untuk transisi terakhir kondisi. |
LabelsEntry
| Representasi JSON |
|---|
{ "key": string, "value": string } |
| Kolom | |
|---|---|
key |
|
value |
|
AnnotationsEntry
| Representasi JSON |
|---|
{ "key": string, "value": string } |
| Kolom | |
|---|---|
key |
|
value |
|
Skema Output
Unit deployment yang memiliki siklus prosesnya melalui CRUD API menggunakan mesin aktuasi di balik layar (misalnya, berdasarkan Terraform, Helm, atau penerapan kustom yang disediakan oleh produsen layanan). Blok penyusun Tenant SaaS.
Unit
| Representasi JSON |
|---|
{ "name": string, "unitKind": string, "release": string, "tenant": string, "ongoingOperations": [ string ], "pendingOperations": [ string ], "scheduledOperations": [ string ], "dependents": [ { object ( |
| Kolom | |
|---|---|
name |
ID. Nama resource (URI lengkap resource) yang mengikuti skema penamaan standar: "projects/{project}/locations/{location}/units/{unit}" |
unitKind |
Opsional. Referensi ke UnitKind tempat Unit ini berada. Tidak dapat diubah setelah ditetapkan. |
release |
Opsional. Hanya output. Objek Rilis saat ini untuk Unit ini. |
tenant |
Opsional. Referensi ke resource Saas Tenant yang memiliki unit ini. Misalnya, hal ini memberi tahu kebijakan pemeliharaan yang akan digunakan untuk menjadwalkan update mendatang pada unit. (opsional dan tidak dapat diubah setelah dibuat) |
ongoingOperations[] |
Opsional. Hanya output. Daftar UnitOperation serentak yang beroperasi di Unit ini. |
pendingOperations[] |
Opsional. Hanya output. Daftar UnitOperation yang tertunda (menunggu untuk dieksekusi) untuk unit ini. |
scheduledOperations[] |
Opsional. Hanya output. Daftar UnitOperation terjadwal untuk unit ini. |
dependents[] |
Opsional. Hanya output. Daftar Unit yang bergantung pada unit ini. Unit hanya dapat dihentikan penyediaannya jika daftar ini kosong. Maksimum 1000. |
dependencies[] |
Opsional. Hanya output. Set dependensi untuk unit ini. Maksimum 10. |
inputVariables[] |
Opsional. Hanya output. Menunjukkan variabel input saat ini yang di-deploy oleh unit |
outputVariables[] |
Opsional. Hanya output. Kumpulan pasangan kunci/nilai yang sesuai dengan variabel output dari eksekusi template aktuasi. Variabel dideklarasikan dalam konfigurasi aktuasi (misalnya, dalam helm chart atau terraform) dan nilai diambil serta ditampilkan oleh mesin aktuasi setelah eksekusi selesai. |
maintenance |
Opsional. Mencatat arahan yang diminta untuk melakukan pemeliharaan unit di masa mendatang. Hal ini mencakup permintaan agar unit melewati pemeliharaan selama jangka waktu tertentu dan tetap disematkan ke rilis saat ini serta kontrol untuk menunda pemeliharaan yang dijadwalkan pada masa mendatang. |
state |
Opsional. Hanya output. Status siklus proses resource saat ini (misalnya, jika sedang dibuat atau siap digunakan). |
conditions[] |
Opsional. Hanya output. Serangkaian kondisi yang menunjukkan berbagai kondisi yang dapat dimiliki resource ini. |
managementMode |
Opsional. Tidak dapat diubah. Menunjukkan apakah Siklus proses unit dikontrol oleh pengguna atau oleh sistem. Tidak dapat diubah setelah dibuat. |
systemManagedState |
Opsional. Hanya output. Menunjukkan status unit yang dikelola sistem. |
systemCleanupAt |
Opsional. Hanya output. Jika disetel, menunjukkan waktu saat sistem akan mulai menghapus unit. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
flagRevisions[] |
Opsional. Hanya output. Revisi bendera yang digunakan oleh Unit ini. |
application |
Opsional. Referensi ke Aplikasi AppHub tempat unit ini berada. Semua resource yang di-deploy di Unit ini akan dikaitkan dengan Aplikasi yang ditentukan. |
flagConfigName |
Hanya output. Kolom ini menyimpan ID unik untuk konfigurasi tanda yang akan digunakan oleh Unit ini. |
labels |
Opsional. Label pada resource, yang dapat digunakan untuk kategorisasi, mirip dengan label resource Kubernetes. Objek yang berisi daftar pasangan |
annotations |
Opsional. Anotasi adalah peta nilai kunci tidak terstruktur yang disimpan dengan resource yang dapat ditetapkan oleh alat eksternal untuk menyimpan dan mengambil metadata arbitrer. Objek ini tidak dapat dikueri dan harus dipertahankan saat mengubah objek. Info selengkapnya: https://kubernetes.io/docs/user-guide/annotations Objek yang berisi daftar pasangan |
uid |
Hanya output. ID unik resource. UID bersifat unik dalam waktu dan ruang untuk resource ini dalam cakupan layanan. ID ini biasanya dibuat oleh server saat pembuatan resource berhasil dan tidak boleh diubah. UID digunakan untuk mengidentifikasi resource secara unik dengan penggunaan ulang nama resource. Nilai ini harus berupa UUID4. |
etag |
Hanya output. Nilai buram yang secara unik mengidentifikasi versi atau generasi resource. Nilai ini dapat digunakan untuk mengonfirmasi bahwa klien dan server menyetujui pengurutan resource yang sedang ditulis. |
createTime |
Hanya output. Stempel waktu saat resource dibuat. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
updateTime |
Hanya output. Stempel waktu saat resource terakhir diperbarui. Setiap perubahan pada resource yang dilakukan oleh pengguna harus memperbarui nilai ini. Perubahan pada resource yang dilakukan oleh layanan harus memperbarui nilai ini. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
satisfiesPzs |
Hanya output. Menunjukkan apakah lokasi resource memenuhi batasan Pemisahan Zona. Opsi ini false secara default. |
satisfiesPzi |
Hanya output. Dipesan untuk penggunaan di masa mendatang. |
UnitDependency
| Representasi JSON |
|---|
{ "alias": string, "unit": string } |
| Kolom | |
|---|---|
alias |
Hanya output. Alias untuk nama dependensi. |
unit |
Hanya output. Referensi ke objek Unit. |
UnitVariable
| Representasi JSON |
|---|
{
"variable": string,
"type": enum ( |
| Kolom | |
|---|---|
variable |
Wajib. Tidak dapat diubah. Nama variabel dari konfigurasi aktuasi. |
type |
Opsional. Tidak dapat diubah. Nama jenis variabel yang didukung. Jenis yang didukung adalah string, int, bool. |
value |
Opsional. Nilai yang dienkode string untuk variabel. |
MaintenanceSettings
| Representasi JSON |
|---|
{ "pinnedUntilTime": string } |
| Kolom | |
|---|---|
pinnedUntilTime |
Opsional. Jika ada, akan memperbaiki rilis di unit hingga waktu yang ditentukan; yaitu perubahan pada kolom rilis akan ditolak. Peluncuran juga harus dan akan mematuhinya dengan tidak meminta upgrade sejak awal. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
Stempel waktu
| Representasi JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Kolom | |
|---|---|
seconds |
Mewakili detik waktu UTC sejak epoch Unix 1970-01-01T00:00:00Z. Harus antara -62135596800 dan 253402300799 inklusif (yang sesuai dengan 0001-01-01T00:00:00Z hingga 9999-12-31T23:59:59Z). |
nanos |
Pecahan detik non-negatif pada resolusi nanodetik. Kolom ini adalah bagian nanodetik dari durasi, bukan alternatif untuk detik. Nilai detik negatif dengan pecahan harus tetap memiliki nilai nanos non-negatif yang dihitung maju dalam waktu. Harus antara 0 dan 999.999.999 inklusif. |
UnitCondition
| Representasi JSON |
|---|
{ "status": enum ( |
| Kolom | |
|---|---|
status |
Wajib. Status kondisi. |
type |
Wajib. Jenis kondisi. |
lastTransitionTime |
Wajib. Terakhir kali kondisi bertransisi dari satu status ke status lainnya. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
message |
Wajib. Pesan yang dapat dibaca manusia yang menunjukkan detail tentang transisi terakhir. |
reason |
Wajib. Alasan singkat untuk transisi terakhir kondisi. |
LabelsEntry
| Representasi JSON |
|---|
{ "key": string, "value": string } |
| Kolom | |
|---|---|
key |
|
value |
|
AnnotationsEntry
| Representasi JSON |
|---|
{ "key": string, "value": string } |
| Kolom | |
|---|---|
key |
|
value |
|
Anotasi Alat
Petunjuk Destruktif: ❌ | Petunjuk Idempoten: ❌ | Petunjuk Hanya Baca: ❌ | Petunjuk Dunia Terbuka: ❌