REST Resource: projects.locations.fleetPackages

Resource: FleetPackage

Resource FleetPackage di Config Delivery API.

FleetPackage menentukan paket yang digunakan untuk men-deploy konfigurasi Kubernetes ke sejumlah cluster Kubernetes.

Representasi JSON
{
  "name": string,
  "createTime": string,
  "updateTime": string,
  "labels": {
    string: string,
    ...
  },
  "resourceBundleSelector": {
    object (ResourceBundleSelector)
  },
  "target": {
    object (Target)
  },
  "rolloutStrategy": {
    object (RolloutStrategy)
  },
  "variantSelector": {
    object (VariantSelector)
  },
  "info": {
    object (FleetPackageInfo)
  },
  "deletionPropagationPolicy": enum (DeletionPropagationPolicy),
  "state": enum (State)
}
Kolom
name

string

ID. Nama FleetPackage. Formatnya adalah projects/{project}/locations/{location}/fleetPackages/{fleetPackage}. Komponen fleetPackage harus cocok dengan [a-z][a-z0-9\-]{0,62}

createTime

string (Timestamp format)

Hanya output. Waktu saat FleetPackage 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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Hanya output. Waktu terbaru saat FleetPackage diperbarui.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

labels

map (key: string, value: string)

Opsional. Label adalah atribut yang dapat ditetapkan dan digunakan oleh pengguna dan Pengiriman Konfigurasi. Label harus memenuhi batasan berikut:

  • Kunci dan nilai hanya boleh berisi huruf kecil, karakter numerik, garis bawah, dan tanda hubung.
  • Semua karakter harus menggunakan encoding UTF-8, dan karakter internasional boleh digunakan.
  • Kunci harus diawali dengan huruf kecil atau karakter internasional.
  • Setiap resource dibatasi hingga maksimum 64 label.

Kunci dan nilai juga dibatasi menjadi <= 128 byte.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

resourceBundleSelector

object (ResourceBundleSelector)

Wajib. Informasi yang menentukan sumber konfigurasi Kubernetes yang akan di-deploy.

target

object (Target)

Opsional. Konfigurasi untuk memilih cluster target tempat men-deploy konfigurasi Kubernetes.

rolloutStrategy

object (RolloutStrategy)

Opsional. Strategi yang akan digunakan untuk men-deploy konfigurasi Kubernetes ke cluster.

variantSelector

object (VariantSelector)

Wajib. Informasi yang menentukan cara memetakan varian ResourceBundle ke cluster target.

info

object (FleetPackageInfo)

Hanya output. Informasi yang berisi status peluncuran FleetPackage di semua cluster target.

deletionPropagationPolicy

enum (DeletionPropagationPolicy)

Opsional. Informasi tentang cara menangani resource Kubernetes di cluster target saat FleetPackage dihapus.

state

enum (State)

Opsional. Status paket armada yang diinginkan.

ResourceBundleSelector

Informasi yang menentukan sumber konfigurasi Kubernetes yang akan di-deploy.

Representasi JSON
{

  // Union field source can be only one of the following:
  "resourceBundle": {
    object (ResourceBundleTag)
  },
  "cloudBuildRepository": {
    object (CloudBuildRepository)
  }
  // End of list of possible types for union field source.
}
Kolom
Kolom union source. Sumber dapat berupa ResourceBundle atau CloudBuildRepository yang didorong secara langsung dan berisi konfigurasi Kubernetes. source hanya dapat berupa salah satu dari hal berikut:
resourceBundle

object (ResourceBundleTag)

Informasi yang menentukan ResourceBundle.

cloudBuildRepository

object (CloudBuildRepository)

Informasi yang menentukan CloudBuildRepository.

ResourceBundleTag

ResourceBundleTag berisi informasi untuk merujuk ke rilis untuk ResourceBundle.

Representasi JSON
{
  "name": string,
  "tag": string
}
Kolom
name

string

Wajib. Nama ResourceBundle. Formatnya adalah projects/{p}/locations/{l}/resourceBundles/{r}.

tag

string

Wajib. Tag Git untuk versi rilis dalam ResourceBundle. Tag harus mengikuti format pembuatan versi semantik vX.Y.Z.

CloudBuildRepository

CloudBuildRepository berisi informasi tentang pengambilan konfigurasi Kubernetes dari CloudBuildRepository.

Representasi JSON
{
  "name": string,
  "path": string,
  "tag": string,
  "serviceAccount": string,

  // Union field variants can be only one of the following:
  "variantsPattern": string
  // End of list of possible types for union field variants.
}
Kolom
name

string

Wajib. Nama repositori Cloud Build. Formatnya adalah projects/{p}/locations/{l}/connections/{c}/repositories/{r}.

path

string

Opsional. Jalur ke direktori atau file dalam repositori yang berisi konfigurasi Kubernetes. Jika tidak ditentukan, jalur diasumsikan ke direktori root tingkat teratas repositori.

tag

string

Wajib. Tag Git dari repositori Git yang mendasarinya. Tag git harus dalam format versi semantik vX.Y.Z.

serviceAccount

string

Wajib. Akun layanan Google yang akan digunakan di pemicu CloudBuild untuk mengambil dan menyimpan konfigurasi Kubernetes.

Kolom union variants. Menentukan konfigurasi cara menemukan varian di repositori. variants hanya ada berupa salah satu diantara berikut:
variantsPattern

string

Opsional. Pola glob yang akan digunakan untuk menemukan varian di repositori. Contoh: variants/*.yaml, us-*

Target

Target menentukan berbagai cara untuk menargetkan kumpulan cluster Kubernetes.

Representasi JSON
{

  // Union field target can be only one of the following:
  "fleet": {
    object (Fleet)
  }
  // End of list of possible types for union field target.
}
Kolom
Kolom union target. Target untuk paket fleet. target hanya ada berupa salah satu diantara berikut:
fleet

object (Fleet)

Informasi fleet GKE untuk menargetkan peluncuran FleetPackage.

Fleet

Fleet tempat FleetPackage harus di-deploy.

Representasi JSON
{
  "project": string,
  "selector": {
    object (LabelSelector)
  }
}
Kolom
project

string

Wajib. Project host untuk fleet GKE. Format adalah projects/{project}.

selector

object (LabelSelector)

Opsional. Pemilih memungkinkan penargetan subkumpulan anggota armada menggunakan labelnya.

LabelSelector

Pemilih label adalah kueri label pada sekumpulan resource. Pemilih label kosong cocok dengan semua objek.

Representasi JSON
{
  "matchLabels": {
    string: string,
    ...
  }
}
Kolom
matchLabels

map (key: string, value: string)

Opsional. Peta pasangan {kunci,nilai}. Setiap pasangan {key,value} harus sama persis dengan kunci dan nilai label yang ada agar cocok.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

VariantSelector

VariantSelector berisi informasi untuk memilih varian di ResourceBundle untuk di-deploy ke cluster target.

Representasi JSON
{

  // Union field strategy can be only one of the following:
  "variantNameTemplate": string
  // End of list of possible types for union field strategy.
}
Kolom
Kolom union strategy. strategi untuk memilih varian. strategy hanya ada berupa salah satu diantara berikut:
variantNameTemplate

string

Wajib. variantNameTemplate adalah template yang dapat merujuk ke variabel yang berisi metadata keanggotaan cluster seperti lokasi, nama, dan label untuk membuat nama varian untuk cluster target. Sintaksis variabel mirip dengan variabel shell unix.

Variabel yang tersedia adalah ${membership.name}, ${membership.location}, ${membership.project}, dan ${membership.labels['label_name']}.

Jika Anda ingin men-deploy varian tertentu, misalnya "default" ke semua cluster, Anda dapat menggunakan "default" (string tanpa variabel) sebagai variantNameTemplate.

FleetPackageInfo

FleetPackageInfo merepresentasikan status FleetPackage di semua cluster target.

Representasi JSON
{
  "activeRollout": string,
  "lastCompletedRollout": string,
  "state": enum (State),
  "errors": [
    {
      object (FleetPackageError)
    }
  ]
}
Kolom
activeRollout

string

Opsional. Peluncuran aktif, jika ada. Format adalah projects/{project}/locations/{location}/fleetPackages/{fleetPackage}/rollouts/{rollout}.

lastCompletedRollout

string

Opsional. Peluncuran terakhir yang selesai, jika ada. Format adalah projects/{project}/locations/{location}/fleetPackages/{fleetPackage}/rollouts/{rollout}.

state

enum (State)

Opsional. Hanya output. Status FleetPackage saat ini.

errors[]

object (FleetPackageError)

Opsional. Hanya output. Error yang terjadi selama deployment konfigurasi (jika ada).

Negara Bagian

Kemungkinan nilai untuk status FleetPackage.

Enum
STATE_UNSPECIFIED Status tidak ditentukan.
ACTIVE FleetPackage aktif.
SUSPENDED FleetPackage ditangguhkan.
FAILED FleetPackage gagal mencocokkan.
DELETING FleetPackage sedang dihapus.

FleetPackageError

Informasi yang menunjukkan error yang terjadi selama meluncurkan konfigurasi.

Representasi JSON
{
  "errorMessage": string
}
Kolom
errorMessage

string

Opsional. Deskripsi error.

Negara Bagian

Status menunjukkan status yang diinginkan untuk paket armada. Nilai yang tidak ditentukan setara dengan ACTIVE. Jika status disetel ke SUSPENDED, peluncuran aktif (jika ada) akan dilanjutkan, tetapi tidak ada peluncuran baru yang dijadwalkan.

Enum
STATE_UNSPECIFIED Status tidak ditentukan.
ACTIVE FleetPackage dimaksudkan agar aktif.
SUSPENDED FleetPackage akan ditangguhkan.

Metode

create

Membuat FleetPackage baru di project dan lokasi tertentu.

delete

Menghapus satu FleetPackage.

get

Mendapatkan detail satu FleetPackage.

list

Mencantumkan FleetPackage di project dan lokasi tertentu.

patch

Memperbarui parameter satu FleetPackage.